WdfPreDeviceInstallEx 함수(wdfinstaller.h)

[KMDF에만 적용]

공동 설치 관리자의 WdfPreDeviceInstallEx 함수는 PnP(비 플러그 앤 플레이) 드라이버 설치 관리자가 드라이버의 커널 모드 서비스를 만들기 전에 공동 설치 관리자에 필요할 수 있는 모든 작업을 수행합니다.

구문

ULONG WdfPreDeviceInstallEx(
  [in]           LPCWSTR                          InfPath,
  [in, optional] LPCWSTR                          InfSectionName,
  [in]           PWDF_COINSTALLER_INSTALL_OPTIONS ClientOptions
);

매개 변수

[in] InfPath

드라이버의 INF 파일에 대한 디렉터리 경로를 포함하는 null로 끝나는 와이드 문자열에 대한 포인터입니다. 드라이버의 설치 관리자는 getCurrentDirectory를 호출하여 이 문자열을 가져올 수 있습니다. 이 문자열은 Microsoft Windows SDK 설명되어 있습니다.

[in, optional] InfSectionName

드라이버의 INF 파일에 Wdf-install-section 이름이 포함된 null로 끝나는 와이드 문자열에 대한 포인터입니다. 이 이름에 대한 자세한 내용은 KMDF 공동 설치 관리자 사용을 참조하세요. 이 포인터가 NULL이면 공동 설치 관리자는 이름에 WdfSection 을 사용합니다.

[in] ClientOptions

드라이버 지정 설치 옵션을 포함하는 호출자가 할당한 WDF_COINSTALLER_INSTALL_OPTIONS 형식 구조체에 대한 포인터입니다.

반환 값

WdfPreDeviceInstallEx 는 작업이 성공하면 ERROR_SUCCESS 반환합니다. 그렇지 않으면 함수는 Winerror.h에 정의된 추가 ERROR_XXX 값 중 하나를 반환합니다.

설명

비 PnP 디바이스의 프레임워크 기반 드라이버에 대한 설치 관리자는 설치 관리자가 CreateService를 호출하기 전에 WdfPreDeviceInstall 또는 WdfPreDeviceInstallEx를 호출해야 합니다.

공동 설치 관리자의 WdfPreDeviceInstallEx 함수의 주소를 가져오려면 설치 관리자가 LoadLibrary를 호출하여 공동 설치 관리자를 로드한 후 설치 관리자가 GetProcAddress를 호출해야 합니다.

공동 설치 관리자가 드라이버 설치를 완료하기 위해 컴퓨터를 다시 시작해야 한다고 결정하는 경우(일반적으로 이전 버전의 프레임워크가 이전에 설치되었기 때문) WdfPreDeviceInstallEx 함수를 사용하면 다음과 같이 사용자에게 컴퓨터를 다시 시작하라는 메시지가 표시되는 시기 또는 여부를 제어할 수 있습니다.

  • 설치 관리자가 WDF_COINSTALLER_INSTALL_OPTIONS 구조체의 ShowRebootPrompt 멤버를 TRUE로 설정하면 WdfPreDeviceInstallEx는 PnP 관리자에게 컴퓨터를 다시 시작해야 한다고 알리고 PnP 관리자는 사용자에게 다시 시작해야 한다는 메시지를 표시합니다. ShowRebootPrompt 멤버를 TRUE로 설정하는 것은 WdfPreDeviceInstall을 호출하는 것과 같습니다.
  • 설치 관리자가 WDF_COINSTALLER_INSTALL_OPTIONS 구조체의 ShowRebootPrompt 멤버를 FALSE로 설정하는 경우 WdfPreDeviceInstallEx는 PnP 관리자에게 다시 시작해야 한다는 사실을 알리지 않습니다. 대신 함수는 ERROR_SUCCESS_REBOOT_REQUIRED 반환합니다. 설치 관리자가 컴퓨터를 다시 시작할 시기 또는 여부를 결정할 수 있습니다.
비 PnP 디바이스의 프레임워크 기반 드라이버에 대한 WdfPreDeviceInstallEx 함수 및 설치 관리자에 대한 자세한 내용은 비 PnP 드라이버 설치를 참조하세요. CreateService, GetProcAddressLoadLibrary에 대한 자세한 내용은 Microsoft Windows SDK 설명서를 참조하세요.

예제

WdfPreDeviceInstallEx 함수를 사용하는 코드 예제는 NONPNP 샘플의 설치 관리자를 참조하세요.

요구 사항

요구 사항
대상 플랫폼 유니버설
최소 KMDF 버전 1.9
머리글 wdfinstaller.h(Wdfinstaller.h 포함)
라이브러리 해당 없음(KMDF 공동 설치 관리자 라이브러리에서 내보냅니다. 공동 설치 관리자 라이브러리의 파일 이름에 대한 자세한 내용은 KMDF 공동 설치 관리자 사용을 참조하세요.)

추가 정보

WdfPostDeviceInstall

WdfPreDeviceInstall