Two good places to start I think would be these:
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
I'll see if I can work up some code.
Perhaps not, those look old, still looking.
Heres some WScript that will show them to you, still looking for .Net code:
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);
}
}
}
}
Looks like all the outgoing queues start with "os:"
Need to references System.Management and System.Management.Instrumentation
Microsoft Message Queue 3.0 Object Library
. I am not sure how to correct this state, or how to work around it. But yes, those two articles reference similar methods I had listed in the linked article – Ferdinand