因工作上的原因,搜集了一些这方面的资料。深感搜集到这些资料的不易,因此拿出来和大家分享,希望能帮到大家一点点。
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打印txt:
调用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);