다음을 통해 공유


Logger.exe 사용

Logger를 활성화하는 한 가지 방법은 독립 실행형 Logger.exe 프로그램을 실행하는 것입니다. 이는 기본적으로 단일 대상만 사용할 수 있는 매우 작은 디버거입니다. 실행하려면 명령줄에 대상 애플리케이션의 이름을 포함합니다.

logger Target 

활성화되면 지정된 애플리케이션을 로드하고 대상 애플리케이션에 코드를 삽입합니다. 이 코드는 대상 애플리케이션 프로세스에서 Logexts.dll 로드하고 초기화하는 루틴으로 이동합니다. 이를 "대상 애플리케이션에 로거 삽입"이라고 합니다.

Logger.exe 유틸리티와 Logexts.dll 모듈은 이 로거 차량의 두 가지 구성 요소입니다. 출력 파일 핸들, 현재 범주 마스크 및 로그 출력 버퍼에 대한 포인터를 포함하는 메모리의 공유 섹션을 통해 통신합니다.

로거(디버거)라는 제목의 창이 나타납니다. 이 창에는 로거의 진행률이 표시됩니다.

설정 변경 대화 상자

초기화가 완료되고 초기 표시가 완료되면 설정 변경 대화 상자가 나타납니다. 이를 통해 로거 설정을 구성할 수 있습니다. 다양한 설정은 여기에 설명되어 있습니다.

API 설정
이 목록에는 사용 가능한 API 범주가 표시됩니다. 강조 표시된 범주가 기록됩니다. 강조 표시되지 않은 범주는 그렇지 않습니다. 로거를 처음 실행하면 모든 범주가 강조 표시됩니다. 그러나 후속 실행에서 로거는 지정된 대상 애플리케이션에 대해 선택된 범주를 추적합니다.

범주를 사용하지 않도록 설정하면 더 이상 성능 오버헤드가 없도록 해당 범주의 모든 API에 대한 후크가 제거됩니다. COM 후크는 언제든지 다시 사용하도록 설정할 수 없으므로 제거되지 않습니다.

특정 범주만 사용하도록 설정하면 프로그램이 Windows와 갖는 특정 유형의 상호 작용(예: 파일 작업)에만 관심이 있는 경우에 유용할 수 있습니다. 이렇게 하면 로그 파일 크기가 줄어들고 로거가 프로세스의 실행 속도에 미치는 영향도 줄어듭니다.

로깅
이 섹션에는 라디오 사용사용 안 함 단추가 포함되어 있습니다. 로깅을 사용하지 않도록 설정하면 프로그램을 자유롭게 실행할 수 있도록 모든 API 후크가 제거됩니다. COM 후크는 언제든지 다시 사용하도록 설정할 수 없으므로 제거되지 않습니다.

포함/제외 목록
이 섹션에서는 모듈 포함/제외 목록을 제어합니다. 특정 모듈 또는 모듈 집합에서 만들어진 함수 호출만 기록하는 것이 바람직한 경우가 많습니다. 이를 용이하게 하기 위해 Logger를 사용하면 모듈 포함 목록 또는 모듈 제외 목록을 지정할 수 있습니다. instance 경우 하나 또는 두 개의 모듈에서만 호출을 기록하려는 경우 포함 목록을 사용합니다. 짧은 모듈 목록을 제외한 모든 모듈의 호출을 기록하려는 경우 제외 목록을 사용합니다. Logexts.dll 및 Kernel32.dll 모듈은 로거가 로그할 수 없으므로 항상 제외됩니다.

버퍼 플러시
이 단추는 현재 출력 버퍼를 플러시합니다. 성능 고려 사항으로 로그 출력은 출력 버퍼가 가득 찬 경우에만 디스크로 플러시됩니다. 기본적으로 버퍼는 2144바이트입니다.

버퍼 메모리는 대상 애플리케이션에서 관리되므로 대상 애플리케이션에 액세스 위반 또는 복구할 수 없는 다른 오류가 있는 경우 디스크의 로그 파일에 버퍼를 자동으로 쓰지 않습니다. 이러한 경우 대상 애플리케이션의 창을 활성화하고 F12 키를 눌러 이 대화 상자를 다시 가져옵니다. 그런 다음 버퍼 플러시를 누릅니다. 이 작업을 수행하지 않으면 가장 최근에 로그된 함수가 로그 파일에 표시되지 않을 수 있습니다.

이동
이렇게 하면 대상 애플리케이션이 실행되기 시작합니다.

대상 애플리케이션 실행

설정을 선택한 후 이동을 선택합니다. 대화 상자가 닫히면 대상 애플리케이션이 실행되기 시작합니다.

대상 애플리케이션의 창을 활성화하고 F12 키를 누르면 로거로 중단됩니다. 이렇게 하면 대상 애플리케이션이 중지되고 설정 변경 대화 상자가 다시 나타납니다. 원하는 경우 설정을 변경한 다음 이동을 눌러 실행을 계속할 수 있습니다.

원하는 만큼 대상 애플리케이션을 실행하도록 할 수 있습니다. 정상적으로 종료되거나 오류로 인해 종료되면 로깅이 중지되고 다시 시작할 수 없습니다.

종료하려면 파일 | 을 선택합니다. 종료 하고 예를 선택합니다. 대상 애플리케이션이 계속 실행 중인 경우 종료됩니다.

Logger.exe 제한 사항

Logger.exe 도구를 통해 로거를 실행하면 .lgv 파일이라는 하나의 출력 파일만 생성됩니다. 텍스트 파일이 작성되지 않습니다. 그러나 크기가 0인 .txt 파일이 만들어집니다. 이전에 디버거에서 작성한 텍스트 로그를 덮어쓸 수 있습니다.

출력 파일은 항상 데스크톱의 LogExts 하위 디렉터리에 배치됩니다. 이 위치는 변경할 수 없습니다.

디버거를 통해 로거를 실행하고 Logexts.dll 경우 이러한 제한 사항이 적용되지 않습니다.