Galera to usando a função abaixo para testar se a impressora esta on line antes de enviar o relatório para impressão.
Mas esta dando erro de Acess Violation na linha Int $17; Alguém teria uma outra função que funcione ? Function PrinterOnLine : Boolean; Const PrnStInt : Byte = $17; StRq : Byte = $02; PrnNum : Word = 0; { 0 para LPT1, 1 para LPT2, etc. } Var nResult : byte; Begin Asm mov ah,StRq; mov dx,PrnNum; Int $17; mov nResult,ah; end; PrinterOnLine := (nResult and $80) = $80; end; Utilize a função assim: procedure TForm1.Button1Click(Sender: TObject); begin If not PrinterOnLine then ShowMessage('Verifique a Impressora!'); end; _ ___________________________________ _ / )| |( \ / / | Eduardo de Almeida Silva | \ \ _( (_ | _ [EMAIL PROTECTED] _ | _) )_ (((\ \)|_/ )___________________________( \_|(/ /))) (\\\\ \_/ / \ \_/ ////) \ / \ / \ _/ \_ / / / \ \ -- <<<<< 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