Função PrinterOnline() erro no Windows XP, como substitui-la
23/05/2003
0
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
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
Pablo_lima
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)