2
메모리 덤프를 분석하기 위해 나는 CLR Memory Diagnostics 도구로 놀고 있습니다.ClrMD 메모리 덤프 시간 받기
WinDBG를 사용하여 덤프를 열면 .time
명령을 사용하여 덤프가 캡처 된 디버그 세션 시간을 가져올 수 있습니다.
누구나 ClrMD API를 사용하여 날짜를 알 수 있습니까?
메모리 덤프를 분석하기 위해 나는 CLR Memory Diagnostics 도구로 놀고 있습니다.ClrMD 메모리 덤프 시간 받기
WinDBG를 사용하여 덤프를 열면 .time
명령을 사용하여 덤프가 캡처 된 디버그 세션 시간을 가져올 수 있습니다.
누구나 ClrMD API를 사용하여 날짜를 알 수 있습니까?
이 작업을 해결하기 위해 다음과 같은 방법을 찾았지 만 DbgEng 사용에만 제한되어 있습니다.
열기 덤프 파일 및 DbgEng을 지정하면 동일한 스레드에서 시작하는 것을 수행 할 수 있도록 (시간을 타겟으로 얻을 수
DataTarget.LoadCrashDump(pathToMemoryDumpFile, CrashDumpReader.DbgEng));
사용 IDebugControl2
COM 인터페이스 (그래서 IDebugClient가 사용됩니다) 세션) : 접근 방식을 사용하여 날짜 시간에
uint secondsSinceUnix;
var dbgCtrl2 = (IDebugControl2)sessionContext.DataTarget.DebuggerInterface;
dbgCtrl2.GetCurrentTimeDate(out secondsSinceUnix);
변환 secondsSinceUnix
는 here을 설명했다.
출력으로 메모리 덤프 생성 (또는 첨부 시간)의 UTC 날짜 시간이 표시됩니다.
그것은 나 : 당신이 일 자신의 일부를 수행에 대한 예리한 경우
, 당신은 [DumpReader] 적응할 수 (잘했다 https://github.com/Microsoft/dotnetsamples/ blob/master/Microsoft.Diagnostics.Runtime/CLRMD/ClrMemDiag/Utilities/DumpReader.cs) 클래스를 사용하여 SystemInfo 미니 덤프 스트림을 포함하고 거기에서 해당 정보를 가져옵니다. –