Mandar cadena por puerto COM

Post Reply
User avatar
acuellar
Posts: 1312
Joined: Tue Oct 28, 2008 6:26 pm
Location: Santa Cruz-Bolivia

Mandar cadena por puerto COM

Post by acuellar »

Hola amigos

como hago para mandar una cadena por el puerto COM.
En Clipper lo tengo asi:

Code: Select all

  Set Print to COM2
  Set Device To Print
  L=L+1
  @l,01 Say Chr(5)
  @l,02 Say Chr(2)
  @l,03 Say Tran(Date(),' ')
  @l,12 Say Hor+':00'
  @l,21 Say Trans(VInt,'####')
  @l,26 Say Dura
  @l,40 Say Trans(MTar,'######.##')
  @l,50 Say CTel
  @l,71 Say VDes
  @l,76 Say Chr(3)
  Set Device to Screen
 
Como se hace con Fivewin?

Gracias por la ayuda

Saludos

Adhemar
Saludos,

Adhemar C.
User avatar
acuellar
Posts: 1312
Joined: Tue Oct 28, 2008 6:26 pm
Location: Santa Cruz-Bolivia

Re: Mandar cadena por puerto COM

Post by acuellar »

Amigos

Alguna ayudita.

Gracias

Saludos

Adhemar
Saludos,

Adhemar C.
groiss
Posts: 206
Joined: Tue Sep 01, 2009 7:55 am
Location: Plasencia - ESPAÑA

Re: Mandar cadena por puerto COM

Post by groiss »

Te adjunto un fragmento de un programilla bastante antiguo, que usaba un modem para marcar el número de teléfono, a petición del usuario:

Code: Select all

function lInitModem(variable)
   local cDcb, nError, nBytes
   variable = OpenComm( "COM4:", 1024, 128 )
   if ! BuildCommDcb( "COM4:2400,n,8,1", @cDcb )
      nError = GetCommError( variable )
      MsgStop( "Error inicialozando modem!" )
      return .f.
   endif
   if ! SetCommState( cDcb )
      nError = GetCommError( variable )
      MsgStop( "Error inicializando modem!" )
      return .f.
   endif
return .t.

function DialNumber( cNumber )
static initmodem:=.f.,ncomm:=0,enlinea:=.f.
local nBytes :=0
if !initmodem
    initmodem:=linitmodem(@ncomm)
else
    if !enlinea
        nbytes:=WriteComm( nComm, "ATDT "+AllTrim( cNumber ) + Chr( 13 ) )
        if nBytes < 0
              MsgStop( "Modem error: " + Str( GetCommError( nComm ) ) )
              return nil
        endif
        enlinea:=.t.
    else
       nBytes := WriteComm( nComm, "ATH"+chr(13) )
       if nBytes < 0
          MsgStop( "Modem error: " + Str( GetCommError( nComm ) ) )
          return nil
       endif
       enlinea:=.f.
    endif
endif
return nil
 
Espero que le puedas sacar provecho.
Un saludo
User avatar
acuellar
Posts: 1312
Joined: Tue Oct 28, 2008 6:26 pm
Location: Santa Cruz-Bolivia

Re: Mandar cadena por puerto COM

Post by acuellar »

Gracias Grois

Buscaré la forma de como aplicarlo.

Saludos

Adhemar
Saludos,

Adhemar C.
Post Reply