国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 辦公 > Word > 正文

Visual C++操縱MS Word

2024-08-22 13:23:20
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

    使用VC編程來(lái)操縱Office。你可以實(shí)現(xiàn)諸如:Word文件打印、傳送數(shù)據(jù)到Word文檔、發(fā)送E-MAIL、自動(dòng)產(chǎn)生表格、Excel數(shù)據(jù)統(tǒng)計(jì)、圓餅圖,直方圖顯示、自動(dòng)報(bào)表生成、播放幻燈、doc,txt,HTML,rtf文件轉(zhuǎn)換、中文簡(jiǎn)繁體轉(zhuǎn)換、拼音或筆畫排序......只要是Office能夠?qū)崿F(xiàn)的功能,都可以在你寫的程序中調(diào)用。仔細(xì)閱讀下面的說(shuō)明,并下載源文件進(jìn)行參考,你就可以一步一步地掌握這個(gè)技術(shù)。祝朋友們學(xué)習(xí)快樂(lè)。

    一、概念

    Microsoft 的 Office 產(chǎn)品中,都提供了OLE Automation 自動(dòng)化程序的接口。如果你使用VB,VBA 和 Script 腳本調(diào)用 Office 功能的話,其實(shí)比使用 VC 調(diào)用要簡(jiǎn)單的多。比如在 WORD 中,調(diào)出菜單“工具(T)宏(M)錄制新宏(R)”,這時(shí)候它開(kāi)始記錄你在 WORD 中任何菜單和鍵盤的操作,把你的操作過(guò)程保存起來(lái),以便再次重復(fù)調(diào)用。而保存這些操作的記錄,其實(shí)就是使用了 VBA 程序(Visual Basic for Application)。而我們下面要實(shí)現(xiàn)的功能,也同樣要參考 VBA 的方法。

    二、結(jié)構(gòu)層次

    為了更有邏輯,更有層次地操作 Office,Microsoft 把應(yīng)用(Application)按邏輯功能劃分為如下的樹(shù)形結(jié)構(gòu)

    Application(WORD 為例,只列出一部分)

    Documents(所有的文檔)

    Document(一個(gè)文檔)

    ......

    Templates(所有模板)

    Template(一個(gè)模板)

    ......

    Windows(所有窗口)

    Window

    Selection

    View

    Selection(編輯對(duì)象)

    Font

    Style

    Range

    ......

    ......

    只有了解了邏輯層次,我們才能正確的操縱 Office。舉例來(lái)講,如果給出一個(gè)VBScript語(yǔ)句是:

    application.ActiveDocument.SaveAs "c:abc.doc"

    那么,我們就知道了,這個(gè)操作的過(guò)程是:第一步,取得Application;第二步,從Application中取得ActiveDocument;第三步,調(diào)用 Document 的函數(shù) SaveAs,參數(shù)是一個(gè)字符串型的文件名。

    三、基本步驟

    (1)創(chuàng)建(或打開(kāi)已有的)一個(gè) MFC 的程序工程

    (2)Ctrl+W 執(zhí)行 ClassWizard(本文按照 VC6 操作,例子程序也是在VC6 下編寫測(cè)試的)

    (3)Add Class...From a type Library... 在 Office 目錄中,找到你想使用的類型庫(kù)。(我使用的是 Office2000,其Word 的類型庫(kù)文件,保存在 C:Program FilesMicrosoft OfficeOfficeMSWORD9.OLB)根據(jù)你 Office 的版本,可以使用下表列出的類型庫(kù)文件

 

Office 版本和類型 類型庫(kù)文件 Office 版本和類型 類型庫(kù)文件
Access 97 Msacc8.olb PowerPoint 2000 Msppt9.olb
Jet Database 3.5 DAO350.dll Word 2000 Msword9.olb
Binder 97 Msbdr8.olb Access 2002 Msacc.olb
Excel 97 Excel8.olb Excel 2002 Excel.exe
Graph 97 Graph8.olb Graph 2002 Graph.exe
Office 97 Mso97.dll Office 2002 MSO.dll
Outlook 97 Msoutl97.olb Outlook 2002 MSOutl.olb
PowerPoint 97 Msppt8.olb PowerPoint 2002 MSPpt.olb
Word 97 Msword8.olb Word 2002 MSWord.olb
Access 2000 Msacc9.olb Office Access 2003 Msacc.olb
Jet Database 3.51 DAO360.dll Office Excel 2003 Excel.exe
Binder 2000 Msbdr9.olb Graph 2003 Graph.exe
Excel 2000 Excel9.olb Office 2003 MSO.dll
Graph 2000 Graph9.olb Office Outlook 2003 MSOutl.olb
Office 2000 Mso9.dll Office PowerPoint 2003 MSPpt.olb
Outlook 2000 Msoutl9.olb Office Word 2003 MSWord.olb

    (4)選擇類型庫(kù)文件后,在彈出的對(duì)話窗中繼續(xù)選擇要添加的類。具體選擇什么類,要看你將來(lái)在程序中打算調(diào)用什么功能。當(dāng)然,你也可以不用考慮這么多,用鼠標(biāo)和Shift鍵配合,全部選擇也可以。

    (5)初始化COM。方法一,找到App的InitInstance()函數(shù),在其中添加 AfxOleInit()函數(shù)的調(diào)用;方法二,在需要調(diào)用COM功能的地方 CoInitialize(NULL),調(diào)用完畢后 CoUninitialize()。

    (6)在你需要調(diào)用 Office 功能函數(shù)的 cpp 文件中
    #include // 為了方便操作 VARIANT 類型變量,使用CComVariant 模板類
    #include "頭文件.h"
    // 具體的頭文件名,是由裝載類型庫(kù)的文件名決定的。(鼠標(biāo)雙點(diǎn)包裝類的文件,就可以看到)
    // 比如使用 msword9.olb類型庫(kù),那么頭文件是 msword9.h

     (7)好了,現(xiàn)在開(kāi)始寫程序吧。另外要說(shuō)明的是,步驟3和4,其實(shí)也可以使用 #import 方式引入類型庫(kù)。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 泉州市| 西宁市| 湘乡市| 麻栗坡县| 佛学| 礼泉县| 沈阳市| 汝城县| 介休市| 鞍山市| 荃湾区| 阜平县| 河曲县| 西藏| 扬中市| 镇巴县| 霍州市| 淮北市| 华容县| 青神县| 泰顺县| 大理市| 团风县| 乳山市| 蕉岭县| 漳平市| 潍坊市| 特克斯县| 封开县| 疏勒县| 潮州市| 余姚市| 双桥区| 四平市| 莆田市| 响水县| 哈尔滨市| 天峻县| 广南县| 迁安市| 竹山县|