2012-04-05 19 views
1

任何人都可以幫助我解決這個問題。 我想獲得msmq消息與vbscript計數。VbScript MSMQManagement - 獲取郵件數

Dim MSMQApp 
Set MSMQApp = CreateObject("MSMQ.MSMQApplication") 

Dim qFormat 
For each qFormat in MSMQApp.PrivateQueues 
    WScript.Echo qFormat 
    Dim Mgmt 
    Set Mgmt = CreateObject("MSMQ.MSMQManagement") 
    Mgmt.Init ,,"DIRECT=OS:" & qFormat 
    WScript.Echo CLng(Mgmt.MessageCount) 
Next 

有一個私人隊列 - 我在WScript.Echo qFormat中看到。 但是,當我有一個錯誤: 隊列未打開或可能不存在。

請幫助我。

回答

2

問題是 - 「如果指定的目標隊列或傳出隊列不包含任何消息並且不存在句柄,則會拋出異常並生成非特定MQ_ERROR(0xC00E0001)錯誤。」 有隊列,但沒有消息 - 例外。

+0

是的,如果隊列中沒有消息或沒有應用程序正在使用隊列,那麼它不作爲可以分析的數據結構存在。這是爲了節約資源。 – 2012-04-08 21:02:24