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...
 

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...

Preguntas similares