我試圖使用WinDBG調試一個示例。首先我刪除了「WinDBGSample.pdb」,然後我試圖在main()
的入口處設置一個斷點,但是我失敗了。無法在00401000處插入斷點0,Win32錯誤0n299
我不知道我的選擇有什麼問題。如果你知道,請給我一些建議。
錯誤細節:
起始地址的main()
:
我試圖使用WinDBG調試一個示例。首先我刪除了「WinDBGSample.pdb」,然後我試圖在main()
的入口處設置一個斷點,但是我失敗了。無法在00401000處插入斷點0,Win32錯誤0n299
我不知道我的選擇有什麼問題。如果你知道,請給我一些建議。
錯誤細節:
起始地址的main()
:
我相信這是告訴你,00401000是不是一個有效的地址,因此還需要設置一個使用'bu'的未解決的斷點,然後一旦該地址可用,它將設置斷點。
使用bp main
而不是硬編碼地址。該程序可能被加載到不同的地址。 Hans評論說,ASLR可以改變模塊的起始地址。如果由於某種原因您不能使用PDB文件,請使用lm
命令查看模塊的基址,並根據該值計算main
的位置。
Google「地址空間佈局隨機化」。 – 2012-01-15 16:17:46