我正在尝试使用我的应用程序调试DLL加载问题,我的部分过程涉及验证程序集的运行时依赖性。我想检查我的DLL的位数,以确保没有任何不匹配。
无论如何,我试图使用PowerShell来做到这一点,但它永远无法找到我指定的DLL。作为一个完整性检查,我决定尝试.NET 4程序集,它仍然失败。
请看下面的图片 - 我在这里做错了什么?
我在其他地方看到了一些建议,例如以管理员身份运行PowerShell以及使用Set-ExecutionPolicy unrestricted
。我做过那些,没有任何成功。
答案 0 :(得分:1)
在将相对路径传递给.NET方法之前,请执行以下操作,以确保.NET使用与PowerShell相同的工作目录(默认情况下不) ,不幸的是):
[Environment]::CurrentDirectory = $PWD
或者,使用$PWD
作为前缀相对路径将它们转换为绝对路径;在你的例子中:
[System.Reflection.Assembly]::GetAssemblyName("$PWD\System.Net.dll")