现在我的程序要自动控制打印机,以前都没接触过这方面,请各位高手指点下.

解决方案 »

  1.   

    char szprinter[80];
    char *szDevice,*szDriver,*szOutput;
    HDC hdcprint; 
    static DOCINFO di={sizeof(DOCINFO),"printer",NULL}; 
    ::GetProfileString("windows","device","",szprinter,80); 
    szDevice=strtok(szprinter,",");
    szDriver=strtok(NULL,",");
    szOutput=strtok(NULL,",");
    //以上是取得系统默认打印机的信息         if((hdcprint=CreateDC(szDriver,szDevice,szOutput,NULL))!=0)
    {
                    StartPage(hdcprint); 
    SaveDC(hdcprint);         CDC* pDC = CDC::FromHandle(hdcprint);                
                    //你的打印程序
                      RestoreDC(hdcprint,-1); //恢复打印机设备句柄
    EndPage(hdcprint); //打印机停纸,停止打印
    EndDoc(hdcprint); //结束一个打印作业
            }