Error al llamar método de objeto COM

02/07/2004 - 16:59 por jaimito | Informe spam
Hola compañeros...

En mi aplicación ASP.NET estoy utilizando una DLL ActiveX
creada en VB6. Agrego una referencia COM a mi proyecto
ASP.NET. En una página ASPX, instancio un objeto de la DLL
ActiveX, un ejemplo así:

///////////////////////////////////////////////////
//declaro objeto
Utilidad.Archivo objArchivo = null;

//instancio objeto sin problemas
objArchivo = new Utilidad.Archivo();

//Aquí genera el siguiente error:
//System.Runtime.InteropServices.COMException:
//Invalid procedure call or argument
objArchivo.Abrir("c:\prueba.jr");
///////////////////////////////////////////////////

Exactamente donde llamo al método Abrir genera el error que
comentarié.

Este método en la DLL ActiveX lo declaré así:

Public Function Abrir(ByVal Ruta As Variant) As Variant
'
' IMPLEMENTACIÓN
'
End Function


Llevo ya tres días con problemas al intentar utilizar un
objeto COM desde mi aplicación .NET (como se habrán podido
dar cuenta en los posting).

Les agradezco toda su colaboración al respecto.

Mil gracias...

Preguntas similare

Leer las respuestas

#1 Sashka
02/07/2004 - 17:52 | Informe spam
Yo nunca he trabajado con COM en aspnet... pero, por lo que interpreto... el
tipo variant no se admite...porqué has declarado el parametro como variant y
no como string???

Busca en la ayuda VT_VARIANT y lee el punto Cálculo de referencias
predeterminado para objetos
y alli Calcular referencias de objetos para variantes

No encuentro documentación al respecto en Google :(

Sashka
MS MVP Access

"jaimito" escribió en el mensaje
news:2561901c46045$1fa6c6d0$
Hola compañeros...

En mi aplicación ASP.NET estoy utilizando una DLL ActiveX
creada en VB6. Agrego una referencia COM a mi proyecto
ASP.NET. En una página ASPX, instancio un objeto de la DLL
ActiveX, un ejemplo así:

///////////////////////////////////////////////////
//declaro objeto
Utilidad.Archivo objArchivo = null;

//instancio objeto sin problemas
objArchivo = new Utilidad.Archivo();

//Aquí genera el siguiente error:
//System.Runtime.InteropServices.COMException:
//Invalid procedure call or argument
objArchivo.Abrir("c:\prueba.jr");
///////////////////////////////////////////////////

Exactamente donde llamo al método Abrir genera el error que
comentarié.

Este método en la DLL ActiveX lo declaré así:

Public Function Abrir(ByVal Ruta As Variant) As Variant
'
' IMPLEMENTACIÓN
'
End Function


Llevo ya tres días con problemas al intentar utilizar un
objeto COM desde mi aplicación .NET (como se habrán podido
dar cuenta en los posting).

Les agradezco toda su colaboración al respecto.

Mil gracias...
Respuesta Responder a este mensaje
#2 jaimito
02/07/2004 - 19:01 | Informe spam
Gracias Sashka, intenté lo que dices y sigue generando el
mismo error.

Lo mejor de todo, es que en los ejemplos suministrador por
Microsoft todo es parecido a como lo estoy haciendo.

Gracias...

Yo nunca he trabajado con COM en aspnet... pero, por lo


que interpreto... el
tipo variant no se admite...porqué has declarado el


parametro como variant y
no como string???

Busca en la ayuda VT_VARIANT y lee el punto Cálculo de


referencias
predeterminado para objetos
y alli Calcular referencias de objetos para variantes

No encuentro documentación al respecto en Google :(

Sashka
MS MVP Access
Respuesta Responder a este mensaje
#3 Sashka
02/07/2004 - 20:05 | Informe spam
Public Function Abrir(ByVal Ruta As Variant) As Variant
Y que devuelve abrir??? sigue como variant???

Y si pones una rutina de error en esa función (en VB6) ??
http://msdn.microsoft.com/library/d...stopic.asp

Sashka
MS MVP Access

"Sashka" escribió en el mensaje
news:
Yo nunca he trabajado con COM en aspnet... pero, por lo que interpreto...


el
tipo variant no se admite...porqué has declarado el parametro como variant


y
no como string???

Busca en la ayuda VT_VARIANT y lee el punto Cálculo de referencias
predeterminado para objetos
y alli Calcular referencias de objetos para variantes

No encuentro documentación al respecto en Google :(

Sashka
MS MVP Access

"jaimito" escribió en el mensaje
news:2561901c46045$1fa6c6d0$
Hola compañeros...

En mi aplicación ASP.NET estoy utilizando una DLL ActiveX
creada en VB6. Agrego una referencia COM a mi proyecto
ASP.NET. En una página ASPX, instancio un objeto de la DLL
ActiveX, un ejemplo así:

///////////////////////////////////////////////////
//declaro objeto
Utilidad.Archivo objArchivo = null;

//instancio objeto sin problemas
objArchivo = new Utilidad.Archivo();

//Aquí genera el siguiente error:
//System.Runtime.InteropServices.COMException:
//Invalid procedure call or argument
objArchivo.Abrir("c:\prueba.jr");
///////////////////////////////////////////////////

Exactamente donde llamo al método Abrir genera el error que
comentarié.

Este método en la DLL ActiveX lo declaré así:

Public Function Abrir(ByVal Ruta As Variant) As Variant
'
' IMPLEMENTACIÓN
'
End Function


Llevo ya tres días con problemas al intentar utilizar un
objeto COM desde mi aplicación .NET (como se habrán podido
dar cuenta en los posting).

Les agradezco toda su colaboración al respecto.

Mil gracias...


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida