2015-09-25 62 views
0

我有一個從Visual Studio構建的EXE,我想清除或只刪除PDB文件名的路徑部分。我正在尋找一個工具在PE的調試目錄中進行此調整,而不使用十六進制編輯器。許多人建議BinPlace,但我無法得到這個工作。我還沒有看到實際用於此目的的binplace命令行。其他Microsoft工具已被建議,除命令行幫助外,這些工具幾乎沒有文檔。命令行幫助也指出這不是這些工具的用途(例如pdbstr)。再次,提出這些建議的人不會發布命令行使用信息,並且由於這些工具沒有記錄在案,所以我回到了原點。在這種情況下,重新鏈接對我來說不是一種選擇,但我意識到改變這些信息的鏈接器開關。是否有任何工具可用於清除EXE中的PDB路徑信息,或者是否有可用的binplace命令行?如何清除發佈中的PDB字符串VC++版本

回答

0

peupdate可以在這裏下載:

http://bytepointer.com/tools/index.htm#peupdate

此工具可用於列出,刪除或更改PDB串可執行模塊中。下面的示例清除整個PDB串(路徑和文件名):

peupdate -c <module_path> 

若要去除PDB路徑和離開PDB文件名允許調試模塊時,如果符號路徑正確設置(例如,「C符號查找,以仍然工作:\ joeblow \ test.pdb」變爲 「test.pdb」):

peupdate -s <module_path> 

要更改PDB路徑:(任意字符串)

peupdate -u <new_path> <module_path>