您好,欢迎来到Office教程网
您的位置: 主页 > word教程 > word学习 >

用VC写word文件方法(4)

时间:2012-04-03 来源:office.sc115.com阅读:
  •       lpOleLink->Release();                   return   NULL;             
  •     }               ASSERT(lpUnk   !=   NULL);           
  • }             LPDISPATCH   lpDispatch   =   NULL;         
  • if   (lpUnk->QueryInterface(IID_IDispatch,   (LPVOID   FAR*)&lpDispatch)!=NOERROR)           {       
  •         TRACE0("Warning:   does   not   support   IDispatch!\n");               return   NULL;       
  •         }       
  • ASSERT(lpDispatch   !=   NULL);         return   lpDispatch;      
  • (5)。在officeView.h添加#include   "msword8.h"   //如果是Word2000则为#include   "msword9.h"

    (6)。修改void   COfficeView:nInsertObject(),源码如下:
     

    1. BeginWaitCursor();           
    2.   COfficeCntrItem*   pItem   =   NULL;       TRY     
    3.   {           //   Create   new   item   connected   to   this   document.     
    4.       COfficeDoc*   pDoc   =   GetDocument();           ASSERT_VALID(pDoc);     
    5.       pItem   =   new   COfficeCntrItem(pDoc);           ASSERT_VALID(pItem);     
    6.             //   Initialize   the   item   from   the   dialog   data.     
    7.   /*   if   (!dlg.CreateItem(pItem))             AfxThrowMemoryException();     //   any   exception   will   do     
    8.       ASSERT_VALID(pItem);*/             CLSID   clsid;   //     
    9.       if(FAILED(::CLSIDFromProgID(L"Word.document",&clsid)))               AfxThrowMemoryException();       
    10.             if(bOpenStatus) //如果是打开文档     
    11.   {       if(!pItem->CreateFromFile   (sFilename,clsid))   //打开已有文档     
    12.   AfxThrowMemoryException();         }     
    13.   else //否则新建文档       {     
    14.   if(!pItem->CreateNewItem(clsid))   //新建文档       AfxThrowMemoryException();       
    15.   }         ASSERT_VALID(pItem);       

    office教程 - office2007免费版下载 - word教程 - 网站地图