Hola, yo hago asi los programas de win32 (core en C con una dll y gui y chorraditas en vb)
Pero para que la comunicacion sea bidireccional y puedas pasar todo tipo de datos (arrays,punteros,etc..) y que el c pueda redimensionar,crear y borrar variables tienes que hacer ingenieria inversa y ver como almacena internamente las variables el visual basic.
Luego en tu rutina de C has de usar las funciones que exporta MSVBVM60.dll (para visual basic 6) para devolver los valores al visual basic. Ya veras que estan todas las funciones del vb (redim,mid,etc...) disponibles para usarlas desde C, con lo que es muy facil pasar todo tipo de datos.
Resumiendo has de hacer dos cosas:
Ver como funciona internamente las variables de vb y hacer unas pequeñas funciones que pasen datos de vb a c y vicebersa.
Usar MSVBVMx0.dll para manipular y devolver las variables al vb.
Yo escribi hace años un articulo que explicaba como hacerlo, pero no se si vale la pena el esfuerzo. Ahora creo que es mejor hacerlo todo en C/C++.
Salu2
se puede pero no lo recomiendo
(Puntos:2, Informativo)( http://www.micro-electronica.com | Última bitácora: Domingo, 09 Enero de 2005, 23:44h )
Pero para que la comunicacion sea bidireccional y puedas pasar todo tipo de datos (arrays,punteros,etc..) y que el c pueda redimensionar,crear y borrar variables tienes que hacer ingenieria inversa y ver como almacena internamente las variables el visual basic.
Luego en tu rutina de C has de usar las funciones que exporta MSVBVM60.dll (para visual basic 6) para devolver los valores al visual basic.
Ya veras que estan todas las funciones del vb (redim,mid,etc...) disponibles para usarlas desde C, con lo que es muy facil pasar todo tipo de datos.
Resumiendo has de hacer dos cosas:
Ver como funciona internamente las variables de vb y hacer unas pequeñas funciones que pasen datos de vb a c y vicebersa.
Usar MSVBVMx0.dll para manipular y devolver las variables al vb.
Yo escribi hace años un articulo que explicaba como hacerlo, pero no se si vale la pena el esfuerzo. Ahora creo que es mejor hacerlo todo en C/C++.
Salu2
Eid0