如何在 Visual Studio 中調試 Windows PowerShell 模組?
我正在嘗試使用 Visual Studio 2015 將 PowerShell 模組編寫為 VB.NET 項目。我已經能夠將一些命令放在一起,將類庫編譯為 DLL,將模組導入 PowerShell 會話並呼叫我創建的命令。到目前為止一切都很好。但是當我擴展這個模組時,我需要能夠調試它。
所以我在解決方案中添加了另一個項目,一個控制台應用程序。我將其設置為啟動項目,並在第一個項目中引用了 PowerShell 類。到目前為止,當我呼叫 PowerShell 函式時,我編寫的所有工作都在
EndProcessing()子常式中完成。我不能從我的控制台應用程序中呼叫它,因為它受到保護。問題:我如何
Get-TestCommand從控制台應用程序中正確呼叫我的 PowerShell 函式,以便 Visual Studio 知道我在觸發我放入 Powershell 類庫中的斷點時引用的是單獨項目中的程式碼而不是編譯的 DLL?
無需單獨的項目即可直接調試 cmdlet。打開你的類庫項目的屬性,配置
Debug選項卡如下(假設Windows安裝到C:):
開始行動
- 啟動外部程序:
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe開始選項
- 命令行參數:
-NoLogo -Command "Import-Module '.\MyModule.dll'; Get-TestCommand;"
下載適用於 Visual Studio 2015 的 PowerShell 工具 或使用Windows PowerShell ISE。
如何在 Windows PowerShell ISE 中調試腳本
更新日期:2013 年 10 月 17 日 適用於:Windows PowerShell 2.0、Windows PowerShell 3.0、Windows PowerShell 4.0、Windows PowerShell 5.0 本主題介紹如何使用 Windows PowerShell® 集成腳本環境 (ISE) 視覺化調試功能在本地電腦上調試腳本. 如何管理斷點 如何管理調試會話 如何在調試時單步執行、單步執行和單步跳出 如何在調試時顯示變數的值
如何管理斷點 斷點是腳本中您希望操作暫停的指定點,以便您可以檢查變數的目前狀態和腳本執行的環境。一旦你的腳本被斷點暫停,你可以在控制台窗格中執行命令來檢查你的腳本的狀態。您可以輸出變數或執行其他命令。您甚至可以修改對目前執行腳本的上下文可見的任何變數的值。檢查完您想看到的內容後,您可以恢復腳本的操作。您可以在 Windows PowerShell 調試環境中設置三種類型的斷點: 行斷點。腳本執行過程中到達指定行時腳本暫停…

