CORRECÇÃO: Uma violação de acesso pode ocorrer quando o Message Queuing 2.0 Runtime (Mqrt.dll) é carregado em um aplicativo do COM +

Traduções deste artigo Traduções deste artigo
ID do artigo: 891874 - Exibir os produtos aos quais esse artigo se aplica.
Aviso
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Expandir tudo | Recolher tudo
importante Este artigo contém informações sobre como modificar o registro. Antes de modificar o registro, certifique-se de backup e certifique-se que você saiba como restaurar o registro se ocorrer um problema. Para obter informações sobre como fazer backup, restaurar e editar o registro, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
256986Descrição do registro do Microsoft Windows

Sintomas

Uma violação de acesso pode ocorrer no runtime (Mqrt.dll) quando o tempo de execução é carregado em um aplicativo COM + em um computador com Microsoft Windows 2000 Server Microsoft Message Queuing 2.0. Uma mensagem semelhante à seguinte é registrada no log de eventos do aplicativo:

Tipo de evento: erro
Origem do evento: +
Categoria do evento: SVC
IDENTIFICAÇÃO de evento: 4194
Data: <Date>
Tempo: <Time>
Usuário: N/d
Computador: <ComputerName>
Descrição: A descrição para Event ID (4194) na origem (COM +) não encontrada. O computador local pode não ter as informações de registro necessárias ou arquivos DLL de mensagem para exibir mensagens de um computador remoto. Você poderá usar o/auxsource = sinalizador para recuperar esta descrição; consulte a Ajuda e suporte para obter detalhes. As seguintes informações são parte do evento:
Identificação do programa componente:
IDENTIFICAÇÃO de aplicativo do servidor: {63A4AF4F-F47E-4660-9884-369387CBB71D}
Nome do aplicativo servidor: ServerApplicationName
A natureza grave esse erro causou o encerramento do processo.
Exceção: C0000005
Endereço: 0x77F88216
Pilha de chamadas:,
Ntdll! RtlpWaitForCriticalSection + 0x60
Ntdll! o NtCreateThread + 0xBE
MQRT! MQPathNameToFormatName + 0x39
MQOA + 0XD849 MQOA + 0XD7F7
ServerApplicationName+ 0xD39C
Oleaut32! DispCallFunc + 0x15D MSVBVM60! BASIC_CLASS_Invoke + 0x259 MSVBVM60! BASIC_CLASS_Invoke + 0 x 52 Oleaut32! UserEXCEPINFO_free_local + 0x57D
+ 0x83D98780

Causa

Esse problema ocorre porque um segmento pode ser atribuído a várias atividades em aplicativos do COM +. Esse comportamento causa excessivas chamadas de API de enfileiramento em um tempo relativamente curto. Se o thread é reentered enquanto atividade anterior é bloqueada, o Mqrt.dll executar tempo pára de responder.

Resolução

Um hotfix suportado agora está disponível da Microsoft, mas destina-se somente a corrigir o problema descrito neste artigo. Aplique-o somente nos sistemas que apresentarem esse problema específico. Esta correcção poderá submetida a testes adicionais. Portanto, se você não tiver sido gravemente afetado por esse problema, recomendamos que você aguarde o próximo service pack que contém esse hotfix.

Para resolver esse problema imediatamente, contate o Atendimento Microsoft para obter o hotfix. Para obter uma lista completa dos números de telefone do Atendimento Microsoft do e informações sobre os custos de suporte, visite o seguinte site:
http://support.microsoft.com/default.aspx?scid=fh;[LN];CNTACTMS
Observação Em alguns casos, as taxas cobradas pelas ligações para chamadas de suporte podem ser canceladas se um profissional de suporte da Microsoft determinar que uma atualização específica resolverá o problema. Os custos normais de suporte serão aplicados a questões e problemas que não se qualificam à atualização específica em questão de suporte adicionais.

Pré-requisitos

Microsoft Message Queuing 2.0.

Requisitos de reinicialização

Você deve reiniciar seu computador se estiverem executando os arquivos que estão sendo atualizados quando você aplica essa atualização de software.

Informações sobre a substituição do hotfix

Esse hotfix não substitui outras atualizações de software.

A versão em inglês dessa correção apresenta atributos de arquivo (ou atributos de arquivo posteriores) listados na tabela a seguir. As datas e horas desses arquivos estão listadas no horário de universal coordenado (UTC). Quando você exibe as informações do arquivo, ele é convertido para a hora local. Para encontrar a diferença entre o UTC e a hora local, use a guia fuso horário na ferramenta Data e hora no painel de controle.
Date         Time   Version            Size    File name
--------------------------------------------------------------
03-Feb-2005  13:18  5.0.0.792         291,088  Mq1repl.dll      
22-Dec-2003  22:26  5.0.0.791          14,096  Mq1sync.exe      
25-Oct-2004  03:40  5.0.0.798          77,680  Mqac.sys
03-Feb-2005  13:18  5.0.0.791         217,360  Mqads.dll        
20-Sep-2003  19:23  5.0.0.761          25,360  Mqbkup.exe       
03-Feb-2005  13:18  5.0.0.779          50,448  Mqclus.dll       
03-Feb-2005  13:18  5.0.0.785          76,560  Mqdscli.dll      
03-Feb-2005  13:18  5.0.0.773          42,256  Mqdssrv.dll      
22-Dec-2003  22:26  5.0.0.791          98,064  Mqmig.exe        
03-Feb-2005  13:18  5.0.0.791         266,512  Mqmigrat.dll     
03-Feb-2005  13:18  5.0.0.793         222,480  Mqoa.dll         
03-Feb-2005  13:18  5.0.0.784          10,000  Mqperf.dll       
03-Feb-2005  13:18  5.0.0.798         438,544  Mqqm.dll         
03-Feb-2005  13:18  5.0.0.799         102,672  Mqrt.dll         
03-Feb-2005  13:18  5.0.0.776          70,928  Mqsec.dll        
03-Feb-2005  13:18  5.0.0.783         400,656  Mqsnap.dll       
03-Feb-2005  13:18  5.0.0.762          23,824  Mqupgrd.dll      
03-Feb-2005  13:18  5.0.0.798         110,864  Mqutil.dll       
03-Feb-2005  13:18  5.0.0.748          64,784  Msmq.cpl

Situação

A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".

Como Contornar

Para contornar esse problema, use um ou ambos dos seguintes métodos.

Aviso Se você usar o Editor do Registro incorretamente, você pode causar problemas sérios que talvez exijam a reinstalação do sistema operacional. A Microsoft não garante que você pode resolver problemas resultantes do uso incorreto do Editor do Registro. Use o Editor do registro por sua própria conta e risco.
  • Alterar o comportamento de objeto COM + para usar a subchave de registro
    EmulateMTSBehaviour
    e alternar para o modelo de MTS. O comportamento MTS é uma atividade por thread single-threaded apartment (STA). Para alterar esse comportamento, execute as seguintes etapas:

    Observação Esse método afeta todos os + aplicativos que estão em execução no computador.
    1. Clique em Iniciar , clique em Executar , digite regedit e, em seguida, clique em OK .
    2. Localize e, em seguida, clique na seguinte chave no Registro:
      HKEY_LOCAL_MACHINE\Software\Microsoft\COM3\STAThreadPool
    3. No menu Editar , aponte para novo e, em seguida, clique em DWORD .
    4. Digite EmulateMTSBehavior e, em seguida, pressione ENTER.
    5. No menu Editar , clique em Modificar .
    6. Digite 1 e, em seguida, clique em OK .

      Observação Se você inserir um valor diferente de zero para o valor EmulateMTSBehavior , o pool de segmentos emula o comportamento MTS de uma atividade para cada segmento e 100 threads máximo para cada pacote.
    7. Feche o Editor do Registro.
  • Definir o aplicativo COM + para ser executado enquanto está ocioso, em vez de fechamento. Por padrão, o aplicativo do COM + fecha após o aplicativo ter ficado ocioso por três minutos ou mais. O aplicativo pode parar de responder quando ele for reiniciado após fechamento. Para ativar o aplicativo seja executado enquanto ele estiver ocioso, execute estas etapas:
    1. Clique em Iniciar , clique em configurações , clique em Painel de controle e, em seguida, clique em Ferramentas administrativas .
    2. Clique duas vezes em Serviços de componentes .
    3. No painel esquerdo em Raiz do console , expanda Serviços de componentes , expanda computadores , expanda My Computer , expanda Aplicativos COM + , clique com o botão direito do mouse o aplicativo COM + que você está trabalhando e, em seguida, clique em Propriedades .
    4. Na caixa de diálogo Propriedades , clique na guia Avançado ,
    5. Em Desligamento de processo de servidor , clique para marcar a caixa de seleção permanecer executando quando inativo e, em seguida, clique em OK .

Mais Informações

Para obter mais informações, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
824684Descrição da terminologia padrão que é usada para descrever as atualizações de software

Propriedades

ID do artigo: 891874 - Última revisão: domingo, 27 de outubro de 2013 - Revisão: 3.1
A informação contida neste artigo aplica-se a:
  • Microsoft Message Queuing 2.0 nas seguintes plataformas
    • Microsoft Windows 2000 Server
Palavras-chave: 
kbnosurvey kbarchive kbmt kbfix kbbug kbqfe kbhotfixserver KB891874 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 891874

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com