我正在为使用Assembly.Load(byte[])
加载插件DLL的产品创建一个插件。这一切都非常好,但这意味着我没有加载调试符号的常规方法来逐步执行我的代码。
疯狂的是,几个月前我遇到了完全相同的问题并解决了问题 - 男孩为我自己感到骄傲!所以我知道它可以做到,我只是忘记了!
我对我可能尝试过的事情有一些模糊的记忆,但我无法从头脑中挑逗细节:
答案 0 :(得分:1)
如果您的程序集具有强名称,则可以将程序集放在GAC中。强名称程序集从GAC加载始终,即使它是通过Assembly.Load(byte[])
加载的。然后将您的符号放在C:\Windows\symbols\dll
或方便的位置。我这样做是为了调试我们自己的产品的插件DLL,它们以类似的方式由另一个应用程序加载。
您可以使用gacutil
将其安装在GAC中。请记住在完成调试后将其删除,或者最终可能会针对GAC忘记的旧版本运行测试。