我使用PowerShell命令一個C#項目失敗 - 這應該是API的產品的主要功能 - 所以我必須引用大量的DLL的在我的PowerShell庫。C#cmdlet的DLL負載
我的問題是,客戶想要的工作目錄加載從任何位置PowerShell的DLL,而不設置到所有的DLL所在的程序文件夾。但我只能用我的PowerShell命令,如果我打開PowerShell的通過在工作目錄設置爲程序文件的快捷方式文件夾是這樣的:
C:\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.exe -noexit -command "[reflection.assembly]::loadFrom('.\PSAPI.dll') | import-module"
,並設置也到我的Program Files文件夾的工作目錄,其中的產品已經安裝。
如果我只是用
[Reflection.Assembly]::LoadFile("C:\Program Files(x86)\MyProduct\PSAPI.dll")
或
[Reflection.Assembly]::LoadFrom("C:\Program Files(x86)\MyProduct\PSAPI.dll")
它總是失敗。有沒有解決方案(沒有複製所有文件到PowerShell文件夾)?
這是我嘗試和我得到的錯誤 - 我不能設置被引用的dll的其他方式--.NET應用程序正在工作目錄中查找引用的dll的 - 我設置工作目錄在powershell中以確保我是在正確的目錄,但它不會加載我模塊
[reflection.assembly]::loadFrom('C:\Program Files (x86)\ASG-Remoteesktop 2016\ASGRD-PSAPI.dll') | import-module
異常調用「LoadFrom」與「1」的說法(S):「無法加載文件或 彙編「文件:///C:\ Program Files(x86)\ ASG-Remoteesktop 2016 \ ASGRD-PSAPI.dll'或其依賴項之一。系統找不到指定的 文件。 At line:1 char:1 + [reflection.assembly] :: loadFrom('C:\ Program Files(x86)\ ASG-Remoteesktop 2016 \ A ... + ~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~ ~~~ + CategoryInfo:NotSpecified:(:) [],MethodInvocationException + FullyQualifiedErrorId:FileNotFoundException異常