다음을 통해 공유


예외 문제 해결: System.Messaging.MessageQueueException

MessageQueueException 예외는 Microsoft Message Queuing 내부 오류가 발생한 경우에 throw됩니다.

관련 팁

  • 예외의 MessageQueueErrorCode 속성을 확인하면 메시지 큐 작업이 실패한 이유를 확인할 수 있습니다.
    MessageQueueException 클래스와 관련된 예외는 프로그래밍 방식으로 처리해야 하는 Message Queueing의 내부 오류로 인해 생성됩니다. 모든 예외는 오류 코드와 그 원인을 설명하는 텍스트 문자열로 구성됩니다. 이러한 오류 코드와 해당 설명에 대한 목록은 MessageQueueErrorCode를 참조하십시오.

설명

MessageQueue에서 sharedModeDenyReceive 매개 변수가 true로 설정된 큐를 여는 경우 이후에 MessageQueue에서 이 큐에서 읽으려 할 때마다 공유 위반으로 인해 MessageQueueException 예외가 생성됩니다. 다른 MessageQueue에서 큐에 이미 비독점적으로 액세스하고 있는 동안 MessageQueue에서 단독 모드로 큐에 액세스를 시도하는 경우에도 동일한 예외가 throw됩니다.

Visual Basic 정보Visual Basic 정보

MessageQueueTransaction은 스레딩 아파트 상태를 인식합니다. Visual Basic에서는 주 스레드의 상태를 STA로 설정하므로 Main 서브루틴에 MTAThreadAttribute를 적용해야 합니다. 그렇지 않으면 다른 스레드를 사용하여 트랜잭션 메시지를 전달할 때 MessageQueueException 예외가 throw됩니다.

참고 항목

작업

방법: 예외 도우미 사용

참조

MessageQueueException