我有这个组件,由于某种原因,Windows开始从此路径加载:

C:\Users\marius\AppData\Local\assembly\dl3\MP6PT6BV.2Z4\GMRQEZL9.LCB\46d762c5\8cf066ff_7eaecc01\X.DLL

这意味着我对组件进行的任何更改,它的新副本不是从其输出文件夹中加载的,而是从该缓存文件夹中加载的。我尝试删除文件夹,甚至重新启动窗口,它再次生成,并从那里加载组件。

那么,我怎么能摆脱它呢?我该怎么做才能告诉系统从其输出文件夹而不是从缓存中加载DLL?

有帮助吗?

解决方案

我找到了我的问题的答案。这是Windows注册表中在HKCU Software Microsoft Fusion fusion downloadcachelocation下指定的.NET框架的“影子复制”文件夹。阴影复制是.NET框架中的一个功能,允许在应用程序域中使用的程序集更新而无需卸载应用程序域。有关此功能的更多信息 http://msdn.microsoft.com/en-us/library/ms404279.aspx.

我正在加载程序集的应用程序域将其配置为阴影复制文件,通过设置 ShadowCopyFiles 财产为 true.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top