当所有安全用户都已被删除时,如何从 MSMQ 中删除私人队列?

当所有安全用户都已被删除时,如何从 MSMQ 中删除私人队列?

我们的队列服务器上有一个消息队列,但没有人可以访问。在测试期间,我们从队列中删除了所有用户。现在没有人可以访问它。

答案1

system32\msmq\storage\lqs 目录中有一个文件,其中包含此队列的配置。找到包含您所说的队列名称的文件。如果您删除该文件并重新启动 MSMQ,则该队列已消失。显然不要删除任何其他文件!

答案2

您也可以运行此代码片段。请注意,您的项目应引用 System.Messaging

using System.Messaging;

.
.

.

MessageQueue[] msmques = MessageQueue.GetPrivateQueuesByMachine(".");
foreach (var item in msmques)
{
        MessageQueue.Delete(".\\"+item.QueueName);
}

相关内容