怎樣自動啟動VC偵錯程式除錯被另外一個程式啟動的程式
除錯中總會遇到這樣的情況,比如,需要除錯一個被另外一個程序啟動的程式。最簡單的方法莫過於直接在IDE中Attach到程序,但是這樣的方法做一次還行。要是一直需要除錯,編譯後需要再除錯,就會讓你抓狂。
平時安裝有VC IDE的機器一定會碰到這樣的情況:如果程式有crash,會彈出一個JIT的除錯對話方塊,詢問使用何種偵錯程式進行除錯。這種情況同樣會出現在使用dump檔案時。這個對話方塊也是我們今天需要用到的。
如果需要除錯一個被另外程序啟動的程序,那麼需要讓這個被啟動的執行緒能啟動偵錯程式,方法如下:
假定我們需要除錯的應用程式名稱為myapp.exe
1. 開啟登錄檔
2. 在HKEY_LOCAL_MACHINE\Software\Microsoftware\Windows NT\CurrentVersion\Image File Execution Options中尋找myapp.exe資料夾
3. 如果這個資料夾不存在,那麼就新建一個,例如:myapp.exe
4. 在資料夾裡新建一個字串鍵,名稱為debugger,值為vsjitdebugger.exe
5. 如果使用的不是VC偵錯程式,那麼需要在環境變數中新增這個exe的啟動路徑
執行你需要被除錯的程式試試吧,爽了吧!
相關推薦
[原創]怎樣自動啟動VC偵錯程式除錯被另外一個程式啟動的程式
除錯中總會遇到這樣的情況,比如,需要除錯一個被另外一個程序啟動的程式。最簡單的方法莫過於直接在IDE中Attach到程序,但是這樣的方法做一次還行。要是一直需要除錯,編譯後需要再除錯,就會讓你抓狂。 平時安裝有VC IDE的機器一定會碰到這樣的情況:如果程式有crash,會彈出一個JIT的除錯對話方塊
怎樣自動啟動VC偵錯程式除錯被另外一個程式啟動的程式
除錯中總會遇到這樣的情況,比如,需要除錯一個被另外一個程序啟動的程式。最簡單的方法莫過於直接在IDE中Attach到程序,但是這樣的方法做一次還行。要是一直需要除錯,編譯後需要再除錯,就會讓你抓狂。 平時安裝有VC IDE的機器一定會碰到這樣的情況:如果程式有crash,會彈出一個JIT的除錯對話方塊,詢問
程式異常VC偵錯程式無法定位的處理
最近除錯程式發現空指標老無法定位, 使用一個最簡單的main函式做空指標檢查也一樣, 具體症狀見圖 pdb載入是正常的, 但是堆疊沒顯示如此簡單的空指標訪問位置. Google了以下 解決方法: Debug->Exception中將所有異常勾選即可 不知道哪裡的設定導致如此詭異的問題, 害
修改執行緒名稱,並在VC偵錯程式中顯示
#define MS_VC_EXCEPTION 0x406d1388typedef struct tagTHREADNAME_INFO{ DWORD dwType; // must be 0x1000 LPCSTR szName; // pointer to na
讓VC偵錯程式正確顯示UTF-8字串
預設的, VC偵錯程式只能正常顯示ANSI字串及UNICODE字串, 而UTF-8字串及其他格式則無法顯示 這裡無需編寫外掛及修改配置檔案,只需要將要顯示的字串拉到Watch中,並在變數後面新增,s8即可顯示 --> 同樣型別的功能也應該很熟悉 ,數字 將變數拆分為陣列顯示, 數字是要顯示
dubbo服務器啟動後報錯端口被占用
cat 解釋 auto 目錄結構 pan 端口 maven工程 元素 二次 環境:maven工程,ssm框架,tomcat 情景:dubbo的服務註冊方服務器啟動 問題原因: 經過網絡查找,結果是Root WebApplicationContext 啟動了兩次
啟動adb 報錯:埠被佔用
啟動adb 報錯: C:\Users\Administrator>adb devices List of devices attached * daemon not running. star
C語言/C++程式設計打造表白程式——教你做一個浪漫的程式設計師
Microsoft Foundation Classes Graphics Device Interface Application Programming Interface MFC 是微軟公司的基礎類庫,封裝了大量的Windows API函式,能夠快速的開發一些桌面應
Java程式設計師的第一個Python小程式:京東暢銷書榜爬蟲
畢業後的5年多時間裡一直在Java的生態體系裡遊走,很少觸碰其他非Java技術棧。職業安全感隱隱的警告我不能一直逗留在自己的舒適區裡,不能被大時代拋棄。時下最火的莫過於AI, 而AI時代則帶火了AI第一語言Python,那就學學Python。學習一門新技術的最佳
關於除錯----在單步執行某個程式的中間修改原始碼,當修改程式碼之後移動到下一步時,偵錯程式自動在執行下一語句之前重新編譯
在單步執行某個程式的中間修改原始碼,當修改程式碼之後移動到下一步時,偵錯程式自動在執行下一語句之前重新編譯。所以說如果編譯過程中出了問題,修改了程式,即使不手動停止重新啟動程式,直接執行的話也沒有問題的,編譯器會預設重新編譯啟動。
VS中“無法啟動除錯 沒有正確安裝偵錯程式”錯誤解決方案
試圖執行專案時出錯:無法啟動除錯 沒有正確安裝偵錯程式當你遇到“試圖執行專案時出錯:無法啟動除錯 沒有正確安裝偵錯程式。請執行安裝程式安裝或修復偵錯程式”,請嘗試下面的操作可以解決你的問題: 1、請確定你的作業系統是否執行在debug模式下,此時VS.NET將不能除錯。 2、
[轉]如何在程式啟動的時候將偵錯程式附加上去
有時,可能需要除錯由另一個程序啟動的應用程式的啟動程式碼。 這樣的示例包括服務和自定義設定操作。 在這些情況下,可以讓偵錯程式在應用程式啟動時啟動並自動附加。 設定應用程式以自動啟動偵錯程式 啟動登錄檔編輯器 (regedit)。 在“登錄檔編輯器”中開啟
自己動手編寫一個Linux偵錯程式系列之4 ELF檔案格式與DWARF除錯格式
目錄 在上一節中,你已經聽說了DWARF除錯格式,它是程式的除錯資訊,是一種可以更好理解原始碼的方式,而不只是解析程式。今天我們將討論原始碼級除錯資訊的細節,以準備在本教程後面的部分中使用它。 系列索引 準備工作 斷點的設定 暫存器和記憶體 ELF檔案格式
[Win32]一個偵錯程式的實現-------除錯事件與除錯迴圈
前言 程式設計師離不開偵錯程式,它可以動態顯示程式的執行過程,對於解決程式問題有極大的幫助。如果你和我一樣對偵錯程式的工作原理很感興趣,那麼這一系列文章很適合你,這些文章記錄了我開發一個偵錯程式雛形的過程,希望對你有幫助。或許我寫的程式碼很拙劣,還請大家多多見諒! 這
使用pdb模組除錯Python Python 偵錯程式之pdb
在Python中,我們需要debug時,有三種方式: 加log語句。最簡單的方式是新增print()語句來輸出我們想要獲知的狀態或者變數,好處是簡單容易操作,壞處是debug完了之後,還需要將print語句註釋掉;進階的方法是使用logging模組寫log語句,這樣做的好處是:能把log語句分級,並且
[Win32]一個偵錯程式的實現(二)除錯事件的處理
1 void OnOutputDebugString(const OUTPUT_DEBUG_STRING_INFO* pInfo) { 2 3 BYTE* pBuffer = (BYTE*)malloc(pInfo->nDebugStringLength); 4 5 SIZE_T
如何在程式啟動的時候將偵錯程式附加上去
但有些情況下,你是不能控制被除錯程式(Debuggee)在什麼時候啟動的。例如在DCOM環境裡面,DCOM客戶端(Client)可以通過呼叫CoCreateInstanceEx(…, CTX_LOCAL_SERVER, …)啟動DCOM伺服器(Server),啟動DCOM伺服器的過程是在COM庫中進行的,你沒
VS2005啟動偵錯程式很慢的解決辦法
不知從何時開始,用VS2005斷點除錯啟動特別慢,而且不同的機器表現還不一樣。網上搜索到了解決辦法: I don’t know if I’ve been spoilt by the lazy symbol loading in WinDbg, but it seems
無法從命令列或偵錯程式啟動服務,必須首先安裝Windows服務(使用installutil.exe),然後用ServerExplorer、Windows伺服器管理工具或NET START命令啟動它
註冊啟動服務: Windows伺服器註冊停止 開啟CMD視窗--開始--執行--輸入CMD,回車 註冊服務命令 cd C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727 InstallUtil.exe D:\HardWareServerService.exe (
巧用瀏覽器F12偵錯程式定位系統前後端bug
做測試的小夥伴可能用過httpwatch,firebug,fiddler,charles等抓包(資料包)工具,但實際上除了這些還有一個簡單實用並的抓包工具,那就是瀏覽器的F12偵錯程式。 httpwatch,firebug都是瀏覽器的外掛,需要額外下載,fiddler,charles也需要額外下載安裝包另行