1
只有當從運行對話框執行以下PowerShell命令時,我纔會遇到DLL導入錯誤。從打開的PowerShell窗口完全相同的命令執行沒有問題。錯誤:從運行對話框導入DLL
錯誤產生RUN對話框命令:
Powershell $k=Add-Type -MemberDefinition '[DllImport("user32.dll")]public static extern bool ShowWindow(IntPtr h, int n);' -Name w -PassThru
打印以下錯誤:在一個已打開的powershell窗口運行相同的代碼時,返回
沒有錯誤:
$k=Add-Type -MemberDefinition '[DllImport("user32.dll")]public static extern bool ShowWindow(IntPtr h, int n);' -Name w
-PassThru;
我覺得這不會讓人困惑,因爲我在這兩種方法的印象下ld產生了相同的結果。有什麼邏輯推理爲什麼會發生這種情況?如何解決這個錯誤?
該代碼的目的是儘量減少PowerShell窗口。我知道還有其他方法可以實現這一點。
的確。如果[PSv6 +將默認爲'-File'](https://github.com/PowerShell/PowerShell/pull/4019),也值得推薦明確使用'-Command'。 – mklement0
完美答案,謝謝! – Msegling