PnpSurpriseRemove 규칙(wdm)
PnpSurpriseRemove 규칙은 드라이버가 IRP_MN_SURPRISE_REMOVAL 요청을 처리하는 동안 IoDeleteDevice 또는 IoDetachDevice를 호출하지 않도록 지정합니다.
PnP 관리자는 IRP_MN_SURPRISE_REMOVAL 요청을 보내 I/O 작업에 디바이스를 더 이상 사용할 수 없으며 컴퓨터에서 예기치 않게 제거되었을 수 있음을 드라이버에 알립니다.
- 모든 PnP 드라이버는 IRP_MN_SURPRISE_REMOVAL 요청을 처리해야 합니다.
- 드라이버는 IRP_MN_SURPRISE_REMOVAL IRP가 성공하고 디바이스에 열려 있는 모든 핸들이 닫히기 전까지는 디바이스 개체에서 IoDeleteDevice 또는 IoDetachDevice 를 호출해서는 안 됩니다.
- 그런 다음 PnP 관리자는 디바이스 스택에 IRP_MN_REMOVE_DEVICE 요청을 보냅니다. IRP 제거에 대한 응답으로 드라이버는 해당 디바이스 개체를 스택에서 분리하고 삭제합니다.
드라이버가 IRP_MN_SURPRISE_REMOVAL 요청에 응답하는 방법에 대한 자세한 내용은 IRP_MN_SURPRISE_REMOVAL 요청 처리를 참조하세요.
드라이버 모델: WDM
테스트 방법
컴파일 시 |
---|
정적 드라이버 검증 도구 를 실행하고 PnpSurpriseRemove 규칙을 지정합니다. 다음 단계를 사용하여 코드 분석을 실행합니다.자세한 내용은 정적 드라이버 검증 도구로 드라이버에서 결함 찾기를 참조하세요. |
적용 대상
추가 정보
확인 및 코드 분석 도구를 사용하여 드라이버 분석IRP_MN_SURPRISE_REMOVAL 요청 처리IRP_MN_SURPRISE_REMOVAL IRP_MN_REMOVE_DEVICE