原创 C++寫錯誤日誌函數

在編寫程序,有些問題藉助錯誤日誌更好跟蹤。 UNICODE代碼: DWORD  WriteErrLog ( CString strError) {DWORD nWrite=0, bytesWritten;HANDLE hFile;    

原创 不同BMP位圖與調色板分析

調色板(color table)是單色、16色和256色圖像文件所特有的,相對應的調色板大小是2、16和256,調色板以4字節爲單位,每4個字節存放一個顏色值,圖像的數據是指向調色板的索引。       可以將調色板想象成一個數組,每

原创 調試你的第一個javascript程序

由於工作原因,需要寫一些簡單的javascript函數給別人調用。可是寫好後又不知道怎麼調試。 下面做一個入門級的說明。 1.寫過代碼的人,初次看javascript不會太難。在網上一搜,瞭解下基本的語法及變量定義基本上就可以入手了。

原创 c++類中靜態函數不能調用類中的非靜態函數原因

程序最終都將在內存中執行,變量只有在內存中佔有一席之地時才能被訪問。  類的靜態成員(變量和方法)屬於類本身,在類加載的時候就會分配內存,可以通過類名直接去訪問; 非靜態成員(變量和方法)屬於類的對象,所以只有在類的對象產生(創建類的實例

原创 MFC程序RELEASE版本輸出DUMP定位在代碼行

有時給客戶使用Release版本時,會偶爾出現崩潰的問題,這樣很不好定位。但通過程序輸出的dump文件可以定位到代碼。 客戶那邊出現崩潰時,只需要把.dmp文件拷貝過來,然後放在工程.map和.pdb同級目錄,然後用VS打開即可。具體過程

原创 獲取某一文件夾路徑下的所有子文件夾

void CMainWnd::GetCASrcFileDirList(CStringArray *pSrcCAFileDirPath,CString

原创 8位位圖轉換成24位位圖

8位位圖與24位位圖的區別就在於8位的有調色板,而24位的沒有。調色板信息是按(BGRA)順序存放的,每4位是一個調色板項,共有256個調色板,故只能顯示256種顏色,其中A始終爲0。位圖數據區則是存儲的調色板索引,比如0,1,2……按

原创 8位位圖轉換爲24位位圖

8位位圖轉換爲24位位圖 其實,只要從8位位圖中取得一個像素的灰度值,然後去填充24位位圖的三個字節就可以了,很明顯,這樣得到的24位位圖是灰度的,就是RGB各分量是一樣的值。 主要的轉換程序 /*****************

原创 上篇幾個函數

聲明:以下函數均不爲自己所寫,所以僅供觀看,不過確實能用,而且沒有錯誤 轉換函數是本人原創,裏面調用了這裏的函數   //return value: // 0 OK // 1 failed BOOL CDib::OpenFile(

原创 獲取某一文件夾下特別創建時間以後的文件

void CMainWnd::GetCASrcFileList(CStringArray *pSrcCAFilePath,CString StrSr

原创 const用法詳解(轉)

面向對象是C++的重要特性. 但是c++在c的基礎上新增加的幾點優化也是很耀眼的 就const直接可以取代c中的#define 以下幾點很重要,學不好後果也也很嚴重 const 1. 限定符聲明變量只能被讀   const int i=

原创 const修飾指針和引用的用法

 const修飾指針和引用的用法,對於初學C++的人直是諱莫如深,不知所云.   一旦你瞭解了其用法,一切便不值一哂了.下面我爲讀者一一釋疑:    大致說來其可分爲三種情況: const修飾指針,const修飾引用,const修飾指針

原创 BMP的8位位圖轉換24位位圖

#define WIDTHBYTES(bits) (((bits)+31)/32*4)  //一行的位數 /*****************************************************************

原创 CWnd與HWND的區別

一、區別 HWND是句柄,CWnd是MFC窗體類,CWnd中包含HWND句柄成員對象是m_hWnd HWND是Windows系統中對所有窗口的一種標識,即窗口句柄。這是一個SDK概念。   CWnd是MFC類庫中所有窗口類的基類。微軟

原创 Rational Rose 2003 逆向工程轉換C++源代碼成UML類圖

網上的關於從C++代碼到UML類圖生成過程的東西不少,找了個能用的,現在轉下,以備不時之需。 轉來稍微調整了下內容,只關心使用。 原出處http://siulyn.blog.163.com/blog/static/624558362