SpbTargetGetFileObject 함수(spbcx.h)
SpbTargetGetFileObject 메서드는 입력 매개 변수로 열려 있는 대상 디바이스에 대한 SPBTARGET 핸들을 허용하고 이 대상에 WDFFILEOBJECT 핸들을 반환합니다.
통사론
WDFFILEOBJECT SpbTargetGetFileObject(
[in] SPBTARGET Target
);
매개 변수
[in] Target
SPBTARGET 버스의 대상 디바이스에 대한 핸들입니다.
반환 값
SpbTargetGetFileObject 버스의 열린 대상 디바이스에 WDFFILEOBJECT 핸들을 반환합니다. 대상에 대한 연결이 EvtSpbTargetDisconnect 이벤트 콜백에 의해 닫힌 경우 메서드는 NULL을 반환합니다.
발언
컨트롤러 드라이버는 이 메서드를 호출하여 버스의 열린 대상 디바이스에 대한 WDFFILEOBJECT 핸들을 가져올 수 있습니다. SPB 컨트롤러 드라이버는 이러한 핸들이 필요한 WDF 메서드에 대한 입력 매개 변수로 이 핸들을 사용할 수 있습니다.
SpbTargetGetFileObject 대상에 대한 WDFFILEOBJECT 핸들을 닫은 경우에만 NULL을 반환하지만 닫히기 전에 SPB 컨트롤러 드라이버는 SBPTARGET 개체에 대한 추가 참조를 사용하여 수명을 연장했습니다.
연결이 닫혀 있고 SPB 컨트롤러 드라이버가 SPBTARGET 개체에 대한 참조를 보유하지 않는 경우 SBPTARGET 핸들은 더 이상 유효하지 않습니다. 잘못된 핸들을 SpbTargetGetFileObject 전달하면 버그 검사가 발생합니다.
SpbTargetGetFileObject WDFFILEOBJECT 핸들을 반환한 후에는 다른 개체(예: 활성 I/O 요청)가 예기치 않게 닫히지 않도록 WDFFILEOBJECT 개체에 대한 참조를 보유하지 않는 한 대상 연결이 열린 상태로 유지된다는 보장은 없습니다. 이 메서드는 가장 유용하며, 따라서 대상 연결이 열려 있을 때 호출될 가능성이 가장 높습니다. 일반적으로 이러한 호출은 EvtSpbTargetConnect 및 EvtSpbTargetDisconnect 콜백 중 및 I/O 요청을 처리하는 동안 발생합니다.
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 8부터 사용할 수 있습니다. |
대상 플랫폼 | 보편적 |
헤더 | spbcx.h |
라이브러리 | Spbcxstubs.lib |
IRQL | <= DISPATCH_LEVEL |