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

时间:2022-08-23 10:58:37

本文实例讲述了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程序设计有所帮助。