COM組件設計與應用(九)--IDispatch 介面 for vc6.0

 下載原始碼一、前言   終於寫到了第九回,我也一直期盼著寫這回的內容耶,為啥呢?因為自動化(automation)是非常常用、非常有用、非常精彩的一個 COM功能。由於 WORD、EXCEL 等 OFFICE 軟體提供了“宏”的功能,就連我們使用的VC開發環境也提供了“宏”功能,更由於HTML、ASP、JSP 等都要依靠指令碼(Script)的支援,更體現出了自動化介面的重要性。    如果你使用 vc6.0 的開發環境,請繼續閱讀。    如果你使用 vc.net

COM組件設計與應用(八)--實現多介面

 下載原始碼一、前言    從第五回開始到第七回,咱們用 ATL 寫了一個簡單的 COM 組件,之所以說簡單,是因為在組件中,只實現了一個自訂(custom)的介面IFun。當然如果想偷懶的話,我們可以把 200 個函數都加到這一個介面中,果真如此的話,恐怕就沒有人喜歡使用我們這個組件了。一個組件既然可以提供多個介面,那麼我們在設計的時候,就應該按照函數的功能進行分類,把不同功能分類的函數用多個介面表現出來。這樣可以有如下的一些好處:   

FireFox外掛程式開發 (一)

Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 /* Style Definitions */

使用 MOCK 對象進行單元測試的執行個體講解

1.出了什麼問題? 單元測試的目標是一次只驗證一個方法,小步的前進,細粒度的測試,但是假如某個方法依賴於其他一些難以操控的東東,比如說網路連接,資料庫連接,或者是Servlet容器,那麼我們該怎麼辦呢?

CppUnitLite使用詳解

一直想給現在的項目做C++的單元測試,而且也想看看一個單元測試架構的實現。無意中發現了CppUnitLite,CppUnit的輕量級, 確實簡單易用。一. 下載及目錄結構:(http://download.csdn.net/source/304011), 下載後目錄結構如下:/om   /CppUnitLite       /Failure.cpp       /Failure.h       /SimpleString.cpp       /SimpleString.h       ... 

實戰 DeviceIoControl 系列 之二:擷取磁碟片/硬碟/光碟片的參數

Q: 在 MSDN的那個 demo 中,將裝置名稱換成“A:”取 A 盤參數,先用資源管理員讀一下盤,再運行這個程式可以成功,但換一張盤後就失敗;換成“CDROM0”取CDROM參數,無論如何都不行。這個問題如何解決呢? A:取磁碟片參數是從磁碟片上讀取格式化後的資訊,也就是必須執行讀操作,這一點與硬碟不同。將CreateFile中的訪問方式改為GENERIC_READ 就行了。  IOCTL_DISK_GET_DRIVE_GEOMETRY這個

孫鑫教學視頻筆記(17)處理序間通訊

處理序間通訊的四種方式剪貼簿匿名管道具名管道郵槽Win32平台下,記憶體塊在實體記憶體中從來不會被移動,但可以在預設的堆中被移動剪貼簿將資料存入剪貼簿:void CClipboardDlg::OnBnClickedBtnSend(){ // TODO: 在此添加控制項通知處理常式代碼 if(OpenClipboard()) {  CString str;  char * pBuf;  HANDLE

實戰 DeviceIoControl 系列 之三:製作磁碟鏡像檔案

Q: DOS命令 DISKCOPY給我很深的印象,現在也有許多“複製”軟體,可以對磁碟進行全盤複製。我想,要製作磁碟鏡像檔案,DeviceIoControl 應該很有用武之地吧?A: 是的。這裡舉一個製作磁碟片鏡像檔案,功能類似於“DISKCOPY”的例子。  本例實現其功能的核心代碼如下: // 開啟磁碟HANDLE OpenDisk(LPCTSTR filename){   HANDLE hDisk;   // 開啟裝置   hDisk = ::CreateFile(filename,   

COM組件設計與應用(十)--IDispatch 介面 for vc.net

 下載原始碼一、前言   終於寫到了第十回,我也一直期盼著寫這回的內容耶,為啥呢?因為自動化(automation)是非常常用、非常有用、非常精彩的一個 COM功能。由於 WORD、EXCEL 等 OFFICE 軟體提供了“宏”的功能,就連我們使用的VC開發環境也提供了“宏”功能,更由於HTML、ASP、JSP 等都要依靠指令碼(Script)的支援,更體現出了自動化介面的重要性。    如果你使用 vc6.0 的開發環境,請閱讀前一回。    如果你使用 vc.net 2003,請繼續....

FireFox外掛程式開發(二) — 編寫和使用XPCOM組件

用C++編寫XPCOM組件還是先開看看官網給的例子,下載樣本程式 xpcom-test配置方法見文章

木馬常用攻擊手段-修改系統檔案

木馬常用攻擊手段-修改系統檔案  在Win.ini檔案中載入   木馬程式為了達到在系統啟動時自動啟動並執行效果,一般需在第一次運行時修改目標系統配置,修改win.ini檔案就是其中的一招。在Windows 9x作業系統下,Win.ini檔案中的[windwos]段中有如下附加元件:  load=

兩個開發源碼加密庫openssl和cryptlib的比較

 【openssl資源】   官方網站:http://www.openssl.org  中文網站推薦:http://gdwzh.126.com  目前的版本: openssl-0.9.7  【Cryptlib】  下載網站:http://www.eskimo.com/~weidai/cryptlib.html  目前的版本:Version 5.0 

vc資源中載入png圖片源碼

vc資源中載入png圖片 This code is a gdi+    Image *pImg = NULL;    HGLOBAL       hGlobal = NULL;    HRSRC        hSource = NULL;    LPVOID        lpVoid  = NULL;    int            nSize   = 0;    hSource = FindResource(AfxGetResourceHandle(),

孫鑫教學視頻筆記(18)ActiveX 控制項

容器和伺服器程式容器應用程式時可以嵌入或連結化物件的應用程式。Word就是容器應用程式。伺服器應用程式是建立對象並且當對象被雙擊時,可以被啟動的應用程式。Excel就是伺服器應用程式。ActiveX控制項不能獨立運行,它必須被嵌入容器應用程式中,和容器應用程式一起運行。Dispatch maps調度映射,主要是MFC提供讓外部應用程式可以訪問控制項的屬性和方法Event

孫鑫教學視頻筆記(19)動態連結程式庫

動態連結程式庫WindowsAPI中的所有函數都包含在DLL中。其中有三個最重要的DLL,Kernel32.dll,它包含用於管理記憶體、進程和線程的各個函數;User32.dll,它包含用於執行使用者介面任務(如視窗的建立和訊息的傳送)的各個函數;GDI32.dll,它包含用於畫圖和顯示文本的各個函數。靜態庫和動態庫靜態庫:函數和資料被編譯進一個二進位檔案(通常副檔名為.LIB)。在使用靜態庫的情況下,在編譯連結可執行檔時,連結器從庫中複製這些函數和資料並把它們和應用程式的其他模組組合起來建立

使用VC6編譯和使用Ogre引擎

開發網 Ogre是開源的封裝了DirectX和OpenGL的3D引擎下載 官方首頁為http://www.ogre3d.org/ 下面是國內的下載串連 至少需要下載的檔案 http://gd.91.com/temp/files/ogre/ogre.rar http://www.mscto.com http://gd.91.com/temp/files/ogre/dependencies/OgreWin32Dependencies-0.13.0.zip

孫鑫教學視頻筆記(20)Hook

通過安裝Hook過程,屏蔽訊息佇列中某些訊息The SetWindowsHookEx function installs anapplication-defined hook procedure into a hook chain. You would installa hook procedure to monitor the system for certain types of events.These events are associated either with a

非標題列區拖動MFC對話方塊

OnNcHitTest  CWnd::OnNcHitTest  afx_msg UINT OnNcHitTest( CPoint point );  傳回值:下面列出的滑鼠擊中測試枚舉值之一。  · HTBORDER 在不具有可變大小邊框的視窗的邊框上。   · HTBOTTOM 在視窗的水平邊框的底部。   · HTBOTTOMLEFT 在視窗邊框的左下角。   · HTBOTTOMRIGHT 在視窗邊框的右下角。   · HTCAPTION 在標題條中。   · HTCLIENT

孫鑫教學視頻筆記 (16)線程同步與非同步通訊端編程

事件對象時間對象也屬於核心對象,包含一個使用計數,一個用於指明該事件是一個自動重設的事件還是一個人工重設的事件的布爾值,另一個用於指明該事件處於已通知狀態還是為通知狀態的布爾值有兩種不同類型的事件對象。一種是人工重設的事件,另一種是自動重設的事件,當人工重設的事件得到通知時,等待該事件的所有線程均變為可調度線程。當一個自動重設的事件得到通知時,等待該事件的線程中只有一個線程變為可調度線程。HANDLE CreateEvent(  LPSECURITY_ATTRIBUTES

帝國的餘輝(AT&T)(三)

3. 利令智昏排除了反壟斷對 AT&T 衰落的原因,我們就得從其他地方找原因。一九九五年,AT&T 走到了一個分水嶺。從一九九四年起,美國經濟全面複蘇,從下面斯坦普 500 指數走向圖中可以看出,美國股市從 1995 年起開始暴漲,直到兩千年底。    這時,AT&T 裝置製造部門的執行官們短視地提出分家的建議。他們的理由似乎有道理,因為 AT&T 和另外兩家長途電話公司 MCI 和 Sprint 是競爭關係,後者拒絕購買 AT&T

總頁數: 61357 1 .... 17558 17559 17560 17561 17562 .... 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.