📄 setupapi.h
字号:
#define SPINST_BITREG 0x00000020#define SPINST_REGSVR 0x00000040#define SPINST_UNREGSVR 0x00000080#define SPINST_PROFILEITEMS 0x00000100#if (_SETUPAPI_VER >= 0x0501)#define SPINST_COPYINF 0x00000200#define SPINST_ALL 0x000003ff#else#define SPINST_ALL 0x000001ff#endif#define SPINST_SINGLESECTION 0x00010000#define SPINST_LOGCONFIG_IS_FORCED 0x00020000#define SPINST_LOGCONFIGS_ARE_OVERRIDES 0x00040000#define SPOST_NONE 0#define SPOST_PATH 1#define SPOST_URL 2#define SPOST_MAX 3#define SPPSR_SELECT_DEVICE_RESOURCES 1#define SPPSR_ENUM_BASIC_DEVICE_PROPERTIES 2#define SPPSR_ENUM_ADV_DEVICE_PROPERTIES 3#define SPQ_SCAN_FILE_PRESENCE 0x00000001#define SPQ_DELAYED_COPY 0x00000001#define SPQ_SCAN_FILE_VALIDITY 0x00000002#define SPQ_SCAN_USE_CALLBACK 0x00000004#define SPQ_SCAN_USE_CALLBACKEX 0x00000008#define SPQ_SCAN_INFORM_USER 0x00000010#define SPQ_SCAN_PRUNE_COPY_QUEUE 0x00000020#define SPRDI_FIND_DUPS 0x00000001#define SPSVCINST_TAGTOFRONT 0x00000001#define SPSVCINST_ASSOCSERVICE 0x00000002#define SPSVCINST_DELETEEVENTLOGENTRY 0x00000004#define SPSVCINST_NOCLOBBER_DISPLAYNAME 0x00000008#define SPSVCINST_NOCLOBBER_STARTTYPE 0x00000010#define SPSVCINST_NOCLOBBER_ERRORCONTROL 0x00000020#define SPSVCINST_NOCLOBBER_LOADORDERGROUP 0x00000040#define SPSVCINST_NOCLOBBER_DEPENDENCIES 0x00000080#define SPSVCINST_NOCLOBBER_DESCRIPTION 0x00000100#define SPSVCINST_STOPSERVICE 0x00000200#define SPWPT_SELECTDEVICE 0x00000001#define SPWP_USE_DEVINFO_DATA 0x00000001#define SRCINFO_PATH 1#define SRCINFO_TAGFILE 2#define SRCINFO_DESCRIPTION 3#define SRCINFO_FLAGS 4#define SRCLIST_TEMPORARY 0x00000001#define SRCLIST_NOBROWSE 0x00000002#define SRCLIST_SYSTEM 0x00000010#define SRCLIST_USER 0x00000020#define SRCLIST_SYSIFADMIN 0x00000040#define SRCLIST_SUBDIRS 0x00000100#define SRCLIST_APPEND 0x00000200#define SRCLIST_NOSTRIPPLATFORM 0x00000400#ifndef RC_INVOKEDtypedef PVOID HINF;typedef PVOID HDSKSPC;typedef PVOID HDEVINFO;typedef PVOID HSPFILEQ;typedef PVOID HSPFILELOG;typedef UINT DI_FUNCTION;typedef enum { SetupFileLogSourceFilename, SetupFileLogChecksum, SetupFileLogDiskTagfile, SetupFileLogDiskDescription, SetupFileLogOtherInfo, SetupFileLogMax} SetupFileLogInfo;typedef struct _INFCONTEXT { PVOID Inf; PVOID CurrentInf; UINT Section; UINT Line;} INFCONTEXT, *PINFCONTEXT;typedef struct _SP_INF_INFORMATION { DWORD InfStyle; DWORD InfCount; BYTE VersionData[ANYSIZE_ARRAY];} SP_INF_INFORMATION, *PSP_INF_INFORMATION;typedef struct _SP_ALTPLATFORM_INFO { DWORD cbSize; DWORD Platform; DWORD MajorVersion; DWORD MinorVersion; WORD ProcessorArchitecture; WORD Reserved;} SP_ALTPLATFORM_INFO, *PSP_ALTPLATFORM_INFO;typedef struct _SP_ORIGINAL_FILE_INFO_A { DWORD cbSize; CHAR OriginalInfName[MAX_PATH]; CHAR OriginalCatalogName[MAX_PATH];} SP_ORIGINAL_FILE_INFO_A, *PSP_ORIGINAL_FILE_INFO_A;typedef struct _SP_ORIGINAL_FILE_INFO_W { DWORD cbSize; WCHAR OriginalInfName[MAX_PATH]; WCHAR OriginalCatalogName[MAX_PATH];} SP_ORIGINAL_FILE_INFO_W, *PSP_ORIGINAL_FILE_INFO_W;typedef struct _FILEPATHS_A { PCSTR Target; PCSTR Source; UINT Win32Error; DWORD Flags;} FILEPATHS_A, *PFILEPATHS_A;typedef struct _FILEPATHS_W { PCWSTR Target; PCWSTR Source; UINT Win32Error; DWORD Flags;} FILEPATHS_W, *PFILEPATHS_W;typedef struct _SOURCE_MEDIA_A { PCSTR Reserved; PCSTR Tagfile; PCSTR Description; PCSTR SourcePath; PCSTR SourceFile; DWORD Flags;} SOURCE_MEDIA_A, *PSOURCE_MEDIA_A;typedef struct _SOURCE_MEDIA_W { PCWSTR Reserved; PCWSTR Tagfile; PCWSTR Description; PCWSTR SourcePath; PCWSTR SourceFile; DWORD Flags;} SOURCE_MEDIA_W, *PSOURCE_MEDIA_W;typedef struct _CABINET_INFO_A { PCSTR CabinetPath; PCSTR CabinetFile; PCSTR DiskName; USHORT SetId; USHORT CabinetNumber;} CABINET_INFO_A, *PCABINET_INFO_A;typedef struct _CABINET_INFO_W { PCWSTR CabinetPath; PCWSTR CabinetFile; PCWSTR DiskName; USHORT SetId; USHORT CabinetNumber;} CABINET_INFO_W, *PCABINET_INFO_W;typedef struct _FILE_IN_CABINET_INFO_A { PCSTR NameInCabinet; DWORD FileSize; DWORD Win32Error; WORD DosDate; WORD DosTime; WORD DosAttribs; CHAR FullTargetName[MAX_PATH];} FILE_IN_CABINET_INFO_A, *PFILE_IN_CABINET_INFO_A;typedef struct _FILE_IN_CABINET_INFO_W { PCWSTR NameInCabinet; DWORD FileSize; DWORD Win32Error; WORD DosDate; WORD DosTime; WORD DosAttribs; WCHAR FullTargetName[MAX_PATH];} FILE_IN_CABINET_INFO_W, *PFILE_IN_CABINET_INFO_W;typedef struct _SP_FILE_COPY_PARAMS_A { DWORD cbSize; HSPFILEQ QueueHandle; PCSTR SourceRootPath; PCSTR SourcePath; PCSTR SourceFilename; PCSTR SourceDescription; PCSTR SourceTagfile; PCSTR TargetDirectory; PCSTR TargetFilename; DWORD CopyStyle; HINF LayoutInf; PCSTR SecurityDescriptor;} SP_FILE_COPY_PARAMS_A, *PSP_FILE_COPY_PARAMS_A;typedef struct _SP_FILE_COPY_PARAMS_W { DWORD cbSize; HSPFILEQ QueueHandle; PCWSTR SourceRootPath; PCWSTR SourcePath; PCWSTR SourceFilename; PCWSTR SourceDescription; PCWSTR SourceTagfile; PCWSTR TargetDirectory; PCWSTR TargetFilename; DWORD CopyStyle; HINF LayoutInf; PCWSTR SecurityDescriptor;} SP_FILE_COPY_PARAMS_W, *PSP_FILE_COPY_PARAMS_W;typedef struct _SP_DEVINFO_DATA { DWORD cbSize; GUID ClassGuid; DWORD DevInst; ULONG_PTR Reserved;} SP_DEVINFO_DATA, *PSP_DEVINFO_DATA;typedef struct _SP_DEVICE_INTERFACE_DATA { DWORD cbSize; GUID InterfaceClassGuid; DWORD Flags; ULONG_PTR Reserved;} SP_DEVICE_INTERFACE_DATA, *PSP_DEVICE_INTERFACE_DATA;/* For backward compatability */typedef SP_DEVICE_INTERFACE_DATA SP_INTERFACE_DEVICE_DATA, *PSP_INTERFACE_DEVICE_DATA;typedef struct _SP_DEVICE_INTERFACE_DETAIL_DATA_A { DWORD cbSize; CHAR DevicePath[ANYSIZE_ARRAY];} SP_DEVICE_INTERFACE_DETAIL_DATA_A, *PSP_DEVICE_INTERFACE_DETAIL_DATA_A;typedef struct _SP_DEVICE_INTERFACE_DETAIL_DATA_W { DWORD cbSize; WCHAR DevicePath[ANYSIZE_ARRAY];} SP_DEVICE_INTERFACE_DETAIL_DATA_W, *PSP_DEVICE_INTERFACE_DETAIL_DATA_W;/* For backward compatability */typedef SP_DEVICE_INTERFACE_DETAIL_DATA_A SP_INTERFACE_DEVICE_DETAIL_DATA_A, *PSP_INTERFACE_DEVICE_DETAIL_DATA_A;typedef SP_DEVICE_INTERFACE_DETAIL_DATA_W SP_INTERFACE_DEVICE_DETAIL_DATA_W, *PSP_INTERFACE_DEVICE_DETAIL_DATA_W;typedef struct _SP_DEVINFO_LIST_DETAIL_DATA_A { DWORD cbSize; GUID ClassGuid; HANDLE RemoteMachineHandle; CHAR RemoteMachineName[SP_MAX_MACHINENAME_LENGTH];} SP_DEVINFO_LIST_DETAIL_DATA_A, *PSP_DEVINFO_LIST_DETAIL_DATA_A;typedef struct _SP_DEVINFO_LIST_DETAIL_DATA_W { DWORD cbSize; GUID ClassGuid; HANDLE RemoteMachineHandle; WCHAR RemoteMachineName[SP_MAX_MACHINENAME_LENGTH];} SP_DEVINFO_LIST_DETAIL_DATA_W, *PSP_DEVINFO_LIST_DETAIL_DATA_W;typedef UINT (CALLBACK* PSP_FILE_CALLBACK_A)(PVOID,UINT,UINT_PTR,UINT_PTR);typedef UINT (CALLBACK* PSP_FILE_CALLBACK_W)(PVOID,UINT,UINT_PTR,UINT_PTR);typedef struct _SP_DEVINSTALL_PARAMS_A { DWORD cbSize; DWORD Flags; DWORD FlagsEx; HWND hwndParent; PSP_FILE_CALLBACK_A InstallMsgHandler; PVOID InstallMsgHandlerContext; HSPFILEQ FileQueue; ULONG_PTR ClassInstallReserved; DWORD Reserved; CHAR DriverPath[MAX_PATH];} SP_DEVINSTALL_PARAMS_A, *PSP_DEVINSTALL_PARAMS_A;typedef struct _SP_DEVINSTALL_PARAMS_W { DWORD cbSize; DWORD Flags; DWORD FlagsEx; HWND hwndParent; PSP_FILE_CALLBACK_W InstallMsgHandler; PVOID InstallMsgHandlerContext; HSPFILEQ FileQueue; ULONG_PTR ClassInstallReserved; DWORD Reserved; WCHAR DriverPath[MAX_PATH];} SP_DEVINSTALL_PARAMS_W, *PSP_DEVINSTALL_PARAMS_W;typedef struct _SP_CLASSINSTALL_HEADER { DWORD cbSize; DI_FUNCTION InstallFunction;} SP_CLASSINSTALL_HEADER, *PSP_CLASSINSTALL_HEADER;typedef struct _SP_ENABLECLASS_PARAMS { SP_CLASSINSTALL_HEADER ClassInstallHeader; GUID ClassGuid; DWORD EnableMessage;} SP_ENABLECLASS_PARAMS, *PSP_ENABLECLASS_PARAMS;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -