La Web del Programador: Comunidad de Programadores
 
    Pregunta:  32898 - NECESITO SCRIPT / API / DLL PARA LEER DATOS DESDE COM1/COM2
Autor:  Rodrigo Rei.
Ocupando PowerBuilder necesito hacer lectura de datos desde el puerto Serial (COM1 o COM2), seguramente para realizar esta operación hay alguna API librería DLL por favor indicarmela

Eternamente Agradecido

Rodrigo.

  Respuesta:  Milson Cardona
Puedes controlar un puerto serie con el objeto OLE
'MSCOMM32.OCX'

para hacerlo debes seguir los siguientes pasos
1-conseguir el objeto mscomm32.ocx
2-pegarlo en la carpeta winnt \ system32
3-registrar el archivo en el SO así: en una ventana de SO correr " /> regsvr32 mscomm32.ocx
4- en una ventana de PB pegar un objeto OLE y le asocias el objeto que acabas de registrar.

5-llamalo ole_1 y pegas el siguiente ejemplo en cualquier evento o boton de la ventana, y listo.

NOTA funciona bien con NT y windows 95, pero estoy teniendo algún problemita con windows 2000

Ejemplo:

// Usar COM2
ole_1.object.CommPort = 2

// 9600 baudios, sin paridad, 8 bits de datos y 1 bit de parada.
ole_1.object.Settings = 9600,N,8,1

// Indicar al control que lea todo el búfer al usar Input.
ole_1.object.InputLen = 0

//Abrir el puerto
ole_1.object.PortOpen = True


En el Evento 'OnComm' del 'ole_1' pega las siguientes lineas

ANY S_Entrada
// Recoge datos de entrada
S_Entrada = ole_1.object.Input

Espero que mi respuesta te sirva de ayuda.

Saludos