Time of Update: 2018-12-05
COM庫函數 -------------------------------- 利用COM庫函數使用程式碼群組件的方法是本文介紹的三種方法中實現起來最麻煩和困難的方法。它要求開發人員必須具有對COM原理的深入理解。該方法實現步驟如下: 1. 首先添加COM初始和終止代碼。在應用程式類的初始化執行個體函數InitInstance()中添加如下代碼: CoInitialize(NULL); …… CoUnInitialize();
Time of Update: 2018-12-05
一般地,可以使用CoCreateInstance來調用COM組件。但對於實現了IDispatch介面的COM組件,還有更容易的方法——用VC++自動產生介面的COleDispatchDriver封裝類來調用COM組件。 舉例說明:在VC++中執行指令碼語句,比如VBScript語句。 系統提供了一個控制項:C:\WINDOWS\system32\msscript.ocx,它提供了一個叫做IScriptControl的介面,通過它,我們就可以執行指令碼語句了。 1.用VC++自動建立封裝類用VC+
Time of Update: 2018-12-05
HWND是Windows系統中對所有視窗的一種標識,即視窗控制代碼。這是一個SDK概念。 CWnd是MFC類庫中所有視窗類別的基類。微軟在MFC中將所有視窗的通用操作都封裝到了這個類中,如:ShowWindow等等,同時它也封裝了視窗控制代碼即m_hWnd成員。由HWnd得到CWnd*:CWnd wnd;HWnd
Time of Update: 2018-12-05
對於warning C4005: 'WINVER' : macro redefinition的處理 在Windows.h中有如下定義: #ifndef WINVER #define WINVER 0x0400 #endif 如果你把#define WINVER 0x500置於#include <windows.h>之前,就不會出現警告. 需要包含的檔案:#include "Winuser.h"HCURSOR GetCur()
Time of Update: 2018-12-05
SetWindowLong(Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) or WS_EX_TRANSPARENT or WS_EX_LAYERED ); WS_EX_ACCEPTFILES = 0x00000010 指明了一個已建立視窗具有拖拽檔案功能 WS_EX_APPWINDOW = 0x00040000 強制一個可見的頂級視窗到工具列上 WS_EX_CLIENTEDGE = 0x00000200 使一個視窗具有凹陷邊框
Time of Update: 2018-12-05
釋放資源到檔案有時候程式運行時需要調用某些DLL或者其他程式,而為了發布時方便將這些DLL或者EXE添加到了資源中一起編譯。運行時再把這些資源釋放到檔案中即可。那如何釋放資源到檔案中呢?用下面這個函數:BOOL CXXXDlg::ReleaseResFile(CString strFileName, UINT wResID, CString strFileType){ // 資源大小 DWORD dwWrite=0; // 建立檔案
Time of Update: 2018-12-05
bool CheckLine (POINT p1,POINT p2){ int x,y,t; //如果x軸相同 如果y軸相同 有一點為空白 另一點為空白 if ((p1.x==p2.x)&&(p1.y==p2.y)&&(chessdata[p1.y][p1.x]==0)&&(chessdata[p2.y][p2.x]==0)) {return
Time of Update: 2018-12-05
所謂List Contro l,就是用來做LIist的,至於編輯,估計MS也沒提供這個功能。比較詭異的是在給List Control 設 置屬性的時候居然看到Edit Label ,處於好奇點了點,發現只能修改第一列,改了之後失去焦點又變 回原來的文本。沒有深入試下去,我估計可以修改第一列的資料。 其實要實現編輯功能,只要做一個Edit Control 就 可以了,當需要編輯的時候,把這個Edit Control 動態顯示到需要顯示的地方。看:雙擊輸入框:輸入完成,點擊空白處:
Time of Update: 2018-12-05
void CTestDlg::OnButton1(){ // TODO: Add your control notification handler code here CDC* pDC; LOGFONT tLogFont; tLogFont.lfHeight = 21; tLogFont.lfWidth = 0; tLogFont.lfEscapement = 0; tLogFont.lfOrientation = 0;
Time of Update: 2018-12-05
#define LWA_COLORKEY 0x00000001 //方式#define WS_EX_LAYERED 0x00080000 typedef BOOL (WINAPI *lpfnSetLayeredWindowAttributes)(HWND hWnd, COLORREF crKey, BYTE bAlpha, DWORD dwFlags); lpfnSetLayeredWindowAttributes SetLayeredWindowAttributes;
Time of Update: 2018-12-05
使用啟動畫面一是可以減少等待程式載入過程中的枯燥感(尤其是一些大型程式);二是可以用來顯示軟體名稱和著作權等提示資訊。怎樣使用VC++製作應用程式的啟動畫面呢?本文提供四種方法,前三種適用於基於文檔的應用程式,第四種適用於基於對話方塊的應用程式。 1.利用組件庫中的Splash Screen組件實現 (1)用Photoshop等製作啟動畫面映像,儲存為bmp格式。 (2)用Appwizard建一個基於單文檔的工程Splash。 (3)在資源中插入位元影像資源 開啟VC++的資源編輯器,
Time of Update: 2018-12-05
/////////////////////定義函數、變數////////////////// void resize(); POINT Old;//存放對話方塊的寬和高 /////////////////////////////////////////////////// void CNewFrameDlg::OnSize(UINT nType, int cx, int cy) { CDialog::OnSize(nType,
Time of Update: 2018-12-05
(一) 非動態顯示圖片(即圖片先通過資源管理員載入,有一個固定ID)(二) 動態載入圖片(即只需要在程式中指定圖片的路徑即可載入)為方便說明,我們已經建好一個基於對話方塊的工程,名為Ttest,對話方塊類為CTestDlg(一)vc picture控制項非動態載入圖片.方法1.先從最簡單的開始,用picture
Time of Update: 2018-12-05
#pragma data_seg () static HHOOK g_hKeyboardHook = NULL; static HINSTANCE g_hInst = NULL;#pragma data_seg ()#pragma comment (linker, "/section:Shared, rws")BOOL WINAPI DllMain(HINSTANCE hInstance, DWORD fdwReason, PVOID
Time of Update: 2018-12-05
為了更新資料,我們常常需要搜尋特徵碼,但是OD裡不能直接尋找模糊資料.近兩天通過看殼的世界(前兩課免費),我發現其實還是可以實現的,只是以前太粗心不會用.比如我們搜尋如下語句:記憶體位址 二進位 彙編指令 備忘00735EC3 33C0 XOR EAX,EAX //這條確定00735EC5 83FF 1A CMP EDI,1A //不確定00735EC8 0F95C0
Time of Update: 2018-12-05
ON_NOTIFY 處理 listControl 訊息 清單控制項的訊息映射同樣使用ON_NOTIFY宏,形式如同:ON_NOTIFY( wNotifyCode, id, memberFxn ),wNotifyCode為通知代碼,id為產生該訊息的視窗ID,memberFxn為處理函數,函數的原型如同void OnXXXList(NMHDR* pNMHDR, LRESULT*
Time of Update: 2018-12-05
GuiToolkit(開源,類似Visual Studio 2003風格)http://www.beyondata.com/default.htmGardenUI(免費,介面效果挺好的,XML,代碼 介面 分離)http://www.gardenui.com/CJLib(開源,免費,UNICODE編碼,是xtreme toolkit的前生,但xtreme
Time of Update: 2018-12-05
void CTestDlg::OnUpdateFileExit(CCmdUI* pCmdUI { pCmdUI-> Enable(FALSE); //沒有顯示為禁用. pCmdUI-> SetCheck(TRUE); // 沒有文字前顯示選定標記. pCmdUI-> SetRadio(TRUE); // 沒有在文字前顯示點. pCmdUI-> SetText( "Close ")
Time of Update: 2018-12-05
不要去花這個冤枉錢了,另外再附送一課徵途的多開原理.http://u.115.com/file/f794a8c007鄭重申明請勿將此視頻用於商業用途,否則導致一切後果與作者和網路傳播人員皆無關.還麻煩管理把這文章刪除了吧.http://www.3600gz.cn/thread-36597-1-1.html上面地址的這個文章,內容不是很全,少了多開原理,注意,這個多開原理適用於允許雙開或者四開,但不能更多開的大部分遊戲.初級篇_第一課http://u.115.com/file/f780a3ba1e
Time of Update: 2018-12-05
>>寫在前面本教程主要講解如何用按鍵精靈內建的模版編寫外掛程式.請大家在教程沒全部寫完之前不要跟貼,謝謝合作!需要的工具:VC6.0