Error: Error al invocar métodos en un servicio Web mediante ASP

IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.

Haga clic aquí para ver el artículo original (en inglés): 322886
Este artículo se ha archivado. Se ofrece "tal cual" y no se volverá a actualizar.
Se recomienda encarecidamente que todos los usuarios se actualicen a la versión 7.0 de Microsoft Internet Information Services (IIS) ejecutándose sobre Microsoft Windows Server 2008. IIS 7.0 aumenta considerablemente la seguridad de la infraestructura Web. Para obtener más información acerca de temas relacionados con la seguridad IIS, visite el siguiente sitio Web de Microsoft:Para obtener más información acerca de IIS 7.0, visite el siguiente sitio Web de Microsoft:
Síntomas
Cuando se invocan métodos en un servicio Web, puede recibir el siguiente mensaje de error:
System.InvalidOperationException: Unable to generate a temporary class(result=1). error CS2001: Source file 'C:\WINNT\TEMP\gggcyckb.0.cs' could not be found error CS2008: No inputs specified at System.Xml.Serialization.Compiler.Compile() at System.Xml.Serialization.TempAssembly..ctor(XmlMapping[] xmlMappings) at System.Xml.Serialization.XmlSerializer.FromMappings(XmlMapping[] mappings) at System.Web.Services.Protocols.SoapClientType..ctor(Type type) at System.Web.Services.Protocols.SoapHttpClientProtocol..ctor() at SDAccounts.swd_dotnetdev.Organizations..ctor() at SDAccounts.Contacts.GetContactInfo(Object Status, Object& ErrorString)					
Causa
Servicios Web de ASP.NET utilizan a veces la carpeta Temp del sistema cuando procesan WebMethods. Si el subproceso que está procesando la solicitud utiliza una identidad que no tiene acceso de lectura y escritura a la carpeta, recibirá el mensaje de error.
Solución
Para evitar este problema, conceder privilegios de lectura y escritura para la carpeta Temp a la cuenta ASPNET. Cuando el proceso de los servicios Web ASP.NET WebMethods, la identidad que se utiliza con más frecuencia para obtener acceso a la carpeta Temp del sistema es la cuenta ASPNET local, que es la cuenta predeterminada en la que las aplicaciones ASP.NET se ejecutan.

Sin embargo, si ha configurado la aplicación para utilizar la suplantación en el archivo Web.config, el subproceso puede utilizar también la identidad de un llamador. Si éste es el caso, todas las identidades de llamada potenciales deben tener privilegios de lectura y escritura a la carpeta Temp. Una identidad es probable que realiza la llamada es la cuenta anónima de la aplicación de servicios de Internet Information Server (IIS) (normalmente el ISUR_xxx cuenta). Asimismo, podrá utilizar el subproceso IWAM_xxx cuenta.
Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados al principio de este artículo.

Propiedades

Id. de artículo: 322886 - Última revisión: 12/07/2015 11:04:01 - Revisión: 7.0

Servicios de Microsoft Internet Information Server 5.0

  • kbnosurvey kbarchive kbbug kbpending kbmt KB322886 KbMtes
Comentarios