我有两台打印机1和2,默认打印机为2;
我现在打印要用1号打印机,要在程序中设置, 以下操作不知错在哪里? Printer.GetPrinter (Device, Driver, Port, hDeviceMode); //得到打印机列表
Printer.PrinterIndex := Printer.Printers.IndexOf(1号打印名称); //
if not WinSpool.OpenPrinter(@Device, hPrinter, nil) then exit;
GetPrinter(hPrinter, 2, nil,0,@pcbNeed);
GetMem(Buffer, pcbNeed);
if GetPrinter(hPrinter, 2, Buffer, pcbNeed, @pcbNeed) then
begin
if TPrinterInfo2A(Buffer^).pDriverName <> nil then
Edit1.text := TPrinterInfo2A(Buffer^).pDriverName;1号打印的类型
end; Printer.BeginDoc;
Printer.Canvas.TextOut(1002,250,'xccb');//这里出错了
Printer.EndDoc;
end;请高手帮帮忙,以上语句哪里有问题,或者还要加什么语句?
我现在打印要用1号打印机,要在程序中设置, 以下操作不知错在哪里? Printer.GetPrinter (Device, Driver, Port, hDeviceMode); //得到打印机列表
Printer.PrinterIndex := Printer.Printers.IndexOf(1号打印名称); //
if not WinSpool.OpenPrinter(@Device, hPrinter, nil) then exit;
GetPrinter(hPrinter, 2, nil,0,@pcbNeed);
GetMem(Buffer, pcbNeed);
if GetPrinter(hPrinter, 2, Buffer, pcbNeed, @pcbNeed) then
begin
if TPrinterInfo2A(Buffer^).pDriverName <> nil then
Edit1.text := TPrinterInfo2A(Buffer^).pDriverName;1号打印的类型
end; Printer.BeginDoc;
Printer.Canvas.TextOut(1002,250,'xccb');//这里出错了
Printer.EndDoc;
end;请高手帮帮忙,以上语句哪里有问题,或者还要加什么语句?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货