reactos/sdk/include/wdf/kmdf/1.17/wdfinstaller.h

166 lines
3.4 KiB
C

/*++
Copyright (c) Microsoft Corporation. All rights reserved.
_WdfVersionBuild_
Module Name:
WdfInstaller.h
Abstract:
Contains prototypes for the WDF installer support.
Author:
Environment:
kernel mode only
Revision History:
--*/
//
// NOTE: This header is generated by stubwork. Please make any
// modifications to the corresponding template files
// (.x or .y) and use stubwork to regenerate the header
//
#ifndef _WDFINSTALLER_H_
#define _WDFINSTALLER_H_
#ifndef WDF_EXTERN_C
#ifdef __cplusplus
#define WDF_EXTERN_C extern "C"
#define WDF_EXTERN_C_START extern "C" {
#define WDF_EXTERN_C_END }
#else
#define WDF_EXTERN_C
#define WDF_EXTERN_C_START
#define WDF_EXTERN_C_END
#endif
#endif
WDF_EXTERN_C_START
#if (NTDDI_VERSION >= NTDDI_WIN2K)
typedef struct _WDF_COINSTALLER_INSTALL_OPTIONS {
ULONG Size;
BOOL ShowRebootPrompt;
} WDF_COINSTALLER_INSTALL_OPTIONS, *PWDF_COINSTALLER_INSTALL_OPTIONS;
FORCEINLINE
VOID
WDF_COINSTALLER_INSTALL_OPTIONS_INIT(
_Out_ PWDF_COINSTALLER_INSTALL_OPTIONS ClientOptions
)
{
RtlZeroMemory(ClientOptions, sizeof(WDF_COINSTALLER_INSTALL_OPTIONS));
ClientOptions->Size = sizeof(WDF_COINSTALLER_INSTALL_OPTIONS);
}
//----------------------------------------------------------------------------
// To be called before (your) WDF driver is installed.
//----------------------------------------------------------------------------
ULONG
WINAPI
WdfPreDeviceInstall(
_In_ LPCWSTR InfPath,
_In_opt_ LPCWSTR InfSectionName
);
typedef
ULONG
(WINAPI *PFN_WDFPREDEVICEINSTALL)(
_In_ LPCWSTR InfPath,
_In_opt_ LPCWSTR InfSectionName
);
ULONG
WINAPI
WdfPreDeviceInstallEx(
_In_ LPCWSTR InfPath,
_In_opt_ LPCWSTR InfSectionName,
_In_ PWDF_COINSTALLER_INSTALL_OPTIONS ClientOptions
);
typedef
ULONG
(WINAPI *PFN_WDFPREDEVICEINSTALLEX)(
_In_ LPCWSTR InfPath,
_In_opt_ LPCWSTR InfSectionName,
_In_ PWDF_COINSTALLER_INSTALL_OPTIONS ClientOptions
);
//----------------------------------------------------------------------------
// To be called after (your) WDF driver is installed.
//----------------------------------------------------------------------------
ULONG
WINAPI
WdfPostDeviceInstall(
_In_ LPCWSTR InfPath,
_In_opt_ LPCWSTR InfSectionName
);
typedef
ULONG
(WINAPI *PFN_WDFPOSTDEVICEINSTALL)(
_In_ LPCWSTR InfPath,
_In_opt_ LPCWSTR InfSectionName
);
//----------------------------------------------------------------------------
// To be called before (your) WDF driver is removed.
//----------------------------------------------------------------------------
ULONG
WINAPI
WdfPreDeviceRemove(
_In_ LPCWSTR InfPath,
_In_opt_ LPCWSTR InfSectionName
);
typedef
ULONG
(WINAPI *PFN_WDFPREDEVICEREMOVE)(
_In_ LPCWSTR InfPath,
_In_opt_ LPCWSTR InfSectionName
);
//----------------------------------------------------------------------------
// To be called after (your) WDF driver is removed.
//----------------------------------------------------------------------------
ULONG
WINAPI
WdfPostDeviceRemove(
_In_ LPCWSTR InfPath,
_In_opt_ LPCWSTR InfSectionName
);
typedef
ULONG
(WINAPI *PFN_WDFPOSTDEVICEREMOVE)(
_In_ LPCWSTR InfPath,
_In_opt_ LPCWSTR InfSectionName
);
#endif // (NTDDI_VERSION >= NTDDI_WIN2K)
WDF_EXTERN_C_END
#endif // _WDFINSTALLER_H_