1. 새 프로젝트 만들기 → Empty WDM Driver
2. 프로젝트 생성 후 .inf 파일 삭제
3. 프로젝트에 main.cpp 추가
4. IDE → 보기 → 다른 창 → 속성 관리자 클릭
5. Debug | x64 선택 후 우 클릭 → 새 프로젝트 속성 시트 추가 → 속성 시트(.props) 추가
6. 추가 한 속성 시트 우 클릭 → 속성 클릭
7. 공용 속성 → 사용자 매크로 → 매크로 추가
이름 : DisableKernelFlag
값 : true
8. 프로젝트 → 속성 → 구성 속성 → C/C++ → 코드 생성 → C++ 예외 처리 가능 → 예(/EHsc)
9. 프로젝트 → 속성 → 구성 속성 → 일반 → C++ 언어 표준 → 미리 보기 - ISO C++23 표준
10. x64 Native Tools Command Prompt for VS 2022 실행
11. vcrtl 다운로드 및 vcrtl 프로젝트 실행
git clone https://github.com/avakar/vcrtl
cd vcrtl
cmake .
vcrtl.sln
12. vcrtl 프로젝트 → 속성 → 구성 속성 → 일반 → C++ 언어 표준 → 미리 보기 - ISO C++23 표준
13. vcrtl 빌드 및 산출물 .lib을 내 프로젝트에 복사
14. 내 프로젝트 → 속성 → 구성 속성 → 링커 → 입력 → 추가 종속성 → vcrtl_driver.lib
15. main.cpp 작성 및 빌드
#include <ntifs.h>
EXTERN_C VOID DriverUnload(PDRIVER_OBJECT DriverObject)
{
UNREFERENCED_PARAMETER(DriverObject);
}
EXTERN_C NTSTATUS DriverEntry(PDRIVER_OBJECT DriverObject, PUNICODE_STRING RegPath)
{
UNREFERENCED_PARAMETER(RegPath);
DriverObject->DriverUnload = DriverUnload;
try {
throw 1;
}
catch (int i) {
KdPrint(("catch");
}
return STATUS_SUCCESS;
}
'Windows > Kernel Driver' 카테고리의 다른 글
| Visual Studio 2022 커널 드라이버 템플릿 소개 (0) | 2025.10.02 |
|---|---|
| 드라이버 숨기기 (OBJECT_DIRECTORY) (0) | 2020.10.22 |
| OBJECT_HEADER or DRIVER_OBJECT에서 OBJECT_HEADER_NAME_INFO 얻는 방법 (0) | 2020.10.22 |
| 드라이버 숨기기 (LDR_DATA_TABLE_ENTRY) (0) | 2020.10.13 |
| 코드서명 없이 WDK 드라이버 실행하기 (Windows 10 64비트) (3) | 2020.03.19 |