难道在Windows2000下获取打印机状态就这么难!!!!!!!(200分)

T

tec.tec

Unregistered / Unconfirmed
GUEST, unregistred user!
很容易在网上找到在98下内嵌汇编用IN/OUT检查打印机是否联机的例子,为什么就找不到在2000/XP下检查打印机机是否联机的例子!!!!!
本人的问题很简单:
在2000下检查打印机的开关开了没有?
 
哎!
看来你是结不了帖了
学习!
要不把分给我,万分感谢!
 
可能无人能回答了,难
 
试试这个,这个不行,换 TPrintDialog试试
var
ps : TPrintSetupDialog;
begin
try
ps := TPrintSetupDialog.create;
except
showmessage('打印机连接不正常!');
exit;
end;
ps.free;
end;
 
怎么没有高手来解决呢
 
以前的帖子找到的:
检查 Printer.Printing 可以知道打印机是否正在打印。
检查 Printer.Printers 可以知道当前系统安装哪些了打印机。
如果用 Quick Report, 检查 QRPrinter.Status 或
QRPrinter.PrinterOK 可知道打印机是否就绪。
 
以前的帖子找的:
要是只判断打印机是否连接正常简单:
var p:tprinter;
try
p:=tprinter.create;
except
showmessage('系统缺省打印机不可用或不存在');
end
 
以前的帖子的:
//从并行端口读取打印机状态
function GetPrinterStatus:byte;
asm
MOV DX,$379;
IN AL,DX;
end;
//获取打印机是否出错
function CheckPrinter:boolean;
var
temp:byte;
begin
temp:=GetPrinterStatus;
Result:=not ( ((temp and $80)=0) //打印机忙
or ((temp and $20)<>0) //打印机缺纸
or ((temp and $10)=0) //打印机未联机
or ((temp and $08)=0) );
//打印机出错;
end;
 
顶部