SerCx2InitializeDeviceInit 함수(sercx.h)
SerCx2InitializeDeviceInit 메서드를 사용하면 직렬 컨트롤러에 대한 프레임워크 디바이스 개체를 만드는 동안 SerCx2(직렬 프레임워크 확장) 버전 2가 드라이버 프레임워크에 확장 관련 속성을 등록할 수 있습니다.
구문
NTSTATUS SerCx2InitializeDeviceInit(
[in, out] PWDFDEVICE_INIT DeviceInit
);
매개 변수
[in, out] DeviceInit
KMDF(커널 모드 드라이버 프레임워크)가 프레임워크 디바이스 개체를 만드는 데 사용하는 정보를 저장하는 불투명 구조체인 WDFDEVICE_INIT 구조체에 대한 포인터입니다. 직렬 컨트롤러 드라이버는 이 구조체에 대한 포인터를 드라이버의 EvtDriverDeviceAdd 콜백 함수에 대한 입력 매개 변수로 받습니다.
반환 값
SerCx2InitializeDeviceInit 는 호출이 성공하면 STATUS_SUCCESS 반환합니다. 가능한 오류 반환 값에는 다음 상태 코드가 포함됩니다.
반환 코드 | 설명 |
---|---|
|
메서드가 잘못된 IRQL에서 호출되었거나 DeviceInit 매개 변수가 NULL입니다. |
|
요청된 작업을 수행할 수 있는 리소스가 부족합니다. |
설명
직렬 컨트롤러 드라이버는 직렬 컨트롤러에 대한 WDFDEVICE 개체를 만들기 전에 EvtDriverDeviceAdd 콜백 함수에서 이 메서드를 호출해야 합니다.
SerCx2InitializeDeviceInit 는 드라이버의 WDFDEVICE_INIT 구조에 확장 관련 정보를 연결합니다. 이 정보를 통해 SerCx2는 직렬 컨트롤러 드라이버를 대신하여 특정 작업을 수행할 수 있습니다. 예를 들어 SerCx2는 클라이언트가 직렬 컨트롤러에 보내는 I/O 요청을 받습니다.
직렬 컨트롤러 드라이버는 직렬 컨트롤러를 나타내는 프레임워크 디바이스 개체를 만들기 전과 SerCx2InitializeDevice 메서드를 호출하여 디바이스 개체 초기화를 완료하기 전에 SerCx2InitializeDeviceInit 를 호출해야 합니다. 드라이버는 WdfDeviceCreate 와 같은 메서드를 호출하여 디바이스 개체를 만듭니다.
SerCx2InitializeDeviceInit 는 커널 모드 드라이버와 사용자 모드 드라이버가 모두 SerCx2에 I/O 요청을 보낼 수 있도록 하는 기본 보안 설명자를 설정합니다. 설명자를 사용하면 애플리케이션이 관리자 권한으로 실행되는 경우에만 이러한 요청을 보낼 수 있습니다. 이 설명자를 지정하기 위해 SerCx2는 다음 SDDL 문자열을 사용합니다.
"D:P(A;;GA;;;SY)(A;;GA;;;BA)(A;;GA;;;UD)"
필요한 경우 직렬 컨트롤러 드라이버는 원하는 보안 설명자를 사용하여 WdfDeviceInitAssignSDDLString 메서드를 호출하여 기본 설정을 재정의할 수 있습니다. 드라이버는 SerCx2InitializeDeviceInit를 호출한 후 WdfDeviceCreate를 호출하기 전에 WdfDeviceInitAssignSDDLString을 호출해야 합니다. SDDL 문자열에 대한 자세한 내용은 디바이스 개체용 SDDL을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 8.1 시작해서 사용할 수 있습니다. |
대상 플랫폼 | 유니버설 |
헤더 | sercx.h |
IRQL | PASSIVE_LEVEL |
추가 정보
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기