Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: oriolbetriu en 30 Noviembre 2011, 19:22 pm



Título: DLL visual / c
Publicado por: oriolbetriu en 30 Noviembre 2011, 19:22 pm
Hola!

  He hecho un pequeño programa con una interfaz en visual.

   El programa no tiene mucho misterio cargo los datos de unos vehiculos, leo un doc.txt en c, el ejecutable esta en visual y puedo consultar las caracteristicas de cada vehiculo con formularios de visual fotos etc.


   Problema:

   Tengo un vector de vehiculos[cont], envio el valor cont desde visual sin ningun problema, debugando en visual veo que he asignado el valor a cont correcto.

   Cuando debugo desde C veo que el valor que recibo en cont(C) ya no es el que tenia en visual?

   No se porque causa el programa asigna un valor aleatorio al llegar a C

   Creo que las variables estan bien declaradas en las funciones respectivas:

parte C

void FAR PASCAL DLLdame_vehiculo (int num, char *parole_a, char *parole_b, char *parole_c,int *an, int *peso, int *cil, int *pot, int *vmax, float *depo, float *rcomp, float *cons, float *rppot)
{
   l.dame_vehiculo (num, v);
   strcpy (parole_a, v.dame_marca ());
   strcpy (parole_b, v.dame_modelo());
   *an = v.dame_anho ();
   *peso = v.dame_peso ();
   *cil = v.dame_cilindrada ();


modulo visual

Public Declare Function DLLdame_vehiculo _
    Lib "potencia.dll" _
    (ByVal num As Integer, ByVal parole_a As String, ByVal parole_b As String, ByVal parole_c As String, ByRef an As Integer, ByRef peso As Integer, ByRef cil As Integer, ByRef pot As Integer, ByRef vmax As Integer, ByRef depo As Single, ByRef rcomp As Single, ByRef cons As Single, ByRef rppot As Single)
   
 

   Cualquier consejo que me podais dar sera de gran ayuda,

Oriol

-)  Gracias por vuestra ayuda y vuestro tiempo!!!!!