c# - 如何使用脚本从远程服务器中的MS Queue清除消息?

标签 c# powershell queue msmq purge

如何使用脚本(Powershell)或命令行工具(C#)从客户端计算机上以编程方式从客户端计算机中的远程服务器中的MS Queue中清除/删除消息?

客户端计算机上的我的用户(凭据)在远程服务器的MS Queue中具有“完全控制”权限。

最佳答案

试试这个:

Invoke-Command -ComputerName "mycomputer" -ScriptBlock {

        ## if public then $queuename = ".\YOUR_Q_NAME" 
        $queuename = ".\private$\YOUR_Q_NAME"  

        [Reflection.Assembly]::LoadWithPartialName("System.Messaging") | Out-Null
        $queue = New-Object -TypeName "System.Messaging.MessageQueue"
        $queue.Path = $queuename 
        $messagecount = $queue.GetAllMessages().Length
        $queue.Purge()
        Write-Host "$queuename has been purged of $messagecount messages."
    }

注意:需要在远程服务器中启用PS Remoting。

关于c# - 如何使用脚本从远程服务器中的MS Queue清除消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25011855/

相关文章:

node.js - “npm”不被识别为内部或外部命令、可操作程序或批处理文件,但它在我的环境路径中

swift - 按顺序 Swift 执行任务

c# - 使用 linq 解决脑筋急转弯

用于打印所有子文件夹的 PowerShell 脚本

powershell - 打开或关闭滚动锁定

audio - 核心音频队列破解

java - 使用可调整大小的数组在 Java 中实现队列 API

c# - Ajax 调用 C# webservice 返回对象内的对象?

c# - Action 链接鼠标悬停?

c# - 以编程方式返回