我正在使用 Powershell cmdlet 安装 NSB 基础架构。我尝试了一些测试虚拟机,它似乎工作正常。但是,在生产中,在 Windows 2008 R2 机器上出现以下错误
PS C:\temp\mcbus\1> Install-NServiceBusPerformanceCounters
Install-NServiceBusPerformanceCounters : Category does not exist.
At line:1 char:1
+ Install-NServiceBusPerformanceCounters
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Install-NServiceBusPerformanceCounters], InvalidOperationException
+ FullyQualifiedErrorId : System.InvalidOperationException,NServiceBus.PowerShell.InstallPerformanceCounters
我试图做 lodctr /R 但它没有帮助。
我还发现可以通过这个命令删除类别
[Diagnostics.PerformanceCounterCategory]::Delete("NServiceBus")
当我转到 Powershell 窗口时,它确实有效,发出此命令并执行 Install-NServiceBusPerformanceCounters,然后它就有效了。如果我重复发出 Install-NServiceBusPerformanceCounters,它表示性能计数器已经存在,所以一切都很好。NSB.Host.exe 也可以正常启动。
但是,当我运行我的 msi 时,从调用 Powershell 脚本的位置返回错误。