讓你的程式也能執行指令碼

下載原始碼  VBScript(JScript)是應用廣泛,簡單易學的指令碼語言。使用VBScript(JScript)調用COM組件則更是容易。那麼,如果在你的程式中也能夠執行指令碼,則在簡化程式設計的基礎上,還會極大地提升軟體的功能。為了方便大家使用這個功能,我寫了一個具有自動化(Automation/IDispatch)功能的EXE封裝程式來代理呼叫指令碼執行。這個封裝程式介面只有2個函數,說明如下:Void SetScriptLanguage(long nLanguage);

理解COM編程中的“種類”(Category)概念

 編譯/hangwire 下載範例原始碼 問題:    我要編寫一個支援ActiveX文檔外掛程式(Plug-ins)的應用程式。為了建立一個已安裝外掛程式的菜單,在程式啟動時我掃描註冊表尋找已安裝的ActiveX組件。對於每一個ActiveX組件建立一個執行個體並查詢一個叫IMyAppPlugin的專門介面。如果這個介面存在,那麼我就認為這個組件就是我的程式所要的外掛程式。這樣做好像行不通,尤其是安裝有多個ActiveX組件時做起來就更困難。有沒有更好的辦法處理這種問題?解答:  

Excel2000/XP和PowerPoint2000/XP內部COM外掛程式的實現

作者:徐景周下載樣本原始碼一:EXCEL內部外掛程式下載樣本原始碼二:PowerPoint內部外掛程式一、簡介Excel2000和PowerPoint2000下內部COM外掛程式的編程實現這篇文章,實際上是< Office2000下內部COM外掛程式的編程實現> 和< Word2000/XP中內部COM外掛程式的編程實現>二篇文章的續篇。採用上篇文章<

試用CppUnit–一個簡單的例子

用CppUnit其它與用Junit差不多,基本原理是一致的,不過我以為,與Junit相比,配置它稍微麻煩了一點.(下一篇文章,將介紹cppunit在vc6.0及vc.net下的配置)我以一個簡單的Money類為例//name:money.h#ifndef MONEY_H#define MONEY_H#include <string>class Money{public:  Money( double amount)    : m_amount( amount )  {  } 

CppUnit測試架構入門

Author: Cpluser

COM組件介面繼承的實現

作者:ZhengKui下載原始碼講解: 這是根據”Dr. GUI and ATL” 的文章自己做的例子程式,主要是在原有介面上繼承新的介面,這樣在保留原介面的基礎上可以擴充新的功能.功能介紹:1.建立Calculate組件,添加IFun介面(注意:本例我們在Attributes中我們選擇Apartment,Custom,Yes).在IFun介面中添加函數Add實現兩數相加的功能(參數為[in] long n1, [in] long n2, [out, retval] long

瀏覽器的定製與擴充

作者:李漢鵬下載原始碼 本文分如下章節: 前言 在MFC中使用瀏覽器 怎樣擴充或定製瀏覽器 定製滑鼠右鍵彈出出菜單 實現指令碼擴充(很重要的external介面) C++代碼中如何調用網頁指令碼中的函數 定製訊息框的標題 怎樣定製、修改瀏覽器向Web伺服器發送的HTTP要求標頭 怎樣修改瀏覽器標識 去掉討厭的異常警告 怎樣處理瀏覽器內的拖放 怎樣禁止網頁元素的選取 其它 前言  由於本人在開發中經常要在程式中嵌入瀏覽器,為了符合自己的需求經常要對瀏覽器進行擴充和定製,

Word2000/XP中內部COM外掛程式的編程實現

編譯:徐景周下載本文樣本原始碼 簡介Office2000/XP中Word下的內部COM外掛程式的實現方法和前面我的文章《 Office2000下內部COM外掛程式的編程實現》中介紹的樣本Outlook2000下內部COM外掛程式的實現方法與步驟基本相同,在這裡,我想不用再重複哆嗦大部分前面文章裡已經講過的內容了,只將重點放在它們間實現的不同點上,有興趣的朋友可以參看前面這篇文章,然後再看這篇文章一定會事半功倍的。本文章提供的Word內部COM外掛程式樣本源碼運行後的如下所示:

Office2000下內部COM外掛程式的編程實現

譯者:徐景周下載樣本原始碼簡介你也許曾在Office2000下的Word2000、Access2000、Excel2000、PowerPoint2000等軟體中的工具條或菜單條資源中,看到一些其它軟體加入的新的自訂工具條按鈕或菜單條,當點擊它們時,會有其不同的響應發生。下面,讓我們也來實現這些功能,需要說明的是,在這裡我們不用VB/VBA來實現它,而是用VC6中所帶ATL(Active Template

CppUnit測試架構入門(1)

CppUnit測試架構入門(1)Author: Cpluser

GCC起步zt

在為Linux開發應用程式時,絕大多數情況下使用的都是C語言,因此幾乎每一位Linux程式員面臨的首要問題都是如何靈活運用C編譯器.目前Linux下最常用的C語言編譯器是GCC(GNU Compiler Collection),它是GNU項目中符合ANSI C標準的編譯系統,能夠編譯用C、C++和Object

CppUnit測試架構入門(2)

CppUnit測試架構入門(2)Author: Cpluser

COM 組件設計與應用11 – IDispatch 及雙介面的調用

下載原始碼一、前言    前段時間,由於工作比較忙,沒有能及時地寫作。其間收到了很多網友的來信詢問和鼓勵,在此一併表示感謝。咳......我也需要工作來養家糊口呀......    上回書介紹了兩種方法來寫自動化(IDispatch)介面的組件程式,一是用 MFC 方式編寫“純粹”的 IDispatch 介面;二是用 ATL 方式編寫“雙介面”的組件。 二、IDispatch 介面和雙介面    使用者要想調用普通的 COM 組件功能,必須要載入這個組件的類型庫(Type library)檔案

COM組件設計與應用12 – 錯誤與異常處理

 E_INVALIDARG0x80070057參數錯誤E_OUTOFMEMORY0x8007000E記憶體錯誤E_NOTIMPL0x80004001未實現E_POINTER0x80004003無效指標E_HANDLE0x80070006無效控制代碼E_ABORT0x80004004終止操作E_ACCESSDENIED0x80070005拒絕訪問E_NOINTERFACE0x80004002不支援介面  另外,你還可以返回自己構造 HRESULT 錯誤值。方法是使用宏

COM組件設計與應用13 – 事件和通知(VC6.0)

 通知方式簡單說明評論直接訊息PostMessage()PostThreadMessage()向視窗或線程發個訊息你什麼時候執行我就不管啦SendMessage()馬上執行訊息響應函數不執行完訊息處理函數不會返回SendMessage(WM_COPYDATA...)發訊息的同時,還可以帶過去一些自訂的資料比較常用,所以單獨列了出來間接訊息InvalidateRect()SetTimer()......被調用的函數會發送相關的一些訊息這樣的函數太多了回呼函數GetOpenFileName()...

COM組件設計與應用14 – 事件和通知(vc.net)

 通知方式簡單說明評論直接訊息PostMessage()PostThreadMessage()向視窗或線程發個訊息你什麼時候執行我就不管啦SendMessage()馬上執行訊息響應函數不執行完訊息處理函數不會返回SendMessage(WM_COPYDATA...)發訊息的同時,還可以帶過去一些自訂的資料比較常用,所以單獨列了出來間接訊息InvalidateRect()SetTimer()......被調用的函數會發送相關的一些訊息這樣的函數太多了回呼函數GetOpenFileName()...

COM組件設計與應用15 – 連接點(vc6.0)

 STDMETHODIMP CDispConnect::Add(long n1, long n2){long nVal = n1 + n2;Fire_Result( nVal );// 調用IDE幫我們產生的代理函數代碼,發出事件return S_OK;}15、修正 IDE 產生的代碼中的錯誤。你不用死記硬背錯誤點,只要編譯一下就會報出錯誤了。一般 VC6

COM組件設計與應用16 – 連接點(vc.net)

 STDMETHODIMP CDispConnect::Add(long n1, long n2){long nVal = n1 + n2;Fire_Result( nVal );// 調用IDE幫我們產生的代理函數代碼,發出事件return S_OK;}四、實現調用者(一)1、建立一個 MFC 項目。樣本程式中的名稱叫 Use。2、按照咱們以前所學的知識,添加 #import、AfxOleInit()、......不多浪費口條了。如果你還不會,那麼請重新從“第四回”再次閱讀。

ATL布幔之下的秘密(1)

作者:Zeeshan Amjad譯者:李馬 (home.nuc.edu.cn/~titilima ) 原文出處: http://www.codeproject.com/atl/atl_underthehood_.asp 介紹    在本系列的教程中,我要討論一些ATL的內部工作方式以及它所使用的技術。    在討論的開始,讓我們先看看一個程式的記憶體分布。首先,編寫一個簡單的程式,它沒有任何的資料成員,你可以看看它的記憶體結構。 程式1. #include

ATL布幔之下的秘密(3)

作者:Zeeshan Amjad譯者:李馬 (home.nuc.edu.cn/~titilima ) 原文出處: http://www.codeproject.com/atl/atl_underthehood_3.asp 介紹    如果你是個模板的高手,你就可以將ATL的學習作為一種享受。在這一節中,我將要嘗試解釋一些ATL使用的模板技術。我不能保證你讀完本節後能成為一個模板高手,只能是盡我所能讓你在讀完本文後能夠更輕鬆地理解ATL的源碼。 程式35. #include

總頁數: 61357 1 .... 19301 19302 19303 19304 19305 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.