Estimado(a) sweetheart_lovebr, Boa tarde. Sem passar pela dll, você teria que saber a string de comando que abre o caixa. Tipo: 10 E1 Z3 S1 12 33 S (sei lá o que) e depois convertê-la e passar pra porta onde o caixa está conectado ! (falei besteira?)
Porta do CAIXA: COM1 String (comando) que abre o caixa: 10 E1 Z3 S1 12 33 S (lê aí o manuel do caixa) procedure AbrirCaixa; var tfCaixa : TextFile; sComando, sCodigo : String; begin sCodigo := '10 E1 Z3 S1 12 33 S'; sComando := Converte(sCodigo); Assignfile(tfCaixa,'COM1'); //Porta: COM1, COM4, etc e tals Rewrite(tfCaixa); Writeln(tfCaixa,sComando); CloseFile(tfCaixa); end; function Converte(sCodigo : String): String; var sRetorno : String; nI : integer; cByte : byte; begin sRetorno := ''; for nI := 1 to GetTokenCount(sCodigo,' ') do try cByte := StrToInt(GetToken(sCodigo,' ',nI)); sRetorno := sRetorno + chr(cByte); except break; end; Result := sRetorno; end; // hehe..funcao que não acaba mais.. function GetToken(sCadeia, sSeparador: String; iToken: Integer): String; var iPosicao: Integer; begin while iToken > 1 do begin Delete(sCadeia, 1, Pos(sSeparador,sCadeia) + Length(sSeparador) - 1); Dec(iToken); end; iPosicao:= Pos(sSeparador, sCadeia); if iPosicao= 0 then Result:= sCadeia else Result:= Copy(sCadeia, 1, iPosicao- 1); end; function GetTokenCount(Cadeia, Separador : String):integer; var Posicao:integer; begin Posicao:= Pos(Separador,Cadeia); Result := 1; if Cadeia <> '' then begin if Posicao<> 0 then while Posicao <> 0 do begin Delete(Cadeia,1,Posicao); Posicao:= Pos(Separador, Cadeia); Inc (Result); end; end else Result := 0; end; Um estimado colega me passou uma vez, nunca testei mas taí a oportunidade. Não se esqueça do feedback. Saudações. --- []'s Alexandre msn: [EMAIL PROTECTED] -----Mensagem original----- De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de sweetheart_lovebr Enviada em: terça-feira, 23 de agosto de 2005 15:08 Para: delphi-br@yahoogrupos.com.br Assunto: [delphi-br] Abrir Gaveta de Dinheiro Como faço para abrir uma gaveta de dinheiro que está ligada diretamente ao computador sem passar pela impressora usando a dll da bematech? -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html