[英]Search through memory in VS2017
我在 Visual Studio 2017 中打開了我的 C++ 應用程序的 minidump 文件。該轉儲是一個因訪問沖突而崩潰的程序。 我懷疑堆/堆棧損壞,所以我在內存/反匯編窗口中花費了大量時間,試圖解釋堆棧。
如果我可以在內存中搜索某個值(例如函數調用的返回地址),那將非常方便。 我知道 WinDbg 可以做到,但它目前沒有正確設置符號路徑,我寧願留在一個調試器中。
我發現這個鏈接說 Visual Studio 2010 支持在即時窗口中輸入類似.S -D 0x20B4EC L100 0x12EC9275
的內容,但是當我在 VS2017 中嘗試時,我只是得到expected an expression
。
我錯過了什么嗎?
(注意,雖然我現在正在分析故障轉儲,但在調試實時程序時它似乎也不起作用)
澄清
這是一個很好的教程: https : //docs.microsoft.com/zh-cn/visualstudio/debugger/using-dump-files?view=vs-2019
基本上,要查看轉儲中的內存有一些硬性要求:
如果不滿足這些條件,則只會得到堆棧跟蹤,也許還會得到一些堆棧變量。
編輯:具有監視和變量的堆棧跟蹤是您要搜索相同的內存。 沒有實時調試。 這是崩潰的快照。
根據您發布的鏈接:“此選項僅對運行時模式下的 C++ 項目有效。”
它不適用於故障轉儲(我在搜索如何執行類似操作時發現了這一點)。 聽起來Windbg是唯一的方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.