Stand_Alone_Complex 2014-01-13 15:30 采纳率: 0%
浏览 2300

VC如何在线程中读取word文档内容?

创建了一个对话框的MFC工程
//全局变量
Documents docs;
Selection selection;
_Document doc;
_Application wordApp;
//***************************

CString *pstr,path,str;
int i;

path="C:\\Documents and Settings\\Administrator\\桌面\\新建文件夹\\1.doc";//文件目录

LPDISPATCH pd;
COleVariant vTrue((short)TRUE),vFalse((short)FALSE),vOpt((long)DISP_E_PARAMNOTFOUND,VT_ERROR),vZ((short)0);
if(AfxOleInit()
&& wordApp.CreateDispatch("Word.Application",NULL))
{

    wordApp.SetVisible(1);
    docs.AttachDispatch(wordApp.GetDocuments());
    AfxMessageBox("here");
    pd=docs.Open(COleVariant(path),vFalse,vTrue,vFalse,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vZ,vOpt,vOpt);

    doc.AttachDispatch(pd);
    //AfxMessageBox("here");
    selection=wordApp.GetSelection();
    selection.GetSections();
    selection.WholeStory();
    content=selection.GetText();
    AfxMessageBox(content);
    selection.ReleaseDispatch();

    doc.Close(vOpt,vOpt,vOpt);
    doc.ReleaseDispatch();
    wordApp.Quit(vFalse,vOpt,vOpt);
    wordApp.ReleaseDispatch();
}

//以上代码在主程序中运行正常,读出了word文档的内容
//但是放在由AfxBeginThread开启的线程中就总在docs.Open这一步失败
//显示:unhandled exception in WordReader.exe (KERNEL32.dll) 0xE06D7363 Micsoft C++ Exception
//这是为何???

  • 写回答

2条回答 默认 最新

  • 12guiqi 2014-01-14 01:35
    关注

    缺少相应的头文件,你可以参考下excel类的。。。

    评论

报告相同问题?

悬赏问题

  • ¥15 MCNP里如何定义多个源?
  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 请问这个是什么意思?
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏