| |
| Changing the printer port in code. |
 |
How can I change the port a given printer will use in code?
You can use the SetPrinter method of TPrinter to change the
port. The following example demonstrates changing the port
to print to a file. Example: uses Printers; {$IFNDEF WIN32}
const MAX_PATH = 44;
{$ENDIF} procedure TForm .Button Click(Sender: TObject);
var
pDevice : pChar;
pDriver : pChar;
pPort : pChar;
hDMode : THandle;
PDMode : PDEVMODE;
begin
if PrintDialog .Execute then begin
GetMem(pDevice, cchDeviceName);
GetMem(pDriver, MAX_PATH);
GetMem(pPort, MAX_PATH);
Printer.GetPrinter(pDevice, pDriver, pPort, hDMode);
Printer.SetPrinter(pDevice, PDriver, 'FILE:', hDMode);
FreeMem(pDevice, cchDeviceName);
FreeMem(pDriver, MAX_PATH);
FreeMem(pPort, MAX_PATH);
Printer.BeginDoc;
Printer.Canvas.TextOut( 00, 00, 'Delphi Is RAD!');
Printer.EndDoc;
end;
end; 7/ 6/98 4:3 :28 PM
|
|
| Hits/month |
2,500,000+ |
Downloads (Since May 2000) |
7,393,709 |
| Total Files |
6,023 |
| Forum msgs |
7,670 |
| Articles/FAQs |
70+/900+ |
Top Selling Software at Amazon
|