標籤:
參考文章:
1、http://www.abin.cn/?p=263
2、https://support.microsoft.com/zh-cn/kb/824344/zh-cn
Step 1:
方法一:使用WinDBG的全域標誌設定命令gflags.exe設定,在對話方塊中的Image File設定要調試的服務名稱,Debugger選擇設定調試器的路徑; (備忘:我在實際操作中,這個地方設定Debugger時出現寫註冊表錯誤,卸載360軟體解決問題。)
方法二:使用登錄編輯程式,開啟註冊表路徑:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options ,添加一個主鍵,名稱為要調試的服務名稱,如 MyService.exe,在該主鍵下再建立一個字串值,名稱為“Debugger”,值為調試器路徑;
Step 2:
設定要調試的服務與案頭互動:
(1)開啟“管理工具”,選擇“服務”,開啟服務管理視窗,選擇準備調試的服務名,右擊選擇“屬性”,選擇“登入”,勾選“允許服務與案頭互動”;
(2)使用登錄編輯程式,開啟註冊表路徑:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services \ServiceName(要調試的服務名),選擇“Type”,修改其值為:原值 OR 0x00000100(如原值為:0x00000010 OR 0x00000100 =0x00000110);
Step 3:
設定服務啟動逾時時間(系統預設為30秒),啟動登錄編輯程式,開啟註冊表路徑:HKEY_LOCAL_MACHINE\SYSTEM \CurrentControlSet\Control,建立DWORD值“ServicesPipeTimeout”,其值為欲設定的逾時時間,如設定 24小時,則值為86400000毫秒;
Step 4:
啟動服務準備調試,開啟“管理工具”,選擇“服務”,開啟服務管理視窗,選擇準備調試的服務名,右擊選擇“啟動”
Step 5:
啟動之後會彈出互動式Message Service視窗, 點擊“查看訊息”即可直接進入調試;
windows服務程式調試方法 - 啟動直接進入調試