La Web del Programador: Comunidad de Programadores
 
    Pregunta:  9941 - OBTENER LOS BYTES DE UNA VARIABLE
Autor:  Serafín Orillán
Estoy programando una aplicación en VB 6.0 que se comunica con el puerto serie, y necesito mandar una serie de datos byte a byte. Utilizando el control MSComm sólo puedo enviar cadenas, pero a la hora de enviar números enteros (por ejemplo), el VB primero lo transforma directamente a una cadena y luego lo manda; pero yo lo que quiero es enviar los 2 bytes que representan al número entero como si fueran dos caracteres.

Por ejemplo:

si quiero mandar el número 500, VB transforma este número entero en la cadena "500", y manda estos 3 caracteres (que, por otra parte, son 6 bytes en Unicode). Yo, sin embargo, querría enviar por la línea serie los bytes &H01 y &HF4, que son los 2 bytes que reepresnetan al 500 como número entero.

¿Cómo puedo hacerlo?

Gracias por adelantado.

  Respuesta:  Alexander Zuluaga
Hombre serafín, el problema con visual es que si usas las funciones que trae para manejar el puerto, lo tienes que hacer a su antojo.

Te recomiendo que busques en internet el archivo inpout32.dll o inpout16.dll, estos archivos traen funciones para acceder directamente al puerto y enviar los valores que quieras, así como para recuperarlos.

las funciones que trae son:

variable = inp(dirección_del_puerto)
out

Las dos te permiten obtener y enviar los valores del puerto que desees.

  Respuesta:  Alexander Zuluaga
Hombre serafín, el problema con visual es que si usas las funciones que trae para manejar el puerto, lo tienes que hacer a su antojo.

Te recomiendo que busques en internet el archivo inpout32.dll o inpout16.dll, estos archivos traen funciones para acceder directamente al puerto y enviar los valores que quieras, así como para recuperarlos.

las funciones que trae son:

variable = inp(dirección_del_puerto)
out

Las dos te permiten obtener y enviar los valores del puerto que desees.