2011-11-22 104 views
0

我在GAC中獲得了兩個DLL文件。當一個DLL文件引用另一個DLL文件時,使用PowerShell中的兩個DLL文件

DLL我用下面的方法來加載DLL文件的文件A引用的DLL文件B.

從PowerShell腳本:

[Reflection.Assembly]::Load(full name of dll B) 
[Reflection.Assembly]::Load(full name of dll A) 

儘管這樣,當DLL文件A需要使用一些來自BI的類獲得以下錯誤。

找不到文件'C:\ WINDOWS \ system32 \ WindowsPowerShell \ v1.0 \ B.dll'。

回答

0

如果兩個DLL是在同一目錄下,你可以嘗試:

[reflection.assembly]::loadfrom(full name of dll A) 
+0

這解決了這個問題。但是這是一個意外:我們以前一直以管理員身份運行腳本,但是我的大學在運行之後以普通用戶的身份運行它。到那時Load被替換爲LoadFrom。 仍然困惑爲什麼在這種情況下用戶擁有什麼特權? – naeron84

4

您可以使用:

Add-Type -Path path\to\A.dll