疑難排解例外狀況:System.Messaging.MessageQueueException

更新:2007 年 11 月

如果發生 Microsoft Message Queing 內部錯誤,就會擲回 MessageQueueException 例外狀況。

相關秘訣

  • 請檢查該例外狀況的 MessageQueueErrorCode 屬性,以判斷 MessageQueue 作業失敗的原因。
    MessageQueueException 類別相關的例外狀況,是由 Message Queueing 內部錯誤所產生,這些內部錯誤必須以程式設計方式進行處理。每個例外狀況由一個錯誤碼和說明來源的文字字串所組成。如需這些錯誤碼的清單及其說明,請參閱 MessageQueueErrorCode

備註

如果 MessageQueue 開啟一個佇列,而佇列中帶有設定為 true 的 sharedModeDenyReceive 參數,則後續嘗試從佇列讀取的任何 MessageQueue 都會因為共用違規的緣故,產生 MessageQueueException 例外狀況。如果 MessageQueue 在獨佔模式中嘗試存取該佇列,而另一個 MessageQueue 已擁有該佇列的非獨佔存取,就會擲回相同的例外狀況。

Visual Basic 注意事項:

MessageQueueTransaction 能夠辨識執行緒的 Apartment。Visual Basic 會將主執行緒的狀態設定為 STA,因此您必須在 Main 副程式中套用 MTAThreadAttribute。否則,使用其他執行緒傳送交易式訊息時,會擲回 MessageQueueException 例外狀況。

請參閱

工作

HOW TO:使用例外狀況助理尋找例外狀況的詳細資訊

HOW TO:建立 MessageQueue 元件執行個體

參考

MessageQueueException