MSN Live Messenger产生大量ignored contacts的问题

Zhuotong Nan (南卓铜, [email protected])

不知道从几时起,我笔记本上的Live Messenger就出现这个问题。每次登陆十分慢,或者干脆无法连接到server。一些初步的观察,可以看到:

在C:Documents and Settings<your name>Contacts<your email>下会产生0KB的.WindowsLiveContact或.WindowsLiveGroup的文件。同时该目录下有隐藏的Ignored目录,其下有几千甚至几万个这些0KB的.WindowsLiveContact或.WindowsLiveGroup的文件。Ignored目录同时可以找到一个IgnoredReason.txt文件,有时此文件达数百MB。

在C:Documents and Settings<your name>Local SettingsApplication DataMicrosoftWindows Live Contacts<your email>real和shadow(两目录是隐藏的)下面,也有大量的0KB联系人文件,并有隐藏的Ignored目录,目录下有几千甚至几万个0KB的.WindowsLiveContact或.WindowsLiveGroup的文件。同样Ignored目录下有IgnoredReason.txt文件,有时达数百MB之大。

如果有多个帐号,每个帐号的上述目录下面都有一样的大量0KB文件。

将这些文件删除,经过一段时间的Live Messenger使用,又会积累很多0KB文件。

Google检索无果。个别人也提到Large number of contacts问题,但都没有解决。

今天使用Filemon进行了详细的检查,终于发现了原因所在。Live Messenger在登录成功时,会首先检查Contacts和Live Contacts目录下的联系人文件,因为这些文件为0KB,打开失败,会将它们移入各自目录下的Ignored目录,并记录到IgnoredReason.txt文件。在稍后会尝试在Contacts和Live Contacts目录下新建全部联系人的文件以加速以后Messenger的打开速度。Messenger试图从服务器上下载数据,并调用本机C:Documents and Settings<your name>Application DataMicrosoftCryptoRSA<current account id>下的加密钥匙文件(如,34a80763996ffdc408b119337fc93131_0923ce10-ed9d-4fa5-baba-146a7f733203文件)。Messenger在此时可能调用密钥失败,生成0KB的联系人文件。每次Messenger登录都重复这个过程,从而产生了无数的0KB联系人文件。

重新安装或升级Live Messenger都无法解决此问题。

解决方法,RSA密钥文件错误或不完整,将C:Documents and Settings<your name>Application DataMicrosoftCryptoRSA<current account id>目录下的全部文件删除(如果不放心,可以先备份到另一目录)。重新登录Live Messenger,可以看到Contacts和Windows Live Contacts两目录下成功生成联系人文件。这时,可以删除Ignored目录下的全部文件。

Issue: large number of 0KB contacts files produced by Live Messenger

A very large number of contacts files with 0KB in size (with extension of .WindowsLiveContact or .WindowsLiveGroup) can be found at "C:Documents and Settings<your name>Contacts<your email>", and real and shadow directories under "C:Documents and Settings<your name>Local SettingsApplication DataMicrosoftWindows Live Contacts<your email>". Also we noticed there would be also very large amount of 0KB contacts files under the Ignored directories of all above-mentioned directories.  A file named IgnoredReason.txt under each Ignored directory may be large up to several hundreds MB.

This problem will seriously slow down the login of Live Messenger. Re-install or upgrading will not fix this problem.

This is due to the failure of crypt procedure called by Live Messenger when attempting to save contact files. Go to C:Documents and Settings<your name>Application DataMicrosoftCryptoRSA<current account id>, and remove all files under this directory (or just move them to another directory, for your safety consideration). The applications who need them will regenerate in case of their absence. Feel free to remove all useless 0KB contact files, as well as all stupid Ignored directories.

Leave a Reply

Your email address will not be published. Required fields are marked *