怎么样用Delphi控制Windows的默认打印机。(200分)

  • 主题发起人 主题发起人 田伯光
  • 开始时间 开始时间

田伯光

Unregistered / Unconfirmed
GUEST, unregistred user!
一个程序打印不同的数据。
有时要在激光打印机上打印,有时要在票据打印机上打印,
想用网络打印机+本地打印机器打印
怎么样才能做到控制功能?
 
设置默认打印机。
procedure TForm1.FormCreate(Sender: TObject);
begin
cb1.items.assign(printer.printers);
end;

procedure TForm1.Button1Click(Sender: TObject);
var LPrinter:string;
PrinIniFile:Tinifile;
LStr:string;
begin
LStr:=printer.Printers[cb1.itemindex];
delete(Lstr,pos(' on ',Lstr),Length(LStr));
PrinIniFile:=TIniFile.Create('WIN.ini');
try
LPrinter:=PrinIniFile.ReadString('Devices',LStr,'');
PrinIniFile.writestring('windows','device',LStr+','+LPrinter);
finally
PrinIniFile.free;
end;
end;
 
你可以用Printer.PrinterIndex来控制打印机。首先,你取得所有的打印机,找出哪台是
激光打印机,哪台是针式打印机,然后,根据各PrinterIndex不同,在打印时自己作出选择
就可以用不同的打印机打不同的内容了。也不用改系统的默认打印机。
 
多人接受答案了。
 
后退
顶部