다음을 통해 공유


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

업데이트: 2007년 11월

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

관련 팁

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

설명

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

Visual Basic 정보:

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

참고 항목

작업

방법: 예외 도우미를 사용하여 예외에 대한 자세한 내용 찾아보기

방법: MessageQueue 구성 요소 인스턴스 만들기

참조

MessageQueueException