No se puede crear una instancia de Net objeto COM en la página ASP clásico / VBScript (error ASP 0177)

StackOverflow https://stackoverflow.com/questions/1518986

Pregunta

He escrito una clase-biblioteca de interoperabilidad COM habilitado en C # con .Net 3.5. El objeto está destinado a proporcionar algunas funciones de utilidad para las páginas ASP clásico. He escrito una página test.asp cuales instanciates el objeto deseado y llama a sus métodos. Funciona bien en mi máquina.

En una máquina diferente (Windows Server 2003 - Standard Edition) no funciona eventhough el conjunto se ha registrado en el regasm correctamente. He comprobado el regedit y que yo sepa se ve bien.

El error que estoy recibiendo es "ASP 0177" (código de error),. "8000ffff; Server.CreateObject-Fehler" (Descripción de error) que se traduce en Server.CreateObject-error

Por cierto. el conjunto está firmado y no tiene ningún otro montajes de generación personalizada como dependencias (sólo las cosas del sistema).

hicieron una experiencia que nadie algo similar?

¿Fue útil?

Solución

La concesión al usuario IUSR (o quien sea su usuario de IIS es) acceso de lectura a la siguiente clave de registro hizo el trabajo para mí y solucionado el problema.

HKEY_USERS\S-1-5-20\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones

Otros consejos

Creo que es un problema de seguridad. Parece que había desarrollado y probado el componente en su propio ordenador, que tiene muchas diferencias en comparación con un servidor (que tiene Visual Studio instalado por ejemplo).


EDIT: Por favor, eche un vistazo a este Microsoft "HOTFIXES una revisión":

  • Busque y haga clic en la siguiente subclave del registro: HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Internet Explorer \ Main \ FeatureControl \ FEATURE_IGNORE_ZONES_INITIALIZATION_FAILURE_KB945701
  • Nota Si no existe la subclave FEATURE_IGNORE_ZONES_INITIALIZATION_FAILURE_KB945701, debe crear manualmente. Si está utilizando un sistema operativo de 64 bits, es posible que tenga que utilizar HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ Internet Explorer \ Main \ FeatureControl \ FEATURE_IGNORE_ZONES_INITIALIZATION_FAILURE_KB945701 lugar
  • Haga clic FEATURE_IGNORE_ZONES_INITIALIZATION_FAILURE_KB945701, seleccione Nuevo y, a continuación, haga clic en Valor DWORD
  • Tipo de w3wp.exe para nombrar la nueva entrada del registro y, a continuación, pulse ENTER.
  • Haga clic w3wp.exe y, a continuación, haga clic en Modificar.
  • En el cuadro Información del valor, escriba 1 y haga clic en OK.

Después de establecer esta clave de registro, un simple reinicio grupo de aplicación se aplicará el cambio. Ya no serán sus componentes COM .NET dejar al azar el trabajo con una solución real a excepción barajar grupos de aplicaciones!

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top