原创 vs 2008 編譯boost 1.35.0 and ICU

boost 1.35.0已經內置了1.34.1爲讓vs2008編譯所需要修改的內容。所以不再需要手工修改。雖然boost 1.35.0文檔中說目前不支持vs2008,以後會支持。但是經過一番折騰,發現實際上可以編譯。 例如: M:/

原创 ATL學習筆記02

3.1 ATL 的基本特徵 描述:ATL提供了實現基於COM組件內核的支持.下面是ATL所提供的一些功能 1)AppWizard,它負責創建起始的ATL工程2)Object Wizard(對象嚮導),它爲基本的COM組件創建代碼3)對低級

原创 ATL學習筆記03

4.1 COM接口類型概述 描述:除了Vtable結構的接口外,COM還支持另外兩種接口類型:即派發接口(Dispinterface)和雙向接口(Dual Interface) 4.1.1 Vtable 接口 1)Vtable類型接口的缺

原创 用ATL編寫的單實例(DLL)服務器的原代碼的例子

要想單實例,必須控制IClassFactory接口。 在你的對象類聲明裏 加入 DECLARE_CLASSFACTORY_EX(CMyClassFactory) CMyClassFactory是你從CComClassFactory繼承來的

原创 使用boost查找區分大小寫查找,查找一個字符串在另外一個字符串的位置,返回索引。

http://blog.csdn.net/NetLinux   std::string strPath("C://Windows//System32//drivers"); std::string strZune = "drivers

原创 簡明x86彙編語言教程(7)-編譯優化

5.0 編譯優化概述 優化是一件非常重要的事情。作爲一個程序設計者,你肯定希望自己的程序既小又快。DOS時代的許多書中都提到,“某某編譯器能夠生成非常緊湊的代碼”,換言之,編譯器會爲你把代碼儘可能地縮減,如果你能夠正確地使用它提供的功能的

原创 類的函數指針。

typedef double (CModalDlg::*MYFUNC)(double); ... MYFUNC p=&CModalDlg::theRealFunc; ... double m=(this->*p)(5.0);

原创 ActiveX Scripting技術(二)

在介紹了應用系統和腳本引擎所實現的一些關鍵接口之後,我們再進一步看看應用系統和腳本引擎的協作過程,如圖2所示。    圖中給出了8個步驟,下面逐一介紹。圖2 應用系統與腳本引擎的協作過程    (1)創建必要的受控對象,這些受控對象是指將

原创 Learning WTL8.0

學習WTL可以有多種方式,當然如果有COM和ATL的知識背景最好不過,如果你有MFC編程背景卻最爲糟糕,除非你對MFC無所不知、無所不能(如果你不是MFC的ORACLE,那麼最好忘卻它)   Learning WTL8.0 Part-

原创 一個多態類的彙編代碼。

class CBase{public: virtual void show() = 0;protected:private:}; class CBaseA : public CBase{public: virtual void show(

原创 安全編碼實踐三:C/C++靜態代碼分析工具Prefast

  概述    在前面的安全編碼實踐的文章裏,我們討論了GS編譯選項和數據執行保護DEP功能。 結論是GS和DEP可以有效的緩解緩存溢出類型的安全漏洞的危害。關於這個結論,有兩個大家需要值得注意的地方。    第一:GS和DEP是緩解(m

原创 編譯64位版本的boost

As a short answer: bjam --toolset=msvc-9.0 address-model=64--build-type=complete  As a longer answer, here are my buil

原创 編寫易於調試的VC代碼

一 程序的設計   要避免錯誤,首先要從好的設計開始。對於程序的設計,需考慮到程序的兩個特性:   1簡單性   大多數常見的錯誤來源於程序設計中不必要的複雜成分。一個好的設計應該反映問題本身的要求,而不必爲了刻意追求“滿足將來的需

原创 BAT批處理文件教程

bat是dos下的批處理文件 .cmd是nt內核命令行環境的另一種批處理文件 從更廣義的角度來看,unix的shell腳本以及其***作系統甚至應用程序中由外殼進行解釋執行的文本,都具有與批處理文件十分相似的作用,而且同樣是由專用解釋器以

原创 ActiveX Scripting技術(三)

ActiveX Scripting技術(三)(接上期)然後我們看看類CScriptHost中接口IActiveS criptSite的成員函數GetItemInfo的實現,因爲引擎調用GetItemInfo函數獲取其名字空間中名字項的信息