Chyba: "ExternalException: Program nelze spustit" chybová zpráva při volání WebServices v .aspx stránce

Prohlášení o odmítnutí odpovědnosti pro už nepodporovaný obsah KB

Tento článek byl napsán pro produkty, ke kterým již Microsoft nadále nenabízí podporu. Článek je tedy poskytován „tak, jak je“ a nebude už nadále aktualizován.

Příznaky

Pokud použijete protokol SOAP (SOAP) volání
WebServices metodu ze stránky ASPX stránku ASPX může dojít k selhání při spuštění nástroj pro uzamčení Internetová informační služba (IIS). Navíc může zobrazit následující chybová zpráva:
[ExternalException (0x5): program nelze spustit. Prováděný příkaz byl/noconfig "d:\winnt\microsoft.net\framework\v1.0.3408\csc.exe" @"D:\WINNT\TEMP\eyrpuhyg.cmdline".]
Tento problém se týká pouze webových aplikací a webových služeb, které jsou klienti webové služby a který zosobnit účet anonymního uživatele.

Příčina

Nástroj pro uzamčení služby IIS odepře přístup spuštění pro IUSR_název_počítače a účty IWAM_název_počítače pro každý spustitelný soubor (*.exe) v adresáři systému Windows (% windir %). To zahrnuje rámec nástrojů jako je například Csc.exe souboru, který používá třídy XmlSerializer . Pokud webová aplikace nebo webová služba zosobňuje IUSR_název_počítače nebo IWAM_název_počítače, webové aplikace nebo webové služby nelze použít XmlSerializer k serializaci objektů do dokumentů Extensible Markup Language (XML).

Poznámka: Tento problém nemá vliv na straně serveru do webové služby, protože XmlSerializer je generována a kompilován mimo zosobnění.

Řešení

Chcete-li vyřešit tento problém, použijte jednu z následujících metod:
  • Pomocí různých anonymní účet zosobnit. (Toto je doporučená metoda).
  • Přidejte oprávnění pro spustitelné soubory v adresáři systému Windows.

Stav

Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti uvedených na začátku tohoto článku.

Další informace

Kroky pro reprodukci chování

  1. Povolit anonymní přístup k aplikaci služby IIS.
  2. Povolení zosobnění pro webovou aplikaci v místním souboru Web.config následující:
    <configuration>  <system.web>
    <identity impersonate="true" />
    </system.web>
    </configuration>

  3. Spuštění nástroje IIS Lockdown nebo odepřít přístup k účtu IWAM_název_počítače na soubor Csc.exe nebo IUSR_název_počítače před požadavku na stránku.

Odkazy

Další informace o zosobnění v aplikaci ASP.NET klepněte na následující číslo článku databáze Microsoft Knowledge Base:

306158 INFO: Implementace zosobnění v aplikaci ASP.NET

Další informace o objekt XmlSerializerklepněte na následující číslo článku znalostní báze Microsoft Knowledge Base:
315703 jak: serializovat objekt XML pomocí jazyka Visual Basic .NET
Další informace o webových službách naleznete na následujících webech MSDN:
XML Web Services Developer Center
http://msdn.microsoft.com/webservices

Dokumenty sady Office XML Web Service-Enabled ( Extrémní XML sloupec)
http://msdn2.microsoft.com/en-us/library/ms950767.aspx

Kromě toho naleznete v tématu "Vytváření a přístup k webové služby návody" v dokumentaci Visual Studio .NET Online nápovědy Další informace o webových službách.
Vlastnosti

ID článku: 315904 - Poslední kontrola: 20. 1. 2017 - Revize: 1

Váš názor