Função PrinterOnline() erro no Windows XP, como substitui-la

23/05/2003

1

Bom Dia companheiros...


Alguém sabe de alguma função parecida com a PrinterOnline() que eu possa utiliza-la para testar se a impressora está ligada, antes de iniciar a impressão?

O problema está se dando porque estou tentando colocar minha aplicaçào para rodar num sistema operacional WIndows XP e está apresentando erro.

Só preciso fazer o teste para ver se a impressora está ligada antes de imprimir...


Eu li uma matéria que dizia que esta função nao funciona no windows XP, por isso preciso de outra com o mesmo objetivo de testa se a impressora está ativa antes de imprimir para colocar no meu sistema.



Segue abaixo a função printeronline() se alguém quiser dar uma olhada, me parece que tem codigos assembler na mesma, por isso apresenta erros no windows XP

While not PrinterOnline() do
begin
MsgBox(´Verifique a Impressora!´,´ATENÇÃO´);
end;

Function PrinterOnLine : Boolean;
Const
PrnStInt : Byte = $17;
StRq : Byte = $02;
PrnNum : Word = 0; { 0 para LPT1, 1 para LPT2, etc. }
Var
nResult : byte;
Begin (* PrinterOnLine*)
Asm
mov ah,StRq;
mov dx,PrnNum;
Int $17;
mov nResult,ah;
end;
PrinterOnLine := (nResult and $80) = $80;
End;



Aguardo um retorno e agradeço desde já quem puder me ajudar....

Um abraço a todos...


Pablo
Marília/SP


Responder
×
+1 DevUP
Acesso diário, +1 DevUP
Parabéns, você está investindo na sua carreira