다음을 통해 공유


IoSetDevicePropertyData 함수(wdm.h)

IoSetDevicePropertyData 루틴은 디바이스 속성에 대한 현재 설정을 수정합니다.

구문

NTSTATUS IoSetDevicePropertyData(
  [in]           PDEVICE_OBJECT   Pdo,
  [in]           const DEVPROPKEY *PropertyKey,
  [in]           LCID             Lcid,
  [in]           ULONG            Flags,
  [in]           DEVPROPTYPE      Type,
  [in]           ULONG            Size,
  [in, optional] PVOID            Data
);

매개 변수

[in] Pdo

쿼리 중인 디바이스에 대한 PDO(물리적 디바이스 개체)에 대한 포인터입니다.

[in] PropertyKey

디바이스 속성 키를 지정하는 DEVPROPKEY 구조체에 대한 포인터입니다.

[in] Lcid

로캘 식별자입니다. 이 매개 변수를 언어별 LCID 값으로 설정하거나 LOCALE_NEUTRAL.

LOCALE_NEUTRAL LCID는 속성이 언어 중립적임을 지정합니다(즉, 어떤 언어와도 관련이 없음).

이 매개 변수를 LOCALE_SYSTEM_DEFAULT 또는 LOCALE_USER_DEFAULT 설정하지 마세요.

언어별 LCID 값에 대한 자세한 내용은 LCID 구조를 참조하세요.

[in] Flags

이 루틴에 의해 설정된 속성 값이 컴퓨터를 다시 시작할 때 유지되어야 하는 경우 이 매개 변수를 PLUGPLAY_PROPERTY_PERSISTENT 설정합니다. 그렇지 않으면 플래그 를 0으로 설정합니다.

Windows 8 및 Windows Server 2012 이상 운영 체제는플래그를 PLUGPLAY_PROPERTY_PERSISTENT 항상 전달되는 것처럼 처리합니다.

[in] Type

데이터 버퍼에 제공되는 데이터의 형식을 지정하는 DEVPROPTYPE 값입니다.

[in] Size

데이터가 가리키는 버퍼의 크기(바이트)입니다.

[in, optional] Data

디바이스 속성 데이터에 대한 포인터입니다. 지정된 속성을 삭제하려면 이 매개 변수를 NULL 로 설정합니다. DataNULL이 아닌 경우 루틴은 속성 값의 내부 복사본을 저장합니다. 호출이 반환된 후에도 Data 가 가리키는 버퍼가 유효한 상태를 유지할 필요가 없습니다.

반환 값

IoSetDevicePropertyData 는 호출이 성공하면 STATUS_SUCCESS 반환하거나 실패 시 적절한 NTSTATUS 코드를 반환합니다.

설명

이 루틴에서 사용할 수 있는 속성 형식을 보려면 에 대한 DEVPROP_TYPE_BYTE 및 인접 페이지를 참조하세요 DEVPROP_TYPE_*.

커널 모드 드라이버는 IoSetDevicePropertyData 루틴을 사용하여 통합 디바이스 속성 모델의 일부로 정의된 디바이스 속성을 수정합니다. 디바이스 속성에 대한 자세한 내용은 디바이스 속성을 참조하세요.

특정 로캘에 대한 속성을 삭제하려면 Data의 Lcid 및 NULL에서 언어별 LCID 값을 전달합니다.

모든 로캘에 대한 속성을 삭제하려면 데이터에서 LcidNULLLOCALE_NEUTRAL 전달합니다.

특정 로캘에 대한 속성을 수정하려면 Lcid 에서 언어별 LCID 값을 전달하고 Data에서 NULL 이 아닌 값을 전달 합니다.

모든 로캘에 대한 속성을 수정하려면 Lcid에서 LOCALE_NEUTRAL 전달하고 Data에서는 NULL이 아닌 값을 전달합니다.

Windows 8 및 Lcid의 Windows Server 2012 전달 LOCALE_NEUTRAL 다른 로캘처럼 처리됩니다.

드라이버는 IoGetDevicePropertyData 루틴을 사용하여 디바이스 속성의 현재 값을 가져올 수 있습니다.

IoSetDeviceProperty의 호출자는 시스템 스레드의 컨텍스트에서 IRQL <= APC_LEVEL 실행되어야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista부터 사용할 수 있습니다.
대상 플랫폼 유니버설
헤더 wdm.h(Wdm.h, Ntddk.h, Ntifs.h 포함)
라이브러리 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL
DDI 규정 준수 규칙 HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm)

추가 정보

DEVPROPKEY

DEVPROPTYPE

IoGetDevicePropertyData