繁体   English   中英

如何重命名MSMQ队列

[英]How to rename MSMQ queue

我需要从Powershell重命名MSMQ队列。

这是我正在运行的:

[System.Reflection.Assembly]::LoadWithPartialName("System.Messaging")
$privateQueues = [System.Messaging.MessageQueue]::GetPrivateQueuesByMachine(".") 

foreach ($queue in $privateQueues) 
{
    if($queue.QueueName.Contains("foo"))
    {
        $queue.QueueName = "bar"

         Write-Host $queue.QueueName
    }
}   

Write-Host打印一个新名称,但是当通过“计算机管理”浏览队列列表时,它不会被更改。

更新:基于此线程 ,无法重命名。 解决方案是删除并重新添加。

您正在获取的是私有队列,因此应该以Private$为前缀。 尝试设置它

$queue.QueueName = "localhost\Private$\bar";

(要么)

$queue.QueueName = ".\Private$\bar";

请参阅MessageQueue.QueueName

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM