我正在尝试使用 Visual Studio 2015 将 PowerShell 模块编写为 VB.NET 项目。我已经能够将一些命令放在一起,将类库编译为 DLL,将模块导入 PowerShell session 并调用我创建的命令。到目前为止一切都很好。但是当我扩展这个模块时,我需要能够调试它。
所以我在解决方案中添加了另一个项目,一个控制台应用程序。我将其设置为启动项目,并在第一个项目中引用了 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;"
关于.net - 如何在 Visual Studio 中调试 Windows PowerShell 模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35298963/