VC 如何得到打开word文件总页数 _Application WordApp; //代表WORD程序
Documents docs; //代表一个WORD程序里的所有文档
_Document doc; //代表一个文档
if(!WordApp.CreateDispatch("Word.Application",NULL))//创建一个新的word程序
{
AfxMessageBox("创建ms_word服务失败,请确认是否安装WORD程序");
exit(1);
}
//让用户能够查看自动化的过程
WordApp.SetVisible(true);
//让docs和word程序连接,docs代表word中所有文档
docs=WordApp.GetDocuments();
COleVariant covOptional((long)DISP_E_PARAMNOTFOUND,VT_ERROR);
//用docs来打开一个文档,并将句柄返回给doc
doc=docs.Add(COleVariant(strOpenFileName),covOptional,covOptional,covOptional); 下面怎么写才能得到 总页数
Documents docs; //代表一个WORD程序里的所有文档
_Document doc; //代表一个文档
if(!WordApp.CreateDispatch("Word.Application",NULL))//创建一个新的word程序
{
AfxMessageBox("创建ms_word服务失败,请确认是否安装WORD程序");
exit(1);
}
//让用户能够查看自动化的过程
WordApp.SetVisible(true);
//让docs和word程序连接,docs代表word中所有文档
docs=WordApp.GetDocuments();
COleVariant covOptional((long)DISP_E_PARAMNOTFOUND,VT_ERROR);
//用docs来打开一个文档,并将句柄返回给doc
doc=docs.Add(COleVariant(strOpenFileName),covOptional,covOptional,covOptional); 下面怎么写才能得到 总页数
里面有得到页数的代码
大概代码如下
Range rng;
Selection sSel;
#define wdFieldPage 33
#define wdFieldNumPages 26
COleVariant vwdFieldPage(long(wdFieldPage)),vwdFieldNumPages(long(wdFieldNumPages));
Cell cel;
Window wActive;
View vActive;
HeaderFooter head;
Fields fds;
fds = sSel.GetFields();
rng = sSel.GetRange();
fds.Add(rng,vwdFieldNumPages,vOne,vOne);
fds = sSel.GetFields();
rng = sSel.GetRange();
fds.Add(rng,vwdFieldPage,vOne,vOne);
wActive = sApp.GetActiveWindow();
vActive = wActive.GetView();