資源簡介
vs2010 操作WORD VBA MFC 批注 WORD 完整源碼

代碼片段和文件信息
#include?“StdAfx.h“
#include?“CmyWord.h“
//聲明?vOpt?最好用這下面這個?因為我自己喜歡用?CComVariant?vOpt;出寫?可能在一些特殊環(huán)境會出現(xiàn)錯誤
//COleVariant?vOpt((?long?)DISP_E_PARAMNOTFOUND??VT_ERROR);
//---------------------------------------------------------------------------------------------------------
//???????????????????????小魚兒?Word?封裝類初步完成?2012?14??2:04
//
//1?我只學(xué)習(xí)封裝了一些Word中比較使用的東西,后續(xù)還會繼續(xù)改進,看哪些需要的東西要進來。來方便我們的工作學(xué)習(xí)
//2?這個我第一次用c++?來寫程序,?也是我c++入門的程序吧。有什么指點請加我QQ879801208?無聊勿加
//3?程序代碼可能沒有全部測試?如果有問題?謝謝指正。
//4?如果有高手想指點我一下?我是非常高興的。。。。
//---------------------------------------------------------------------------------------------------------
CmyWord::CmyWord()
{
InitCOM();
}
CmyWord::~CmyWord()
{
//釋放資源最好從?小到大的順序來釋放。這個和c里面一些釋放資源的道理是一樣的
//和c+=?先析構(gòu)兒子?再析構(gòu)父親是一樣的。
CoUninitialize();
range.ReleaseDispatch();
tab.ReleaseDispatch();
doc.ReleaseDispatch();
docs.ReleaseDispatch();
app.ReleaseDispatch();
sel.ReleaseDispatch();
}
BOOL?CmyWord::InitCOM()
{
if(CoInitialize(NULL)!=S_OK)
{
AfxMessageBox(“初始化com庫失敗“);
return?0;
}
else
{
return?TRUE;
}
}
BOOL?CmyWord::CreateAPP()
{
if(!app.CreateDispatch(“Word.Application“))
{
AfxMessageBox(“你沒有安裝OFFICE“);
return?FALSE;
}
else
{
app.put_Visible(TRUE);
return?TRUE;
}
}
//我的類默認(rèn)是打開的,而Word?中默認(rèn)看不見的。
void?CmyWord::ShowApp(BOOL?flag)
{
if(!app.m_lpDispatch)
{
AfxMessageBox(“你還沒有獲得Word對象“);
return;
}
else
{
app.put_Visible(flag);
}
}
BOOL?CmyWord::CreateDocument()
{
if(!app.m_lpDispatch)
{
AfxMessageBox(“Application為空Documents創(chuàng)建失敗!“?MB_OK|MB_ICONWARNING);
return?FALSE;
}
else
{
docs=app.get_Documents();
if(docs.m_lpDispatch==NULL)
{
AfxMessageBox(“創(chuàng)建DOCUMENTS?失敗“);
return?FALSE;
}
else
{
CComVariant?Template(_T(““));//創(chuàng)建一個空的模版
CComVariant?NewTemplate(false);
CComVariant?DocumentType(0);
CComVariant?Visible;//不處理?用默認(rèn)值
doc?=?docs.Add(&Template&NewTemplate&DocumentType&Visible);
if(!doc.m_lpDispatch)
{
AfxMessageBox(“創(chuàng)建word失敗“);
return?FALSE;
}
else
{
sel?=?app.get_Selection();//獲得當(dāng)前Word操作。開始認(rèn)為是在doc獲得selection。仔細(xì)想一下確實應(yīng)該是Word的接口點
if(!sel.m_lpDispatch)
{
AfxMessageBox(“selection?獲取失敗“);
return?FALSE;
}
else
{
return?TRUE;
}
}
}
}
}
BOOL?CmyWord?::Create()
{
if(CreateAPP())
{
if(CreateDocument())
{
return?TRUE;
}
else
return?FALSE;
}
else
return?FALSE;
}
BOOL?CmyWord::Open(CString?FileNameBOOL?ReadOnly?/*?=?FALSE?*/BOOL?AddToRecentFiles?/*?=?FALSE?*/)
{
CComVariant?Read(ReadOnly);
CComVariant?AddToR(AddToRecentFiles);
CComVariant?Name(FileName);
COleVariant?vTrue((short)TRUE)?vFalse((short)FALSE);
COleVariant?varstrNull(““);
COleVariant?varZero((short)0);
COleVariant?varTrue(short(1)VT_BOOL);
COleVariant?varFalse(short(0)VT_BOOL);
COleVariant?vOpt((long)DISP_E_PARAMNOTFOUND?VT_ERROR);
if(!app.m_lpDispatch)
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2014-06-09?09:35??VC++2010操作Word2010\
?????文件??????250430??2013-02-26?22:20??VC++2010操作Word2010\VC++2010操作Word2010.docx
?????目錄???????????0??2014-06-09?09:39??VC++2010操作Word2010\VCForWord\
?????目錄???????????0??2014-06-09?09:39??VC++2010操作Word2010\VCForWord\VCForWord\
?????文件???????15000??2014-06-06?16:46??VC++2010操作Word2010\VCForWord\VCForWord\CmyWord.cpp
?????文件????????2774??2014-06-06?14:46??VC++2010操作Word2010\VCForWord\VCForWord\CmyWord.h
?????文件????????3051??2013-01-30?20:18??VC++2010操作Word2010\VCForWord\VCForWord\ReadMe.txt
?????文件??????106080??2014-06-05?17:43??VC++2010操作Word2010\VCForWord\VCForWord\VCForWord.aps
?????文件????????2135??2013-01-30?21:23??VC++2010操作Word2010\VCForWord\VCForWord\VCForWord.cpp
?????文件?????????460??2013-01-30?20:18??VC++2010操作Word2010\VCForWord\VCForWord\VCForWord.h
?????文件???????10320??2014-06-05?17:43??VC++2010操作Word2010\VCForWord\VCForWord\VCForWord.rc
?????文件???????25628??2014-06-06?14:51??VC++2010操作Word2010\VCForWord\VCForWord\VCForWord.vcxproj
?????文件???????39854??2014-06-06?14:51??VC++2010操作Word2010\VCForWord\VCForWord\VCForWord.vcxproj.filters
?????文件?????????143??2013-01-30?20:18??VC++2010操作Word2010\VCForWord\VCForWord\VCForWord.vcxproj.user
?????文件???????16060??2014-06-06?16:27??VC++2010操作Word2010\VCForWord\VCForWord\VCForWordDlg.cpp
?????文件????????1027??2014-06-06?15:18??VC++2010操作Word2010\VCForWord\VCForWord\VCForWordDlg.h
?????目錄???????????0??2014-06-05?17:06??VC++2010操作Word2010\VCForWord\VCForWord\Word2010\
?????文件????????2050??2013-01-30?20:43??VC++2010操作Word2010\VCForWord\VCForWord\Word2010\CAddIn.h
?????文件????????1881??2013-01-30?20:43??VC++2010操作Word2010\VCForWord\VCForWord\Word2010\CAddIns.h
?????文件????????1517??2013-01-30?20:43??VC++2010操作Word2010\VCForWord\VCForWord\Word2010\CAdjustments.h
?????文件???????47201??2013-02-26?21:51??VC++2010操作Word2010\VCForWord\VCForWord\Word2010\CApplication.h
?????文件?????????616??2013-01-30?20:43??VC++2010操作Word2010\VCForWord\VCForWord\Word2010\CApplicationEvents.h
?????文件?????????886??2013-01-30?20:43??VC++2010操作Word2010\VCForWord\VCForWord\Word2010\CApplicationEvents0.h
?????文件????????2717??2013-01-30?20:43??VC++2010操作Word2010\VCForWord\VCForWord\Word2010\CApplicationEvents2.h
?????文件????????2725??2013-01-30?20:43??VC++2010操作Word2010\VCForWord\VCForWord\Word2010\CApplicationEvents20.h
?????文件????????4851??2013-01-30?20:43??VC++2010操作Word2010\VCForWord\VCForWord\Word2010\CApplicationEvents3.h
?????文件????????4859??2013-01-30?20:43??VC++2010操作Word2010\VCForWord\VCForWord\Word2010\CApplicationEvents30.h
?????文件????????7445??2013-01-30?20:43??VC++2010操作Word2010\VCForWord\VCForWord\Word2010\CApplicationEvents4.h
?????文件????????1916??2013-01-30?20:43??VC++2010操作Word2010\VCForWord\VCForWord\Word2010\CAutoCaption.h
?????文件????????1623??2013-01-30?20:43??VC++2010操作Word2010\VCForWord\VCForWord\Word2010\CAutoCaptions.h
?????文件????????6332??2013-01-30?20:43??VC++2010操作Word2010\VCForWord\VCForWord\Word2010\CAutoCorrect.h
............此處省略363個文件信息
- 上一篇:挖金子工程源代碼C++
- 下一篇:LZ77算法 C++實現(xiàn)
評論
共有 條評論