原创 在X64位機器上捕捉32位程序的進程的內存鏡像文件要點
見:在X64位機器上捕捉32位程序的進程的內存鏡像文件要點 主要是32位託管程序在64位機器上跑,取DUMP時,最好也用32位工具取DUMP,否則用WinDbg調試時可能看到的信息不準確,或者根本看不出什麼信息。或者,可以嘗試使用
原创 同步或異步調用EXE(創建子進程並重定向子進程的輸入、輸出)
工作將要調用第三方的EXE完成一些操作,這些EXE類似CMD命令。因此,閒暇之餘寫了個類來調用EXE,並寫了個DEMO,界面如下圖: 這類似的例子網上很多,我這個版本可以設置超時時長,若在指定的時間內子進程還未退出,則結束掉
原创 控件佈局通用解決方案
你是否遇到過這樣的問題:用編譯器拖出一些控件放到對話框上,併合理安排好了位置;但編譯運行,改變對話框的大小後,所有控件的位置都亂了,讓人感覺非常糟糕。如果控件不太多,你可以嘗試手寫代碼定位每個控件的位置,但若是控件數量以十或百爲單位計
原创 WinDbg重建堆棧
某些情況下,抓取到dump分析到異常後,卻發現堆棧並不對,不能有效的定位到程序崩潰的地方,這個時候就需要重建一下堆棧。 可以參考:HOW TO: Find the Problem Exception Stack When You
原创 teamviewer v_p_n+xp v_p_n服務實現在家訪問公司內部局域網
原文地址:teamviewer v_p_n+xp v_p_n服務實現在家訪問公司內部局域網 我的需求與作者是一樣一樣的,公司工作機IP爲172.16.136.x,公司服務器IP有172.16.136.x網段、172.16.135.
原创 名字修飾約定extern "C"與extern "C++"淺析
所謂名字修飾約定,就是指變量名、函數名等經過編譯後重新輸出名稱的規則。 比如源代碼中函數名稱爲int Func(int a,int b),經過編譯後名稱可能爲?Func@@YAHHH@Z、?Func@@YGHHH@Z、_Func@
原创 windows路徑操作API函數
路徑截斷與合併函數 PathRemoveArgs 去除路徑的參數 PathRemoveBackslash 去除路徑最後的反斜槓“\” PathAddBackslash
原创 另類的文件夾加密(批處理實現)
之前看到有網友把日本兩人劇情片放在諸如“日本文化交流”、“英語四六級”等文件夾裏,或者建很多個很深的文件夾,然後放到其中一個文件夾內,一般人看到就不會想翻的。閒來無事,就寫了個批處理來實現。 此批處理可以實現每層新建指定個數的文件
原创 ADO更新MYSQL BLOB字段備註
項目中不乏使用MYSQL數據庫,但是操作BLOB字段都是用Hibernate完成的。後用C++寫了個工具,在幾個數據庫之前倒換數據,在向MYSQL數據庫更新BLOB字段時遇到了困難,經過一天不懈的努力,終於解決了。 遇到的錯誤包括
原创 編譯階段打印宏內容
對於大型C/C++工程,由於宏定義可能散落在各個頭文件和Makefile當中。同時條件編譯又是大型工程常用的技巧,所以宏定義的大量存在,給代碼閱讀增加了難度,如果搞不清楚宏定義的情況就無法掌握程序的執行流程。最簡單的辦法就是使用pri
原创 關於__stdcall和__cdecl調用方式的理解
__stdcall和__cdecl都是函數調用約定關鍵字,先給出這兩者的區別,然後舉實例分析: __stdcall:參數由右向左壓入堆棧;堆棧由函數本身清理。 __cdecl:參數也是由右向左壓入堆棧;但堆棧由調用者清理。
原创 文件多層MD5加密工具(附VC6源碼)
大學時代與同學聊到最簡單的加密方法,談到直接修改文件前幾個字節,就可以讓一些文件打不開。 因此,一時興起,就寫了這麼個工具。 工具簡單,操作也不多說。附上源碼,供參考。 下載地址:文件多層MD5加密工具(附VC6源碼)
原创 線程注入、HOOK APIs(附VC6源碼)
工作關係,想HOOK並修改一些API,使得不支持某些設備的第三方工具可以正常運行,因此花時間寫了這麼個工具。比如ReadFile時,某些設備不支持指定的緩存大小(如512KB),可以HOOK ReadFile,把緩存大小修改爲更小,
原创 爲快捷方式文件(lnk文件)右鍵菜單添加“打開所在文件夾”
想打開快捷方式所在的文件夾,在Windows Server平臺下,可以點擊鼠標右鍵,選擇“打開文件位置”。但在非Windows Server平臺下(樓主本人使用的XP系統),卻沒有這個選項,只有右擊鼠標,選擇“屬性”,然後在文件屬性對
原创 Oracle、DB2、MySql、SQLServer JDBC驅動
四種數據庫JDBC驅動,還列出了連接的Class驅動名和Url Pattern,DB2包括Type 2、Type 3和Type 4三種模式。注意驅動包名稱的大小寫。 Oralce連接驅動包名和URL PATTERN爲:oracl