如何用MFC打开word!急

解决方案 »

  1.   

    CreateProcess、word的自动化接口啥的,都行啊
      

  2.   

    你这个问题是啥意思啊?
    如果仅仅只是MFC打开word文档那就简单了,网上有一堆的资料。
    我想你的意思是肯定是说 打开word,读取它的内容到你MFC中来,这样理解这个问题更有价值一点,你去搜下“MFC操作word方法”,用文档类实现的,也是有demo的.
      

  3.   

    //   功能:    将txt文件中的数据读取到列表控件中。      
    void CDialogModal::OnBnClickedBtnOpen()
    {
    // TODO: 在此添加控件通知处理程序代码
    CString m_strFileName;
        CFileDialog fileDlg(TRUE);
    fileDlg.m_ofn.lpstrFilter = _T("文本文件 (*.txt)\0*.txt\0");
    if (fileDlg.DoModal() == IDOK)
    m_strFileName=fileDlg.GetPathName(); //读取数据
    CFile fp;
    CFileException fe;
        CString szBuffer = _T("");

    if(!m_strFileName.GetLength())  return;
    if(!fp.Open(m_strFileName,CFile::modeRead,&fe))  return;
    CArchive arLoad(&fp,CArchive::load);    //定义4个临时字符串变量,并初始化为'\0'
    TCHAR TempFstNum[10], TempStrSign[10], TempSndNum[10],TempResult[10]; 
        memset(TempFstNum, '\0', 10); 
        memset(TempStrSign, '\0', 10); 
        memset(TempSndNum, '\0', 10); 
        memset(TempResult, '\0', 10);
    int nIndex=0; try //异常处理
    {
    if(m_Content_ListCtrl.GetItemCount()>0)    // 清除CListCtrl内容
    m_Content_ListCtrl.DeleteAllItems();
    while(arLoad.ReadString(szBuffer)!=NULL)   // 处理数据
    {
    swscanf_s(szBuffer,_T("%s%s%s%s"), TempFstNum, 10,TempStrSign, 10,TempSndNum, 10,TempResult, 10);
    m_Content_ListCtrl.InsertItem(nIndex,TempFstNum); 
    m_Content_ListCtrl.SetItemText(nIndex, 1, TempStrSign);
    m_Content_ListCtrl.SetItemText(nIndex, 2, TempSndNum); 
    m_Content_ListCtrl.SetItemText(nIndex, 3, TempResult); 
    nIndex++;
    }
    }
    catch (CFileException ex) 
    {
    TCHAR szError[1024];
    ex.GetErrorMessage(szError, 1024);
    _tprintf(_T("不能打开文本文件: %1024s"), szError);
    }
    fp.Close();
    }
      

  4.   

    有多种方法:
    1、WinExec、Shellexecute、CreateProcess直接启动
    2、调用VBA启动
      

  5.   

    http://blog.csdn.net/fengbingchun/article/details/6034873