//取得当前打印机句柄 function TfrmPrint.GetCurrentPrinterHandle: THandle; var Device, Driver, Port : array[0..255] of char; hDeviceMode: THandle; begin Printer.GetPrinter(Device, Driver, Port, hDeviceMode); //得到当前打印机名称 if not OpenPrinter(@Device, Result, nil) then //取得打印机句柄 RaiseLastWin32Error; end;