난 그냥 이런 빈 양식의 consits 간단한 C# 응용 프로그램을 디버깅하는 WinDBG에서를 사용하여 중단 점을 삽입 할 수 없습니다 windbg를 선택한 다음에 windbg를 실행 :디버깅 .NET 응용 프로그램,
0:009> .cordll -ve -u -l
Automatically loaded SOS Extension
CLRDLL: Loaded DLL C:\Windows\Microsoft.NET\Framework64\v2.0.50727\mscordacwks.dll
CLR DLL status: Loaded DLL C:\Windows\Microsoft.NET\Framework64\v2.0.50727\mscordacwks.dll
을 그리고 테인 내가 SOS 확장을로드하고 확인 자사의로드 :
0:009> .loadby sos mscorwks
0:009> .chain
Extension DLL search Path:
C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\WINXP;C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\winext;C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\winext\arcade;C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\pri;C:\Program Files (x86)\Windows Kits\10\Debuggers\x64;C:\Users\username\AppData\Local\Dbg\EngineExtensions;C:\Program Files (x86)\Windows Kits\10\Debuggers\x64;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files\PuTTY\;C:\Program Files (x86)\Bitvise SSH Client;C:\Program Files\nodejs\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\Git\cmd;C:\Users\username\AppData\Local\Android\sdk\platform-tools;C:\Program Files (x86)\Nox\bin\;C:\Users\username\AppData\Local\Microsoft\WindowsApps;C:\Users\username\AppData\Roaming\npm;C:\Program Files (x86)\Nmap;C:\Program Files (x86)\mitmproxy\bin
Extension DLL chain:
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\sos: image 2.0.50727.8794, API 1.0.0, built Tue Jun 20 23:15:41 2017
[path: C:\Windows\Microsoft.NET\Framework64\v2.0.50727\SOS.dll]
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\SOS.dll: image 2.0.50727.8794, API 1.0.0, built Tue Jun 20 23:15:41 2017
[path: C:\Windows\Microsoft.NET\Framework64\v2.0.50727\SOS.dll]
dbghelp: image 10.0.15063.468, API 10.0.6, built Thu Jan 1 03:00:00 1970
[path: C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\dbghelp.dll]
ext: image 10.0.15063.468, API 1.0.0, built Thu Jan 1 03:00:00 1970
[path: C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\winext\ext.dll]
exts: image 10.0.15063.468, API 1.0.0, built Thu Jan 1 03:00:00 1970
[path: C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\WINXP\exts.dll]
uext: image 10.0.15063.468, API 1.0.0, built Thu Jan 1 03:00:00 1970
[path: C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\winext\uext.dll]
ntsdexts: image 10.0.15063.468, API 1.0.0, built Thu Jan 1 03:00:00 1970
[path: C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\WINXP\ntsdexts.dll]
그런 다음 .pdb
이있는 폴더와 소스 폴더에 디버깅 기호 경로를 설정합니다.
하지만 난 소스 파일을 열고 난 windbg를에 오류가 프로세스를 계속 다음 소스 라인에 중단 점을 설정하고 때 나는 그것이 휴식 것이 예상
0:009> g
Unable to insert breakpoint 3 at 00000000`008f001a, Win32 error 0n998
"Invalid access to memory."
bp3 at 00000000`008f001a failed
WaitForEvent failed
, 그리고 나에게 .net
어셈블러를 보여 하지만 항상 실패합니다. windbg를 사용하여 .net 응용 프로그램을 중단시키는 방법은 무엇입니까?
좋은 질문이지만 가장 중요한 부분이 누락되었습니다. 어떻게 중단 점을 설정 했습니까? –
@ThomasWeller 나는 windbg 메뉴를 열었습니다.'File' selected'Open Source File'이'Form1.cs'을 열었습니다. 소스 파일에서'InitializeComponent();'에 커서를 놓고 F9를 누릅니다. 줄이 빨갛게되므로 중단 점이 배치 된 것 같습니다. – YakibutaRamen