En este grupo En todos

Foro de ASP



Error al recuperar un generador de clases COM

Alberto
Madrid, España
Escrito por Alberto
el 12/07/2007
Hola a todos,necesito ayuda urgentemente con una aplicacion asp. Net en C#.
Mi aplicacion abre un documento word(que contiene varios marcadores) guardado en base de datos y vuelca en esos marcadores diferentes datos. Todo esto funciona a la perfeccion desde el visual studio 2005,pero al publicarlo en el iss 6 me salta el siguiente error:

[SIZE="3"][B]Error al recuperar un generador de clases COM para el componente con CLSID {000209FF-0000-0000-C000-000000000046} debido al siguiente error: 80070005.
Descripción: Excepción no controlada al ejecutar la solicitud Web actual. Revise el seguimiento de la pila para obtener más información acerca del error y dónde se originó en el código.
[/B][/SIZE]
[B]Detalles de la excepción: System. UnauthorizedAccessException: Error al recuperar un generador de clases COM para el componente con CLSID {000209FF-0000-0000-C000-000000000046} debido al siguiente error: 80070005.

ASP. NET no está autorizado para obtener acceso al recurso solicitado. Considere la posibilidad de conceder derechos de acceso al recurso para la identidad de solicitud de ASP. NET. Si la aplicación no se va a suplantar, ASP. NET utiliza una identidad de proceso base (normalmente {MACHINE}ASPNET en IIS 5 o Network Service en IIS 6). Si la aplicación se va a suplantar mediante <identity impersonate="true"/>, la identidad será el usuario anónimo (generalmente IUSR_MACHINENAME) o el usuario solicitado autenticado.

Para conceder a ASP. NET acceso a un archivo, desde el Explorador, haga clic con el botón secundario del mouse en el archivo, elija "Propiedades" y seleccione la ficha Seguridad. Haga clic en "Agregar" para agregar el usuario o grupo adecuado. Resalte la cuenta de ASP. NET y active las casillas según el acceso deseado.

Error de código fuente:

[SIZE="4"]
[COLOR="RoyalBlue"]Línea 2194:            object isVisible = true;
Línea 2195:            object missing = System.Reflection.Missing. Value;[/COLOR]
[COLOR="Red"]Línea 2196:            Word. ApplicationClass oWordApp = new Word. ApplicationClass();[/COLOR]
[COLOR="RoyalBlue"]Línea 2197:
Línea 2198:            /*abro la plantilla como un nuevo documento word y la guardo en un nuevo directorio*[/COLOR]/[/SIZE]
 

Archivo de origen: c:CitasOnNet_plantillasmtoHistorialHistoriaV2.aspx.cs    Línea: 2196

Seguimiento de la pila:


[UnauthorizedAccessException: Error al recuperar un generador de clases COM para el componente con CLSID {000209FF-0000-0000-C000-000000000046} debido al siguiente error: 80070005.]
   mtoHistorial_HistoriaV2. GvPlantillas_RowCommand(Object sender, GridViewCommandEventArgs e) in c:CitasOnNet_plantillasmtoHistorialHistoriaV2.aspx.cs:2196
   System.Web.UI. WebControls.GridView.OnRowCommand(GridViewCommandEventArgs e) +105
   System.Web.UI. WebControls.GridView.HandleEvent(EventArgs e, Boolean causesValidation, String validationGroup) +76
   System.Web.UI. WebControls.GridView.RaisePostBackEvent(String eventArgument) +199
   System.Web.UI. WebControls.GridView.System. Web.UI.IPostBackEventHandler. RaisePostBackEvent(String eventArgument) +7
   System.Web.UI. Page. RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11
   System.Web.UI. Page. RaisePostBackEvent(NameValueCollection postData) +174
   System.Web.UI. Page. ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5102[/B]


Ya he probado numerosas cosas y ninguna ha funcionado.
Espero que podais ayudarme con mi error.
Gracias por adelantado.
Marta Prado
Orense, España
Escrito por Marta Prado
el 11/01/2008

Hola.

¿Has logrado solucionar el problema? Es que a mi me pasa lo mismo, y no se que hacer.

Gracias.

Escrito por Geraro Franco
el 07/03/2008

Consideraciones

Https://support.microsoft.com/default. Aspx? Scid=kb;EN-US;q257757

Configuracion

Https://support.microsoft.com/default. Aspx? Scid=kb;EN-US;q288366

Https://support.microsoft.com/default. Aspx? Scid=kb;EN-US;q288368

Escrito por Jjsantos
el 15/04/2008
"Consideraciones
https://support.microsoft.com/default. Aspx? Scid=kb;EN-US;q257757
Configuracion
https://support.microsoft.com/default. Aspx? Scid=kb;EN-US;q288366
https://support.microsoft.com/default. Aspx? Scid=kb;EN-US;q288368
"

por Geraro Franco (Marzo 2008)


Hola. Ahora mismo yo me encuentro en el mismo problema. Intento crear una aplicación word desde visual y me genera el error ya comentado.

He leido los articulos que has nombrado. He intentado varias cosas de las que se comentan, y sigo si arreglar el tema.

Me gustaria saber si alguien HA CONSEGUIDO arreglarlo y cómo.

El código es el siguiente:

"Creamos un documento a través de la plantilla

Dim oWordApp As New Word. Application " aqui es donde falla generando el error

Dim oMissing As Object = Type. Missing

Dim oFalse As Object = False

Dim oDocType As Object = 0 "Esto es documento

Dim oTrue As Object = True

Dim noReset As Object = False

Dim sCadenaADevolver As String = ""

Si alguien sabe solucionarlo, lo agradecería. Gracias x adelantado




Escrito por Ersandov
el 30/05/2008
" Consideraciones
https://support.microsoft.com/default. Aspx? Scid=kb;EN-US;q257757
Configuracion
https://support.microsoft.com/default. Aspx? Scid=kb;EN-US;q288366
https://support.microsoft.com/default. Aspx? Scid=kb;EN-US;q288368
"

por Geraro Franco (Marzo 2008)

Podrias ser mas especifico y darnos una mano, no se ingles lamentablemente, y tengo el mismo error en. Net 2005

Escrito por Geraro Franco
el 01/06/2008

Las consideraciones son referidas a que Word como aplicación de Office, no esta desarrollada para ser una aplicación desatendida, sino que es una aplicación de usuario final, esto que quiere decir, que Office tiene interacción con el usuario y diversos componentes del sistema (mediante mensajes de dialogo, etc), en eso se resumen las consideraciones, mientras que aplicaciones web, lo que se ejecuta del lado del servidor es desatendido (al final son solo servicios que despechan peticiones de usuario y que no esperan por un "clic" en una ventana de diálogo).

En lo referente a la configuración, es que se debe crear un usuario administrador del equipo para operar el COM de Office (recordar que Office es creado con la tecnología COM y que para ejecutar los mismos deben tener permisos administrativos en el equipo), eso lleva a una cuestión fuerte de seguridad, ¿Debe una aplicación web que usa office tener una usuario administrador del equipo?. Por lo anterior se debe configurar el COM de word, con dicho usuario administrador para que le permita operar al ASP. NET la manipulación de un documento.


Escrito por Oscar Gonzales
el 11/06/2008

Mire este link. Yo tenia el mismo problema y lo logre solucionar para word

Escrito por Rodrigo
el 09/07/2008
" Mire este link. Yo tenia el mismo problema y lo logre solucionar para word
"

por Oscar Gonzales (Junio 2008)



socio cual seria el link
Antoniohvega
Estado de México, Mé...
Escrito por Antoniohvega
el 19/11/2008

Checate que tengas permiso con el netwokuser para ejecutar el com.

Es en herramientas administrativas > servicios de componentes > equipos > my equipo > dcomconfig

Hay buscas el com de word y vez la propiedades, en la seccionde ejecucion tienes que agregar el networkuser

Antoniohvega
Estado de México, Mé...
Escrito por Antoniohvega
el 19/11/2008

Checate que tengas permiso con el netwokuser para ejecutar el com.

Es en herramientas administrativas > servicios de componentes > equipos > my equipo > dcomconfig

Hay buscas el com de word y vez la propiedades, en la seccionde ejecucion tienes que agregar el networkuser

Escrito por Tolotoco
el 07/01/2009

Revisa el usuario que trabaja con las Office Tools.

Dale permisos para el programa que quieres ejecutar; en mi caso el Excel. Exe.

Revisa que cierras el programa cuando terminas de crear el archivo porque, de lo contrario, si intentas visualizarlo lo tiene bloqueado el servidor y te da error al intentar abrirlo.

Un saludo