Erro: "ExternalException: não é possível executar um programa" mensagem de erro quando chamada de WebServices a partir do página .aspx

Traduções deste artigo Traduções deste artigo
ID do artigo: 315904 - Exibir os produtos aos quais esse artigo se aplica.
Expandir tudo | Recolher tudo

Neste artigo

Sintomas

Se você usar o SOAP (Simple Object Access Protocol) para chamar o método WebServices a partir de uma página .aspx, a página .aspx pode falhar quando você executa a ferramenta bloqueio do Microsoft Internet Information Services (IIS). Além disso, você pode receber a seguinte mensagem de erro:
[ExternalException (0 x 5): não é possível executar um programa. O comando que está sendo executado foi /noconfig "d:\winnt\microsoft.net\framework\v1.0.3408\csc.exe" @ "D:\WINNT\TEMP\eyrpuhyg.cmdline".]
Esse problema afeta apenas aplicativos da Web ou serviços que são clientes de um serviço da Web e que representar a conta de usuário anônimo da Web.

Causa

A ferramenta IIS Lockdown nega acesso de execução para o IUSR_ COMPUTERNAME e o IWAM_ COMPUTERNAME contas para cada executável (*.exe) de arquivos no diretório do Windows (% windir %). Isso inclui ferramentas de estrutura, como o arquivo CSC.exe, que usa a classe XmlSerializer . Quando um aplicativo da Web ou um serviço da Web representa IUSR_ COMPUTERNAME ou IWAM_ COMPUTERNAME, o aplicativo da Web ou na Web serviço não é possível usar o XmlSerializer para serializar objetos em XML (Extensible Markup Language) documentos.

Observação Esse problema não afeta o lado do servidor de um serviço da Web como o XmlSerializer é gerado e compilado fora da representação.

Resolução

Para resolver esse problema, use um dos seguintes métodos:
  • Use uma conta diferente, não é anônima para representar. (Isso é o método recomendado.)
  • Adicione permissão suficiente para arquivos executáveis no diretório do Windows.

Situação

A Microsoft confirmou que este é um bug no Microsoft produtos que estão listados no início deste artigo.

Mais Informações

Passos para reproduzir o problema

  1. Permite anônimo acesso no aplicativo do IIS.
  2. Ativar a representação do aplicativo da Web no arquivo Web.config local da seguinte maneira:
    <configuration>
      <system.web>	
    	<identity impersonate="true" />
      </system.web>
    </configuration>
    					
  3. Executar a ferramenta IIS Lockdown ou negar acesso para o IUSR_ COMPUTERNAME ou a conta IWAM_ COMPUTERNAME no arquivo CSC.exe antes de solicitar a página.

Referências

Para obter informações adicionais sobre a representação no ASP.NET aplicativo, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
306158INFO: Implementando representação no ASP.NET aplicativo
Para obter informações adicionais sobre XmlSerializer , clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
315703COMO: Serializar um objeto para XML usando o Visual Basic .NET
Para obter mais informações sobre serviços da Web, consulte os seguintes sites da MSDN:
XML Web Services Developer Center
http://msdn.microsoft.com/webservices

Documentos XML do Office Web Service-Enabled (uma coluna Extreme XML )
http://msdn2.microsoft.com/en-us/library/ms950767.aspx

Além disso, consulte o tópico "Criando e acessando Web Services Walkthroughs" na documentação do Visual Studio .NET ajuda online para obter mais informações sobre serviços da Web.

Propriedades

ID do artigo: 315904 - Última revisão: quinta-feira, 29 de março de 2007 - Revisão: 6.3
A informação contida neste artigo aplica-se a:
  • Microsoft ASP.NET 1.0
  • Microsoft Web Services (included with the .NET Framework) 1.0
  • Microsoft Web Services Enhancements para Microsoft .NET 1.1
Palavras-chave: 
kbmt kbbug kbpending kbsecurity kbwebforms KB315904 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: 315904
Aviso de Isenção de Responsabilidade sobre Conteúdo do KB Aposentado
Este artigo trata de produtos para os quais a Microsoft não mais oferece suporte. Por esta razão, este artigo é oferecido "como está" e não será mais atualizado.

Submeter comentários

 

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