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 怎么获取下面的: glove_word2id.json和 glove_numpy.npy 这两个文件
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler
  • ¥15 oracle集群安装出bug