(旧文重贴)fusion.dll把我害惨了,真想哭啊!!!
从mono里面搞的gacutils代码,我移植到.net上之后,在UninstallAssemblies总是出一个I/O的错误,某个dll被使用或者某个path是Access denied。调试了一上午,靠!
刚才终于找到错误原因了,因为我开了一个command prompt窗口,恰好在%windri\assembly\gac\somedll这个目录下,所以我每次delete的时候总是提示denied。关掉了这个窗口,程序就正常了。
想到了可能是fusion造成的,于是做一个试验。在开一个command prompt,然后定位到c:\temp下面,然后.net中简单的File.Delete(somefilefromDiskcTempFolder)是没有任何问题的。
晕倒!看来就是fusion.dll“全面”接管了assembly。但是我没有试验这种方式如何(假设我的机器叫fqq)
net share aaa=c:\windows\assembly /unlimited
start \\fqq
然后再删除目录会有什么效果?当然,最后不要忘记了net share aaa /delete
2004年2月17日 12:24