6

我已使用以下链接将 MSMQ 功能安装到服务器(win 2008 R2)和客户端计算机(win 7)上。该功能出现在服务器管理器中,我可以通过 GUI 创建公共或私有队列。但是,当我尝试通过 PowerShell (2.0) 在服务器上本地访问队列时,shell 中没有一个用于 MSMQ的Cmdlet被识别。

通过 PowerShell 访问 MSMQ 是否需要采取任何进一步的步骤?是否有我需要加载的 MSMQ 模块?

对此的任何建议将不胜感激。

4

3 回答 3

5

如果您在提供的链接中单击上一级,您将看到您正在查看预发布的 PowerShell 4.0 模块文档。这是到父页面的链接。

https://web.archive.org/web/20131029215718/http://technet.microsoft.com/en-us/library/dn249523.aspx

PowerShell Community Extensions (PSCX) 有一些用于与 MSMQ 一起使用的 cmdlet,但它也可以与 PowerShell 2.0 一起使用。

于 2013-07-11T12:28:51.740 回答
4

以下方法适用于 Powershell 2.0:

$query = "SELECT MessagesinQueue FROM Win32_PerfRawData_MSMQ_MSMQQueue WHERE Name = 'myPrivateQueueName'"
$wmiObject = Get-WmiObject -Query $query
$wmiObject.MessagesinQueue

您可以使用此查询列出队列:

$query = "SELECT * FROM Win32_PerfRawData_MSMQ_MSMQQueue"

查看将以 .Name="theQueueName" 结尾的 __PATH 属性

于 2015-02-11T14:10:44.647 回答
0

我想补充一下,我遇到了这个错误,但是在 windows serverur 2019 中使用了版本 5。我去检查了计算机管理、服务和应用程序,并且没有一个部分名称为消息队列。这可以解释为什么我不能运行命令行。

https://docs.microsoft.com/en-us/dotnet/framework/wcf/samples/installing-message-queuing-msmq

在那之后我不得不重新启动我的电脑。弹出窗口告诉您这样做。

于 2021-12-15T16:14:43.020 回答