簡體   English   中英

枚舉MSMQ中的所有傳出隊列,C#

[英]Enumerate all outgoing Queues in MSMQ, C#

使用 C# 和 .NET 3.5,如何獲取 MSMQ 中所有傳出隊列的列表? 我找到了這篇關於它的文章,但正如您在下面看到的,我沒有Microsoft Message Queue 3.0 Object Library的 COM 條目...

我不小心弄到了 Microsoft Message Queue 3.0 Object Library

那么如何獲取當前的傳出隊列列表呢? 我想一定有辦法,因為我可以在Computer Management中看到它們......

計算機管理 + MSMQ

我能做些什么?

我認為有兩個很好的起點:

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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM