다음을 통해 공유


PSCSIWMI_SET_DATAITEM 콜백 함수(scsiwmi.h)

미니포트 드라이버의 HwScsiWmiSetDataItem 루틴은 데이터 블록 인스턴스의 단일 데이터 항목을 변경하기 위해 호출됩니다. 이 루틴은 선택 사항입니다.

참고 SCSI 포트 드라이버 및 SCSI 미니포트 드라이버 모델은 나중에 변경되거나 사용할 수 없습니다. 대신 Storport 드라이버 사용하고 storport 미니포트 드라이버 모델을 것이 좋습니다.
 

통사론

PSCSIWMI_SET_DATAITEM PscsiwmiSetDataitem;

BOOLEAN PscsiwmiSetDataitem(
  [in] PVOID DeviceContext,
  [in] PSCSIWMI_REQUEST_CONTEXT RequestContext,
  [in] ULONG GuidIndex,
  [in] ULONG InstanceIndex,
  [in] ULONG DataItemId,
  [in] ULONG BufferSize,
  [in] PUCHAR Buffer
)
{...}

매개 변수

[in] DeviceContext

ScsiPortWmiDispatchFunction전달된 미니포트 드라이버 정의 컨텍스트 값을 가리킵니다.

[in] RequestContext

미니포트 드라이버가 ScsiPortWmiDispatchFunction전달한 SCSIWMI_REQUEST_CONTEXT 구조를 가리킵니다.

[in] GuidIndex

미니포트 드라이버가 ScsiPortWmiDispatchFunction전달한 SCSI_WMILIB_CONTEXT 구조체의 GUID 목록에 대한 인덱스의 데이터 블록을 지정합니다.

[in] InstanceIndex

GuidIndex 지정된 블록에 여러 인스턴스가 있는 경우 InstanceIndex 인스턴스를 지정합니다.

[in] DataItemId

설정할 데이터 항목의 ID를 지정합니다.

[in] BufferSize

Buffer버퍼의 크기(바이트)를 지정합니다.

[in] Buffer

데이터 항목에 대한 새 값이 포함된 버퍼를 가리킵니다.

반환 값

HwScsiWmiSetDataItem 요청이 보류 중인 경우 SRB_STATUS_PENDING 반환하거나 요청이 완료된 경우 0이 아닌 SRB 상태 값을 반환합니다. 이 루틴에서 반환된 SRB 상태 값은 HwScsiWmiSetDataItem전달된 값과 동일합니다. 반환 값 데이터 형식이 BOOLEAN이지만 HwScsiWmiSetDataItem 루틴은 실제로 SRB 상태 값을 반환합니다.

발언

미니포트 드라이버는 Function 멤버가 SRB_FUNCTION_WMI 설정된 SRB를 받으면 초기화된 SCSI_WMILIB_CONTEXT 구조에 대한 포인터를 사용하여 ScsiPortWmiDispatchFunction 호출하고 MinorFunction Srb->WmiSubFunction 설정합니다. MinorFunction 데이터 블록 인스턴스의 항목 변경 요청을 나타내는 경우 SCSI 포트 드라이버는 미니포트 드라이버의 HwScsiWmiSetDataItem 루틴을 호출합니다.

미니포트 드라이버가 HwScsiWmiSetDataItem 루틴을 구현하지 않는 경우 미니포트 드라이버가 ScsiPortWmiDispatchFunction전달하는 SCSI_WMILIB_CONTEXT SetWmiDataItem NULL 설정해야 합니다. 이 경우 포트 드라이버는 호출자에게 SRB_STATUS_ERROR 반환합니다.

요청이 보류되지 않으면 미니포트 드라이버는 HwScsiWmiSetDataItem 콜백에서 ScsiPortWmiPostProcess 호출해야 합니다. 그렇지 않으면 미니포트 드라이버는 요청이 실제로 완료될 때 ScsiPortWmiPostProcess 호출해야 합니다. 미니포트 드라이버는 적절한 SrbStatus 값으로 ScsiPortWmiPostProcess 호출해야 합니다.

항목이 읽기 전용인 경우 미니포트 드라이버는 SRB_STATUS_ERROR 사용하여 ScsiPortWmiPostProcess 호출합니다. 그렇지 않으면 미니포트 드라이버가 항목을 변경하고 SRB_STATUS_SUCCESS ScsiPortWmiPostProcess 호출합니다.

요구 사항

요구
대상 플랫폼 바탕 화면
헤더 scsiwmi.h(Scsiwmi.h 포함)

참고 항목

SCSI_WMILIB_CONTEXT

ScsiPortWmiDispatchFunction

ScsiPortWmiPostProcess