本人在用quickreport打印时,发现当打印机存在但无法正常连接时,print方法执行极慢,
有没有办法,在打印之前,先检测一下存在的打印机状态?
有没有办法,在打印之前,先检测一下存在的打印机状态?
解决方案 »
- 谁能够详细说明adoconnection socketconnection dcomconnection的比较?
- BDS 2006 update 2 crack!
- 大虾,救命呀!!怎么把本机上的所有数据库名及其下的各表名显示到treeview中,有代码50分以上
- DatabaseDesktop中建表的中文输入问题
- 访问数据的问题
- 谁能用Delphi屏蔽Win2000的Alt+Ctrl+Del!分数任你要!!!(UP有分)
- MDI主窗体客户区为什么与普通窗体的有不同?
- 有关在query中插入sql语句的问题 ,高分赠!
- 请问怎样在delphi中得到QQ网友是否在线?
- 好久没贴过了,送点分。。。
- 熟悉Delphi操作Word的来看看,我这里到底是问题出在那里?
- 怎样在软件中实现提供给用户的设计界面?急啊,请高手帮忙,100份相送。
//从并行端口读取打印机状态
function GetPrinterStatus: byte;
asm
MOV DX,$378;
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;
begin
ComboBox1.Clear;
ComboBox1.Items.Assign(Printer.Printers);
if ComboBox1.Items.CommaText='' then
Messagedlg('你需要安装打印机才能打印!',mtError,[mbOk],0);
else
Form1.Print;
end;