Delphi32.com - Home!
| Home/News | Downloads | Forums | D32 Magazine | Resources | Info and Facts |  
 
 Changing the port of a printer


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;
    

     



  << Previous Faq     Complete List     Next Faq >>  



 
 Hits/month  2,500,000+ 
 Downloads
 (Since May 2000)
 7,393,709 
 Total Files  6,023 
 Forum msgs  7,670 
 Articles/FAQs  70+/900+ 
Kylix
Tips n Tricks
FAQs
Knowledge Base
Bug Listings
Articles
Books
Newsgroups
Links
Submissions
Testimonials
Advertising
Contact Us
About Us
Search Amazon:
Top Selling Software at Amazon

| Home/News | Downloads | Forums | Resources | Info and Facts | Testimonials |
  Site Search:
 


Comments/Problems: Webmaster@delphi32.com
Copyright © 1998-2006, Delphi32.com. All rights reserved.
Terms of Use