Dev - C++ - Ejecutar codigo c++ desde VB 6.0

 
Vista:

Ejecutar codigo c++ desde VB 6.0

Publicado por Carlos (4 intervenciones) el 04/11/2005 16:17:19
Hola a tod@s:

Tengo un problema muy serio. Por una serie de requerimientos de una aplicacion q tengo q hacer, me he visto obligado a realizar una parte del proceso de mi aplicacion en Visual C++.
Tengo otra parte de este proceso q se hace en VB 6.0.

Pues bien, necesitaria saber como poder realizar la llamada al código c++ (para q realizara su tarea) y el array de datos q tengo en c++ (q es como resultado del proceso) devolverlo a la aplicacion Vb6.
Todo esto deberia de ser transparente para el usuario.

Muchas gracias por la ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ejecutar codigo c++ desde VB 6.0

Publicado por Carlos (4 intervenciones) el 08/11/2005 16:29:55
Ya tengo resuelto el problema q me ocupaba desde hace un par de dias, es mediante una DLL creada desde Visual C++ e invocando las funciones de q se encuentran dentro de esa DLL.
Ahora el problema q me asalta es q no se pasar un String desde C++ (a traves de esa DLL) a VB6

Código VB6:

-- Llamada de la función:
retorno = DLLdevolverNombre(i, MyArrayNombre(i))
*MyArrayNombre(i) es un array de String
-- Declaración de la función:
Public Declare Function DLLdevolverNombre Lib "mutacion2.dll" (ByVal i As Long, ByVal nom As String) As Long

Código C++:

int FAR PASCAL DLLdevolverNombre (int i, char *nom)
{
nom = mi_mutacion.DevolverNombre(i);
return strlen(nom);
}

char* CMutacion::DevolverNombre (int i)
{
return a_mutacion[i].nombre;
}

*a_mutacion[i] es un array de objetos y uno de los elementos de ese objeto es el nombre.
struct dato {
int num1;
int num2;
char nombre[7];
int intensidad;
int fondo;
} a_mutacion[4608];

A ver si me podeis ayudar, muchas gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar