我要在DELPHI7修改打印机首选项主要修改成双面打印和份数,如何实现最好有完整的例子。

解决方案 »

  1.   

    http://topic.csdn.net/t/20030516/10/1791502.html
      

  2.   

    我是想在delphi调用打印机首选项呀
      

  3.   


    Delphi打印机设置
    请注意其中两条判断语句,这说明有时候仅仅凭getprinters并不能保证信息的正确,还需要WIN.INI的帮助。
    uses printers;
    {$IFNDEF WIN32}
    const MAX_PATH = 144;
    {ENDIF}
    procedure TForm1.Button1Click(Sender : TObject);
    var 
    pDevice : pChar;
    pDriver : pChar;
    pPort : pChar;
    hDMode : THandle;
    begin
    if PrintDialog1.Execute then begin
    GetMem(pDevice,cchDeviceName);
    GetMem(pDriver,MAX_PATH);
    GetMem(pPort,MAX_PATH);
    Printer.GetPrinter(pDevice,pDriver,pPort,hDMode);
    if lStrLen(pDriver) = 0 then begin
    GetProfileString('Devices',pDevice,'',pDriver,MAX_PATH);
    pDriver[pos(',',pDriver) - 1] := #0;
    end;
    if lStrLen(pPort) = 0 then begin
    GetProfileString('Devices',pDevice,'',pPort,MAX_PATH);
    lStrCpy(pPort,@pPort[lStrLen(pPort) + 2]);
    end;
    FreeMem(pDevice,cchDeviceName);
    FreeMem(pDriver,MAX_PATH);
    FreeMem(pPort,MAX_PATH);
    end;
    end;
      

  4.   

    我必须设置系统打印机首选项,因为我是在delphi下打印文档的
      

  5.   

    Delphi(Pascal) code
    procedure TForm1.Button1Click(Sender : TObject)
    beginend;