我用vc编写的程序操作word,程序执行若干次后,打开word,在其编辑区随便按下哪个键盘键,word就自动关闭,不知哪位高手能解决这个问题。下面是相关代码: _Application oWordApp;
if (!oWordApp.CreateDispatch("Word.Application", NULL))
{
AfxMessageBox("CreateDispatch failed.", MB_OK | MB_SETFOREGROUND);
return;
}
Documents docs;
_Document doc;
Range range; Books books;
Book book;
oWordApp.SetVisible(true);
docs=oWordApp.GetDocuments();
COleVariant covOptional((long)DISP_E_PARAMNOTFOUND,VT_ERROR); CString AppPath,reportPath;
AppPath=GetFilePath();
reportPath=AppPath+"ReportTemplat\\reportTemplat.dot";
COleVariant dot(reportPath);
doc=docs.Add(&dot,&covOptional,&covOptional,&covOptional);
books=doc.GetBooks();
//定位插入图片
InlineShapes m_WordInlineShapes;
InlineShape m_WordInlineShape;
Selection m_WordSelection;
m_WordSelection=oWordApp.GetSelection();
m_WordInlineShapes=m_WordSelection.GetInlineShapes();
COleVariant tempDate("_analyseDatetime");
book=books.Item(&tempDate);
range=book.GetRange();
range.SetText(m_date_analyse); COleVariant vTrue((short)TRUE),vFalse((short)FALSE);
CString graphPath;
COleVariant temp3("_volumgraph");
book=books.Item(&temp3);
book.Select();
//保存报告
doc.SaveAs(COleVariant(AppPath+"\\ReportTemplat\\report.doc"),
COleVariant((short)0),
vFalse, COleVariant(""), vTrue, COleVariant(""),
vFalse, vFalse, vFalse, vFalse, vFalse, vFalse,vFalse, vFalse, vFalse, vFalse); EndWaitCursor();
oWordApp.m_bAutoRelease=true;
doc.ReleaseDispatch();
docs.ReleaseDispatch();
m_WordSelection.ReleaseDispatch();
if (!oWordApp.CreateDispatch("Word.Application", NULL))
{
AfxMessageBox("CreateDispatch failed.", MB_OK | MB_SETFOREGROUND);
return;
}
Documents docs;
_Document doc;
Range range; Books books;
Book book;
oWordApp.SetVisible(true);
docs=oWordApp.GetDocuments();
COleVariant covOptional((long)DISP_E_PARAMNOTFOUND,VT_ERROR); CString AppPath,reportPath;
AppPath=GetFilePath();
reportPath=AppPath+"ReportTemplat\\reportTemplat.dot";
COleVariant dot(reportPath);
doc=docs.Add(&dot,&covOptional,&covOptional,&covOptional);
books=doc.GetBooks();
//定位插入图片
InlineShapes m_WordInlineShapes;
InlineShape m_WordInlineShape;
Selection m_WordSelection;
m_WordSelection=oWordApp.GetSelection();
m_WordInlineShapes=m_WordSelection.GetInlineShapes();
COleVariant tempDate("_analyseDatetime");
book=books.Item(&tempDate);
range=book.GetRange();
range.SetText(m_date_analyse); COleVariant vTrue((short)TRUE),vFalse((short)FALSE);
CString graphPath;
COleVariant temp3("_volumgraph");
book=books.Item(&temp3);
book.Select();
//保存报告
doc.SaveAs(COleVariant(AppPath+"\\ReportTemplat\\report.doc"),
COleVariant((short)0),
vFalse, COleVariant(""), vTrue, COleVariant(""),
vFalse, vFalse, vFalse, vFalse, vFalse, vFalse,vFalse, vFalse, vFalse, vFalse); EndWaitCursor();
oWordApp.m_bAutoRelease=true;
doc.ReleaseDispatch();
docs.ReleaseDispatch();
m_WordSelection.ReleaseDispatch();
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货