如何使用代码添加打印机 ,急用!!!

解决方案 »

  1.   

    使用代码添加打印机,需要调用API函数AddPrinter,它有三个参数:1) 打印机名
    2) 打印质量
    3) 打印机说明以下代码把函数封装起来。你只需要提供出现在Windows Explorer中的打印机名,打印机的接口名(例如LPT1:),驱动器名和打印程序名(通常是winprint)。代码调用了API函数。unit unit_AddPrinter;interfacefunction AddAPrinter(PrinterName, PortName, DriverName, PrintProcessor: string): boolean;implementationuses
    SysUtils,
    WinSpool,
    Windows;function AddAPrinter(PrinterName, PortName, DriverName, PrintProcessor: string): boolean;
    var
    pName: PChar;
    Level: DWORD;
    pPrinter: PPrinterInfo2;
    beginpName := nil;
    Level := 2;
    New(pPrinter);
    pPrinter^.pServerName := nil;
    pPrinter^.pShareName := nil;
    pPrinter^.pComment := nil;
    pPrinter^.pLocation := nil;
    pPrinter^.pDevMode := nil;
    pPrinter^.pSepFile := nil;
    pPrinter^.pDatatype := nil;
    pPrinter^.pParameters := nil;
    pPrinter^.pSecurityDescriptor := nil;
    pPrinter^.Attributes := 0;
    pPrinter^.Priority := 0;
    pPrinter^.DefaultPriority := 0;
    pPrinter^.StartTime := 0;
    pPrinter^.UntilTime := 0;
    pPrinter^.Status := 0;
    pPrinter^.cJobs := 0;
    pPrinter^.AveragePPM :=0;
    pPrinter^.pDevMode := nil;
    pPrinter^.pSepFile := nil;
    pPrinter^.pDatatype := nil;
    pPrinter^.pParameters := nil;
    pPrinter^.pSecurityDescriptor := nil;
    pPrinter^.Attributes := 0;
    pPrinter^.Priority := 0;
    pPrinter^.DefaultPriority := 0;
    pPrinter^.StartTime := 0;
    pPrinter^.UntilTime := 0;
    pPrinter^.Status := 0;
    pPrinter^.cJobs := 0;
    pPrinter^.AveragePPM :=0;