dll除錯是個麻煩事,如果專門寫乙個exe去除錯dll比較麻煩,現在提供乙個利用python指令碼除錯dll的辦法。
環境要求:
python 2.7.14 32位
vs2010
vs2010 新建乙個dll工程,命名為test.dll,其中有乙個匯出函式test,使用def檔案匯出:
exports
test
函式內容為:
void test(char* psz,int nlen)
for (int i=0;i現在要除錯此dll,方法如下
1.在debug目錄新建test.py,內容如下:
import binascii
import ctypes
raw_input() #為了讓指令碼執行時停在這裡
test_str="******************************************"
dll = ctypes.cdll.loadlibrary('test.dll')
print dll
test_encode = dll.test
test_encode.argtypes = [ctypes.c_char_p,ctypes.c_int]
test_encode(test_str,len(test_str))
print test_str
2.vs配置如下:
3.在dll生成目錄下執行cmd命令:
python test.py
然後執行vs2010除錯模式,此時vs2010狀態如下:
回到cmd視窗,按下enter鍵繼續執行python指令碼。
此時vs2010成功斷了下來,可以除錯了。
執行結束,字串全部變成k
cmd下執行結果如下:
如何提高VS2010的效能,VS2010不再卡
教大家幾個技巧可以稍微讓你覺得它沒那麼卡!一 vs2010選項視覺體驗設定 工具 選項 環境 視覺體驗的勾選都去掉。不解釋,你懂得。不過還是建議開啟硬體加速 二 禁用intellisense 工具 選項 文字編輯器 c c 高階 禁用intellisense設為true 這個功能很好用。相較於vis...
給VS2010自動設定模板,加頭注釋
很多程式設計師都會需要頭注釋。比如說作者是誰之類的。首先你找到你自己的 vs2010安裝目錄 右鍵點搜尋 輸入關鍵字class.zip 搜出來 最終開啟class.cs 編輯加上注釋。儲存。就ok 以後每次新建類就會有注釋了,對,就是這麼簡單 另外,類庫web或winform都是不同的 web的在w...
給VS2010自動設定模板,加頭注釋
很多程式設計師都會需要頭注釋。比如說作者是誰之類的。首先你找到你自己的 vs2010安裝目錄 右鍵點搜尋 輸入關鍵字class.zip 搜出來 最終開啟class.cs 編輯加上注釋。儲存。就ok 以後每次新建類就會有注釋了,對,就是這麼簡單 另外,類庫web或winform都是不同的 web的在w...