C/Visual C - envio de arreglo

 
Vista:

envio de arreglo

Publicado por patrick (1 intervención) el 09/02/2004 00:55:59
He construido un componente en VC++, el cual recibe datos desde una aplicacion en Vbasic, el enviar variables simples me ha resultado facil, pero no puedo enviar un arreglo desde VBasic, tal vez alguno de Uds sepa como definir las variables en ambos lados, para poder realizar el envio satisfactoriamente....gracias
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:envio de arreglo

Publicado por biT (17 intervenciones) el 10/02/2004 06:29:21
nunca he hecho algo asi, pero tampoco creo que este dificil.
un arreglo solo es una continucion de bytes (bueno todo es eso)
solo tienes que saber cuantos bytes tiene el arreglo y le pasar el puntero del primer byte del arreglo, asi el otro programa sabe donde empieza y donde termina.
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

RE:envio de arreglo

Publicado por Rafael (13 intervenciones) el 12/02/2004 01:23:06
Veo que tambien te has encontrado con el mismo problema para
interfacearte entre VC++ (Entorno de programacion decente, con un lenguaje decente y Visual Basic (un entorno de programacion decente con un lenguaje de programacion de lo peor que hay).

Tu problema como tal no tiene solucion, una por que Basic no maneja punteros. Lo que yo te tenido que hacer es pasar un string
con los datos del arreglo. Ejm {1,5,20} lo pasas como
"1,5,20" y luego lo conviertes
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

RE:oh arreglo de programa a programa

Publicado por biT (17 intervenciones) el 12/02/2004 06:46:24
¿ puedes dar mas opciones ?si es un programa tratando de enviar un array a otro programa, entonces nunca funcionara a menos que los dos programas estes corriendo en en el mismo espacio de memoria.
en mi primer most mio, pense que era de DLL a programa, y en ese caso seria diferente ya que la DLL es cargada en el espacio de memoria del programa.
para resolver esto puedes crear un espacio de memoria con MMF (memory mapped files)
si es dos instancias del mismo programa quizas lo puedas hacer con solo poner el array en un segmento compartido. si son dos programas distintos con MMF u otra forma de comunicacion.

biT
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