Artigo: 247394 - Última revisão: terça-feira, 29 de Julho de 2003 - Revisão: 2.0

PROBLEMA: Erro "Permissão negada" quando utiliza componentes no modo de grupo de trabalho em fila

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.
Expandir tudo | Reduzir tudo

Sintomas

Quando tenta criar um gravador de componentes em fila de espera (QC) com a instrução GetObject, se tiver o Microsoft Message Queuing (MSMQ) versão 2.0, configurado para ser executado no modo de grupo de trabalho (em vez de trabalhar com um controlador de domínio), poderá receber a seguinte mensagem de erro:
Run-time error '70': permissão negada

Causa

Quando uma aplicação do COM + está configurada para ser colocado em fila, cria filas MSMQ para receber chamadas a receber. Se o MSMQ está configurado no modo de grupo de trabalho, ocorrem dois problemas:
  • As filas são privadas e não assim são publicadas no Active Directory.
  • Porque existem não certificados MSMQ, MSMQ não é possível autenticar a origem das mensagens que chegam à fila.

Resolução

Para utilizar componentes em fila no modo de grupo de trabalho, tem de efectuar duas coisas:
  • Para permitir mensagens MSMQ não assinadas, tem de definir o nível de autenticação de aplicação COM + para nenhum .
  • Para aceder os componentes em fila a partir de um computador remoto, tem de especificar um fila: moniker contém FormatName completo da fila de destino.

Mais Informação

Para alterar o nível de autenticação de aplicação COM + que hospeda os componentes em fila, execute os seguintes passos:
  1. Em Ferramentas administrativas , abra o snap-in MMC de serviços de componentes.
  2. Expanda o Meu computador e navegue para a aplicação COM + que hospeda os componentes em fila.
  3. Para abrir a folha de propriedades para a aplicação, clique com o botão direito na aplicação e seleccione Propriedades . Clique no separador segurança e seleccione nenhum para nível de autenticação para chamadas .
Quando criar os componentes em fila localmente (no mesmo computador como a aplicação COM +), pode utilizar o moniker fila de espera de forma padrão:
Set oMyQC = GetObject("queue:/new:MyProject.CMyClass")
				
para criar o gravador e enviar chamadas QC registados a partir de um computador remoto, terá de alterar a forma que especifique o moniker. Para referenciar uma fila MSMQ num computador remoto que está instalada no modo de grupo de trabalho, tem de especificar o moniker utilizando o nome de formato directo; por exemplo:
Set oMyQC = GetObject("queue:FormatName=DIRECT=OS:MyServer\PRIVATE$\MyApp/new:Myproject.CMyClass")
				
em que meuservidor é o nome de computador para o servidor no qual reside a aplicação do COM + em fila e MyApp é o nome da aplicação do COM + em fila. Tenha em atenção o PRIVATE $ parte do caminho; isto é necessário porque apenas as filas privadas podem ser hospedadas no servidor de modo de um grupo de trabalho do MSMQ.

Referências

Para obter informações adicionais, clique no número de artigo existente abaixo para visualizar o artigo na base de dados de conhecimento da Microsoft:
246825  (http://support.microsoft.com/kb/246825/EN-US/ ) COMO: Configurar uma aplicação COM + para componentes em fila de espera
Para obter informações sobre o fila: moniker, consulte o artigo "Utilizando o moniker de filas" no seguinte Web site da MSDN (Microsoft Developer Network):
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cossdk/htm/pgservices_queuedcomponents_786q.asp (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cossdk/htm/pgservices_queuedcomponents_786q.asp)
Para obter informações adicionais, consulte a secção "Utilizar componentes em fila de espera" do artigo "+ directrizes para Visual Basic desenvolvimento de aplicações" no seguinte site da Web MSDN:
http://msdn.microsoft.com/library/techart/complus.htm (http://msdn.microsoft.com/library/techart/complus.htm)

A informação contida neste artigo aplica-se a:
  • Microsoft COM+ 1.0
Palavras-chave: 
kbmt kbcomplusqc kbprb KB247394 KbMtpt
Tradução automáticaTraduçã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 revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 247394  (http://support.microsoft.com/kb/247394/en-us/ )
Retired KB ArticleExclusão de Responsabilidade para Conteúdo sem Suporte na KB
Este artigo foi escrito sobre produtos para os quais a Microsoft já não fornece suporte. Por conseguinte, este artigo é oferecido "tal como está" e deixará de ser actualizado.