Foros del Web » Programación para mayores de 30 ;) » Programación General »

por favor ayuda!!uso de Dll de C++ con VB

Estas en el tema de por favor ayuda!!uso de Dll de C++ con VB en el foro de Programación General en Foros del Web. Mi problema consiste en lo siguiente: Tengo una función implementada en C++ y que tengo en una librería ( *.dll) a esta función la quiero ...
  #1 (permalink)  
Antiguo 29/12/2003, 11:17
 
Fecha de Ingreso: noviembre-2003
Ubicación: valencia
Mensajes: 6
Antigüedad: 21 años
Puntos: 0
por favor ayuda!!uso de Dll de C++ con VB

Mi problema consiste en lo siguiente:
Tengo una función implementada en C++ y que tengo en una librería ( *.dll) a esta función la quiero llamar desde Visual Basic la función en C++ esta declarada de la siguiente manera:
int AbrirFichero(char *namefichero,FILEInfo *datosfichero)

donde namefichero es el nombre del archivo que quiero abrir ( en este caso un .vob) y datos fichero es de tipo estructura la cual he llamado FILEInfo y que tiene la siguiente declaración:

typedef struct {
int tipo; //0:val, 1:lst, 2:vob o mpg
char *ext[6];
FILE *fpsec; //para gestión de vales
char **lista // para gestión de .lst
int fotogramas,anch,alt,bits;

} FILEInfo;


Ahora en Visual Basic declaro esta función de la siguiente manera:

Declare Function AbrirFichero Lib "C:\Proyecto\proyectosole\libreriadvd\Release\libr eriadvd.dll" (ByVal namefichero As String, ByRef datosfichero As FILEInfo) As Long

En este mismo modulo general donde declaro la función también estoy definiendo la estructura, haciéndolo de la siguiente manera:

Type FILEInfo
tipo As Long
ext(6) As String
lista As String
fotogramas As Long
anch As Long
alt As Long
bits As Long
End Type

Pues con todo esto lo que me ocurre es que cuando se ejecuta desde visual basic la funcion ( que en C++ funciona porque lo he comprobado) me da este error:
“Error 7 en tiempo de ejecución:
Memoria insuficiente”

Estoy un poco agobiada porque no puedo seguir y no tengo ni idea de que puede estar pasando, ¿ se te ocurre algo?¿ en que estoy fallando?
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:35.