Windows 10 컴퓨터에서 VBS(Visual Basic Script)를 실행하는 도중 STATUS_IN_PAGE_ERROR라는 오류 메시지와 함께 오류 코드 0xc0000006이 표시된다면, 이 글에서 소개하는 해결 방법을 통해 문제를 해결할 수 있습니다.
AppInit_DLLs는 다른 소프트웨어에 영향을 미치는 충돌 정보를 기록하는 레지스트리 키입니다. 이 키가 손상되면 시스템에 문제가 발생하여 STATUS_IN_PAGE_ERROR 오류가 나타날 수 있습니다.
0xc0000006 STATUS_IN_PAGE_ERROR 해결 방법
이 오류가 발생하면 AppInit_DLLs 레지스트리 값을 수정하는 것이 가장 효과적인 해결책입니다. 아래 단계를 순서대로 따라 진행해 보세요.
레지스트리 편집 작업이므로, 시작하기 전에 레지스트리 백업 또는 시스템 복원 지점 생성을 통해 만일의 사태에 대비하는 것이 좋습니다. 준비가 완료되면 다음 단계를 진행하세요.
- Windows 키 + R을 눌러 실행(Run) 대화 상자를 엽니다.
- 실행 대화 상자에 regedit를 입력하고 Enter 키를 눌러 레지스트리 편집기를 실행합니다.
- 아래 레지스트리 경로로 이동합니다.
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion\Windows
- 오른쪽 창에서 AppInit_DLLs 키를 두 번 클릭하여 속성 편집 창을 엽니다.
- 문자열 편집 창에서 값 데이터(Value data) 필드를 비워 둡니다.
- 확인을 클릭하여 변경 사항을 저장합니다.
- 레지스트리 편집기 창을 닫습니다.
- 변경 사항이 적용되도록 컴퓨터를 재부팅합니다.
재부팅 후 해당 스크립트를 다시 실행해 보세요. 오류가 정상적으로 해결되었을 것입니다.
Windows의 AppInit_DLLs란?
AppInit_DLLs는 시스템의 모든 사용자 모드 프로세스에 임의의 DLL 목록을 로드할 수 있도록 허용하는 메커니즘입니다.
레지스트리에서 이 키 아래에 저장된 값들은 AppInit_DLLs 인프라의 동작 방식을 결정하며, 해당 레지스트리 경로는 다음과 같습니다.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows
아래 표는 각 레지스트리 값의 의미를 설명합니다.
| 값 | 설명 | 예시 값 |
|---|---|---|
| LoadAppInit_DLLs (REG_DWORD) | AppInit_DLLs를 전역적으로 활성화 또는 비활성화합니다. | 0x0 – AppInit_DLLs가 비활성화됩니다. |
| 0x1 – AppInit_DLLs가 활성화됩니다. | ||
| AppInit_DLLs (REG_SZ) | 로드할 DLL 목록으로, 공백 또는 쉼표로 구분됩니다. DLL의 전체 경로는 짧은 이름(Short Names) 형식으로 지정해야 합니다. | C:\PROGRA~1\WID288~1\MICROS~1.DLL |
| RequireSignedAppInit_DLLs (REG_DWORD) | 코드 서명된 DLL만 로드하도록 제한합니다. | 0x0 – 모든 DLL을 로드합니다. |
| 0x1 – 코드 서명된 DLL만 로드합니다. |
Windows의 AppInit_DLLs 기능에는 새로운 코드 서명 요구 사항이 추가되었습니다. 이를 통해 시스템 안정성과 성능이 향상되며, 소프트웨어 출처에 대한 가시성도 개선됩니다.