Problema: Faço impressão direta para a porta da impressora e gostaria testar se a impressora está pronta antes de enviar o relatório. Isto é possível em Delphi? Solução: Usando instruções Assembly podemos fazer isto. A função abaixo retorna true se a porta informada está pronta. Os possíveis parâmetros para esta função são: 1 - para LPT1 2 - para LPT2 3 - para LPT3 4 - para LPT4 function tbTestLPT(Port: byte): boolean; var Pto : Word; Rdo : byte; begin Pto := Port -1; asm MOV DX,Pto MOV AX,$0200 {AH := $02 : Leer el estado de la impresora} INT $17 MOV Rdo,AH {Guarda el estado en AL} end; Result := Rdo = 144; end;
O conteúdo desta página pode ajudar alguém? Compartilhe!