VC打印word,excel文本文件的方法

本文实例讲述了VC里打印word,excel文本文件的方法。分享给大家供大家参考。具体实现方法如下:

1. Vc打印Excel:

关于VC如何打开一个excel,这方面的资料很多了,一般用的是OLE Avtive Control/假设当你打开了一个excel文件,并获得了它的
workbook的handle,相应的接口为:

COleVariant covTrue((short)true);

COleVariant covFalse((short)FALSE);

COleVariant covOptional( (long)DISP_E_PARAMNOTFOUND, VT_ERROR);

_workbook objbook;

.....

objBook.PrintOut( covOptional,

    covOptional,

    COleVariant(long(1)),     //打印份数

    covFalse,

    covOptional,

    covOptional,

    covOptional

    ,covOptional

);

其他的参数的具体含义读者可以参见msdn。

2. VC打印word

Word的打印接口是:

_Document::PrintOut( covFalse, 

  covOptional, 

  covOptional, 

  covOptional, 

  covOptional, 

  covOptional, 

  covOptional, 

  COleVariant((long)1),  //打印页数

  covOptional, 

  covOptional, 

  covOptional, 

  covOptional, 

  covOptional, 

  covOptional, 

  covOptional, 

  covOptional, 

  covOptional, 

  covOptional

);

参数的含义可参见msdn。

3. VC打印Excel:

调用shell的print函数:

ShellExecute(NULL,"print","c://temp//test.txt",NULL,NULL,SW_HIDE);

需要注意的是,机器上已经装了打印机。打印输出会送到默认打印机。另外,shellExcute还可以用来打印excel和word,替换相应的文件名就可以了。
ShellExecute(NULL,"print","c://temp//test.xls",NULL,NULL,SW_HIDE);

ShellExecute(NULL,"print","c://temp//test.doc",NULL,NULL,SW_HIDE);

希望本文所述对大家的VC程序设计有所帮助。