[英]Enumerate all outgoing Queues in MSMQ, C#
使用 C# 和 .NET 3.5,如何獲取 MSMQ 中所有傳出隊列的列表? 我找到了這篇關於它的文章,但正如您在下面看到的,我沒有Microsoft Message Queue 3.0 Object Library
的 COM 條目...
那么如何獲取當前的傳出隊列列表呢? 我想一定有辦法,因為我可以在Computer Management
中看到它們......
我能做些什么?
我認為有兩個很好的起點:
http://msdn.microsoft.com/en-us/library/ms703173%28v=vs.85%29.aspx
http://msdn.microsoft.com/en-us/library/ms711378%28v=vs.85%29.aspx
我會看看我是否可以編寫一些代碼。
也許不是,那些看起來老了,還在尋找。
下面是一些將向您展示的 WScript,仍在尋找.Net 代碼:
Dim Locator
Set Locator = CreateObject("WbemScripting.SWbemLocator")
Dim objs
Set Service = Locator.ConnectServer(".", "root\cimv2")
Set objs = Service.ExecQuery("Select * From Win32_PerfRawData_MSMQ_MSMQQueue")
For Each object In objs
WScript.Echo "Name: " & object.Name
Next
using System.Management;
namespace TestMSMQStuff
{
class Program
{
static void Main(string[] args)
{
System.Management.SelectQuery q = new SelectQuery("Select * From Win32_PerfRawData_MSMQ_MSMQQueue");
ManagementObjectSearcher s = new ManagementObjectSearcher(q);
foreach (var r in s.Get())
{
Console.WriteLine(r.Properties["Name"].Value);
}
}
}
}
看起來所有傳出隊列都以“os:”開頭
需要參考 System.Management 和 System.Management.Instrumentation
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.