首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

刚写的一段代码,总是异常。哪不对了

2013-04-20 
刚写的一段代码,总是错误。哪不对了?#include windows.h #include winspool.h #include stdio.h int

刚写的一段代码,总是错误。哪不对了?

#include <windows.h> 
#include <winspool.h> 
#include <stdio.h> 

int Print(char* szPrinterName, char* szBuffer)// szBuffer是我们希望发送到打印机的数据缓冲 

    HANDLE hPrinter; //打印机句柄 
    int iLen = strlen(szBuffer);// 发送数据的长度 
    DWORD dwWritten; // 已经向打印机写了多少 

    if(OpenPrinter(szPrinterName, &hPrinter, NULL)) 
    //Open打印机并赋给一个句柄(已经保存在hPrinter) 
        { 
        DOC_INFO_1 Info;//文档信息 
        memset(&Info, 0, sizeof(Info)); 
        Info.pDocName = "My PrintJob"; 
        //文档名(which is shown in the PrintManager) 
        Info.pOutputFile = NULL; 
        //不须要向一个文件写,设为NULL 
        Info.pDatatype = "RAW"; 
        //数据以RAW格式发送(Win9x和WinNT都支持RAW和EMF格式,WinNT还支持TEXT格式 

        if(!StartDocPrinter(hPrinter, 1, (LPBYTE)&Info))//文档开始 
        return 0; 

        // 告诉打印机开始新页 
        StartPagePrinter(hPrinter); 

        // 向打印机写数据 
        if(!WritePrinter(hPrinter, szBuffer, iLen, &dwWritten)) 
           { 
              printf("print error!"); 
              //当发送数据时出现错误 
              //用最后的错误指出发生了什么错误 
           } 
        EndPagePrinter(hPrinter);//告诉打印机已经完成当前页 
        if(!EndDocPrinter(hPrinter))//文档结束 

             printf("document have not end!"); 
         return 0; 
    } 
        ClosePrinter(hPrinter);//关闭打印机 
        return 1; 
    } 
else 
    { 
        return 0; 
    } 



int APIENTRY WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow) 

FILE * fp; 
char buffer[254]; 
int len; 
char * printer="EPSON EPL-6100L Advanced"; 
char * filename="c:\\boot.ini"; 
if((fp=fopen(filename,"r"))==NULL) 

printf("can not open file!"); 
return 0; 
    } 


len=strlen(fp); 
fgets(buffer,len,fp); 
Print(printer,buffer); 
return 0; 


[解决办法]
len=strlen(fp); 

这个要求参数是字符串,你传一个文件句柄进去取长度干嘛。

len = -1 
while(!feof(fp))
   buffer[++len] = fgetc(fp);
[解决办法]
你倒是把错误报告贴上来啊
[解决办法]
Win32下用printf是什么心态?
[解决办法]
引用:
Win32下用printf是什么心态?

呵呵

热点排行