Vanara.PInvoke.SetupAPI 4.0.4

Prefix Reserved
dotnet add package Vanara.PInvoke.SetupAPI --version 4.0.4                
NuGet\Install-Package Vanara.PInvoke.SetupAPI -Version 4.0.4                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Vanara.PInvoke.SetupAPI" Version="4.0.4" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Vanara.PInvoke.SetupAPI --version 4.0.4                
#r "nuget: Vanara.PInvoke.SetupAPI, 4.0.4"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Vanara.PInvoke.SetupAPI as a Cake Addin
#addin nuget:?package=Vanara.PInvoke.SetupAPI&version=4.0.4

// Install Vanara.PInvoke.SetupAPI as a Cake Tool
#tool nuget:?package=Vanara.PInvoke.SetupAPI&version=4.0.4                

Vanara

Vanara.PInvoke.SetupAPI NuGet Package

Version Build status

PInvoke API (methods, structures and constants) imported from Windows SetupAPI.dll.

What is Vanara?

Vanara is a community project that contains various .NET assemblies which have P/Invoke functions, interfaces, enums and structures from Windows libraries. Each assembly is associated with one or a few tightly related libraries.

Issues?

First check if it's already fixed by trying the AppVeyor build. If you're still running into problems, file an issue.

Included in Vanara.PInvoke.SetupAPI

Functions Enumerations Structures
InstallHinfSection SetupAddInstallSectionToDiskSpaceList SetupAddSectionToDiskSpaceList SetupAddToDiskSpaceList SetupAddToSourceList SetupAdjustDiskSpaceList SetupBackupError SetupCancelTemporarySourceList SetupCloseFileQueue SetupCloseInfFile SetupCloseLog SetupCommitFileQueue SetupConfigureWmiFromInfSection SetupCopyError SetupCopyOEMInf SetupCreateDiskSpaceList SetupDecompressOrCopyFile SetupDefaultQueueCallback SetupDeleteError SetupDestroyDiskSpaceList SetupDiAskForOEMDisk SetupDiBuildClassInfoList SetupDiBuildClassInfoListEx SetupDiBuildDriverInfoList SetupDiCallClassInstaller SetupDiCancelDriverInfoSearch SetupDiChangeState SetupDiClassGuidsFromName SetupDiClassGuidsFromNameEx SetupDiClassNameFromGuid SetupDiClassNameFromGuidEx SetupDiCreateDeviceInfo SetupDiCreateDeviceInfoList SetupDiCreateDeviceInfoListEx SetupDiCreateDeviceInterface SetupDiCreateDeviceInterfaceRegKey SetupDiCreateDevRegKey SetupDiDeleteDeviceInfo SetupDiDeleteDeviceInterfaceData SetupDiDeleteDeviceInterfaceRegKey SetupDiDeleteDevRegKey SetupDiDestroyClassImageList SetupDiDestroyDeviceInfoList SetupDiDestroyDriverInfoList SetupDiDrawMiniIcon SetupDiEnumDeviceInfo SetupDiEnumDeviceInterfaces SetupDiEnumDriverInfo SetupDiGetActualModelsSection SetupDiGetActualSectionToInstall SetupDiGetActualSectionToInstallEx SetupDiGetClassBitmapIndex SetupDiGetClassDescription SetupDiGetClassDescriptionEx SetupDiGetClassDevPropertySheets SetupDiGetClassDevs SetupDiGetClassDevsEx SetupDiGetClassImageIndex SetupDiGetClassImageList SetupDiGetClassImageListEx SetupDiGetClassInstallParams SetupDiGetClassPropertyExW SetupDiGetClassPropertyKeys SetupDiGetClassPropertyKeysExW SetupDiGetClassPropertyW SetupDiGetClassRegistryProperty SetupDiGetCustomDeviceProperty SetupDiGetDeviceInfoListClass SetupDiGetDeviceInfoListDetail SetupDiGetDeviceInstallParams SetupDiGetDeviceInstanceId SetupDiGetDeviceInterfaceAlias SetupDiGetDeviceInterfaceDetail SetupDiGetDeviceInterfacePropertyKeys SetupDiGetDeviceInterfacePropertyW SetupDiGetDevicePropertyKeys SetupDiGetDevicePropertyW SetupDiGetDeviceRegistryProperty SetupDiGetDriverInfoDetail SetupDiGetDriverInstallParams SetupDiGetHwProfileFriendlyName SetupDiGetHwProfileFriendlyNameEx SetupDiGetHwProfileList SetupDiGetHwProfileListEx SetupDiGetINFClass SetupDiGetSelectedDevice SetupDiGetSelectedDriver SetupDiInstallClass SetupDiInstallClassEx SetupDiInstallDevice SetupDiInstallDeviceInterfaces SetupDiInstallDriverFiles SetupDiLoadClassIcon SetupDiLoadDeviceIcon SetupDiOpenClassRegKey SetupDiOpenClassRegKeyEx SetupDiOpenDeviceInfo SetupDiOpenDeviceInterface SetupDiOpenDeviceInterfaceRegKey SetupDiOpenDevRegKey SetupDiRegisterCoDeviceInstallers SetupDiRegisterDeviceInfo SetupDiRemoveDevice SetupDiRemoveDeviceInterface SetupDiRestartDevices SetupDiSelectBestCompatDrv SetupDiSelectDevice SetupDiSelectOEMDrv SetupDiSetClassInstallParams SetupDiSetClassPropertyExW SetupDiSetClassPropertyW SetupDiSetClassRegistryProperty SetupDiSetDeviceInstallParams SetupDiSetDeviceInterfaceDefault SetupDiSetDeviceInterfacePropertyW SetupDiSetDevicePropertyW SetupDiSetDeviceRegistryProperty SetupDiSetDriverInstallParams SetupDiSetSelectedDevice SetupDiSetSelectedDriver SetupDiUnremoveDevice SetupDuplicateDiskSpaceList SetupEnumInfSections SetupFindFirstLine SetupFindNextLine SetupFindNextMatchLine SetupFreeSourceList SetupGetBinaryField SetupGetFieldCount SetupGetFileCompressionInfo SetupGetFileCompressionInfoEx SetupGetFileQueueCount SetupGetFileQueueFlags SetupGetInfDriverStoreLocation SetupGetInfFileList SetupGetInfInformation SetupGetInfPublishedName SetupGetIntField SetupGetLineByIndex SetupGetLineCount SetupGetLineText SetupGetMultiSzField SetupGetNonInteractiveMode SetupGetSourceFileLocation SetupGetSourceFileSize SetupGetSourceInfo SetupGetStringField SetupGetTargetPath SetupGetThreadLogToken SetupInitDefaultQueueCallback SetupInitDefaultQueueCallbackEx SetupInitializeFileLog SetupInstallFile SetupInstallFileEx SetupInstallFilesFromInfSection SetupInstallFromInfSection SetupInstallServicesFromInfSection SetupInstallServicesFromInfSectionEx SetupIterateCabinet SetupLogError SetupLogFile SetupOpenAppendInfFile SetupOpenFileQueue SetupOpenInfFile SetupOpenLog SetupOpenMasterInf SetupPromptForDisk SetupPromptReboot SetupQueryDrivesInDiskSpaceList SetupQueryFileLog SetupQueryInfFileInformation SetupQueryInfOriginalFileInformation SetupQueryInfVersionInformation SetupQuerySourceList SetupQuerySpaceRequiredOnDrive SetupQueueCopy SetupQueueCopyIndirect SetupQueueCopySection SetupQueueDefaultCopy SetupQueueDelete SetupQueueDeleteSection SetupQueueRename SetupQueueRenameSection SetupRemoveFileLogEntry SetupRemoveFromDiskSpaceList SetupRemoveFromSourceList SetupRemoveInstallSectionFromDiskSpaceList SetupRemoveSectionFromDiskSpaceList SetupRenameError SetupScanFileQueue SetupSetDirectoryId SetupSetDirectoryIdEx SetupSetFileQueueAlternatePlatform SetupSetFileQueueFlags SetupSetNonInteractiveMode SetupSetPlatformPathOverride SetupSetSourceList SetupSetThreadLogToken SetupTermDefaultQueueCallback SetupTerminateFileLog SetupUninstallNewlyCopiedInfs SetupUninstallOEMInf SetupVerifyInfFile SetupWriteTextLog SetupWriteTextLogError SetupWriteTextLogInfLine DEVPROPSTORE DEVPROPTYPE CopyStyle DI_FLAGS DI_FLAGSEX DI_FUNCTION DI_REMOVEDEVICE DI_UNREMOVEDEVICE DIBCI DICD DICLASSPROP DICS DICS_FLAG DICUSTOMDEVPROP DIGCDP_FLAG DIGCF DIOCR DIOD DIODI DIREG DMI DNF FILE_COMPRESSION FILEOP FILEOP_RESULT IDF INF_STYLE INFINFO SCWMI SP_COPY SPCRP SPDIT SPDRP SPDSL SPFILELOG SPFILENOTIFY SPINST SPINT SPPSR SPQ_FLAG SPRDI SPREG SRCINFO SRCLIST LogSeverity SETDIRID SetupFileLogInfo SPLOGFILE SPQ_SCAN SPSVCINST SUOI DEVPROPCOMPKEY DEVPROPERTY DEVPROPKEY CABINET_INFO FILE_IN_CABINET_INFO FILEPATHS FILEPATHS_SIGNERINFO HDEVINFO HDSKSPC HINF HSPFILEQ INFCONTEXT SOURCE_MEDIA SP_ALTPLATFORM_INFO_V1 SP_ALTPLATFORM_INFO_V2 SP_ALTPLATFORM_INFO_V3 SP_CLASSIMAGELIST_DATA SP_CLASSINSTALL_HEADER SP_DETECTDEVICE_PARAMS SP_DEVICE_INTERFACE_DATA SP_DEVICE_INTERFACE_DETAIL_DATA SP_DEVINFO_DATA SP_DEVINFO_LIST_DETAIL_DATA SP_DEVINSTALL_PARAMS SP_DRVINFO_DATA_V2 SP_DRVINFO_DETAIL_DATA SP_DRVINSTALL_PARAMS SP_FILE_COPY_PARAMS SP_INF_INFORMATION SP_INF_SIGNER_INFO_V1 SP_INF_SIGNER_INFO_V2 SP_NEWDEVICEWIZARD_DATA SP_ORIGINAL_FILE_INFO SP_POWERMESSAGEWAKE_PARAMS SP_PROPCHANGE_PARAMS SP_PROPSHEETPAGE_REQUEST SP_REGISTER_CONTROL_STATUS SP_REMOVEDEVICE_PARAMS SP_SELECTDEVICE_PARAMS SP_TROUBLESHOOTER_PARAMS SP_UNREMOVEDEVICE_PARAMS HSPFILELOG SP_ALTPLATFORM_INFO
Product Compatible and additional computed target framework versions.
.NET net5.0 is compatible.  net5.0-windows was computed.  net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 is compatible.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net8.0-windows7.0 is compatible. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 is compatible. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net45 is compatible.  net451 was computed.  net452 was computed.  net46 was computed.  net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 is compatible.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (5)

Showing the top 5 NuGet packages that depend on Vanara.PInvoke.SetupAPI:

Package Downloads
Vanara.SystemServices

Classes for system related items derived from the Vanara PInvoke libraries. Includes extensions for Process (privileges and elavation), FileInfo (compression info), Shared Network Drives and Devices, and ServiceController (SetStartType) that pull extended information through native API calls.

Vanara.Library

The full set of packages associated with the Vanara PInvoke Libraries.

Vanara.PInvoke.CfgMgr32

PInvoke API (methods, structures and constants) imported from Windows CfgMgr32.dll.

Vanara.PInvoke.PortableDeviceApi

PInvoke API (methods, structures and constants) imported from Windows Portable Device (WPD) Api.

Vanara.PInvoke.NewDev

PInvoke API (methods, structures and constants) imported from Windows NewDev.dll.

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on Vanara.PInvoke.SetupAPI:

Repository Stars
dantmnf/MHC2
information about next generation color management in Windows
Version Downloads Last updated
4.0.4 1,125 9/13/2024
4.0.3 919 8/5/2024
4.0.2 857 6/24/2024
4.0.1 1,020 4/30/2024
4.0.0 416 3/29/2024
4.0.0-beta2 365 1/22/2024
4.0.0-beta 438 11/20/2023
3.4.17 4,499 10/18/2023
3.4.16 2,495 8/7/2023
3.4.15 4,885 5/18/2023
3.4.14 921 4/15/2023
3.4.13 2,151 2/4/2023
3.4.12 1,762 1/15/2023
3.4.11 4,032 11/15/2022
3.4.10 2,388 10/25/2022
3.4.9 2,687 10/3/2022
3.4.8 2,391 9/16/2022
3.4.7 2,405 9/3/2022
3.4.6 2,573 8/7/2022
3.4.5 7,216 7/17/2022
3.4.4 2,800 7/5/2022
3.4.3 2,614 6/14/2022
3.4.2 4,134 5/13/2022
3.4.1 2,474 5/5/2022
3.4.0 5,305 3/14/2022
3.3.15 4,892 12/27/2021
3.3.14 1,648 10/26/2021
3.3.13 1,190 9/30/2021
3.3.12 1,361 8/30/2021
3.3.11 7,562 7/22/2021
3.3.10 1,358 6/4/2021
3.3.9 1,622 5/7/2021
3.3.8 1,237 4/7/2021
3.3.7 982 3/24/2021
3.3.6 984 3/19/2021
3.3.5 985 3/1/2021
3.3.4 935 2/11/2021
3.3.3 942 2/3/2021
3.3.2 976 1/21/2021
3.3.1 1,027 1/20/2021

Currently implements:

Functions
InstallHinfSection SetupAddInstallSectionToDiskSpaceList SetupAddSectionToDiskSpaceList SetupAddToDiskSpaceList SetupAddToSourceList SetupAdjustDiskSpaceList SetupBackupError SetupCancelTemporarySourceList SetupCloseFileQueue SetupCloseInfFile SetupCloseLog SetupCommitFileQueue SetupConfigureWmiFromInfSection SetupCopyError SetupCopyOEMInf SetupCreateDiskSpaceList SetupDecompressOrCopyFile SetupDefaultQueueCallback SetupDeleteError SetupDestroyDiskSpaceList SetupDiAskForOEMDisk SetupDiBuildClassInfoList SetupDiBuildClassInfoListEx SetupDiBuildDriverInfoList SetupDiCallClassInstaller SetupDiCancelDriverInfoSearch SetupDiChangeState SetupDiClassGuidsFromName SetupDiClassGuidsFromNameEx SetupDiClassNameFromGuid SetupDiClassNameFromGuidEx SetupDiCreateDeviceInfo SetupDiCreateDeviceInfoList SetupDiCreateDeviceInfoListEx SetupDiCreateDeviceInterface SetupDiCreateDeviceInterfaceRegKey SetupDiCreateDevRegKey SetupDiDeleteDeviceInfo SetupDiDeleteDeviceInterfaceData SetupDiDeleteDeviceInterfaceRegKey SetupDiDeleteDevRegKey SetupDiDestroyClassImageList SetupDiDestroyDeviceInfoList SetupDiDestroyDriverInfoList SetupDiDrawMiniIcon SetupDiEnumDeviceInfo SetupDiEnumDeviceInterfaces SetupDiEnumDriverInfo SetupDiGetActualModelsSection SetupDiGetActualSectionToInstall SetupDiGetActualSectionToInstallEx SetupDiGetClassBitmapIndex SetupDiGetClassDescription SetupDiGetClassDescriptionEx SetupDiGetClassDevPropertySheets SetupDiGetClassDevs SetupDiGetClassDevsEx SetupDiGetClassImageIndex SetupDiGetClassImageList SetupDiGetClassImageListEx SetupDiGetClassInstallParams SetupDiGetClassPropertyExW SetupDiGetClassPropertyKeys SetupDiGetClassPropertyKeysExW SetupDiGetClassPropertyW SetupDiGetClassRegistryProperty SetupDiGetCustomDeviceProperty SetupDiGetDeviceInfoListClass SetupDiGetDeviceInfoListDetail SetupDiGetDeviceInstallParams SetupDiGetDeviceInstanceId SetupDiGetDeviceInterfaceAlias SetupDiGetDeviceInterfaceDetail SetupDiGetDeviceInterfacePropertyKeys SetupDiGetDeviceInterfacePropertyW SetupDiGetDevicePropertyKeys SetupDiGetDevicePropertyW SetupDiGetDeviceRegistryProperty SetupDiGetDriverInfoDetail SetupDiGetDriverInstallParams SetupDiGetHwProfileFriendlyName SetupDiGetHwProfileFriendlyNameEx SetupDiGetHwProfileList SetupDiGetHwProfileListEx SetupDiGetINFClass SetupDiGetSelectedDevice SetupDiGetSelectedDriver SetupDiInstallClass SetupDiInstallClassEx SetupDiInstallDevice SetupDiInstallDeviceInterfaces SetupDiInstallDriverFiles SetupDiLoadClassIcon SetupDiLoadDeviceIcon SetupDiOpenClassRegKey SetupDiOpenClassRegKeyEx SetupDiOpenDeviceInfo SetupDiOpenDeviceInterface SetupDiOpenDeviceInterfaceRegKey SetupDiOpenDevRegKey SetupDiRegisterCoDeviceInstallers SetupDiRegisterDeviceInfo SetupDiRemoveDevice SetupDiRemoveDeviceInterface SetupDiRestartDevices SetupDiSelectBestCompatDrv SetupDiSelectDevice SetupDiSelectOEMDrv SetupDiSetClassInstallParams SetupDiSetClassPropertyExW SetupDiSetClassPropertyW SetupDiSetClassRegistryProperty SetupDiSetDeviceInstallParams SetupDiSetDeviceInterfaceDefault SetupDiSetDeviceInterfacePropertyW SetupDiSetDevicePropertyW SetupDiSetDeviceRegistryProperty SetupDiSetDriverInstallParams SetupDiSetSelectedDevice SetupDiSetSelectedDriver SetupDiUnremoveDevice SetupDuplicateDiskSpaceList SetupEnumInfSections SetupFindFirstLine SetupFindNextLine SetupFindNextMatchLine SetupFreeSourceList SetupGetBinaryField SetupGetFieldCount SetupGetFileCompressionInfo SetupGetFileCompressionInfoEx SetupGetFileQueueCount SetupGetFileQueueFlags SetupGetInfDriverStoreLocation SetupGetInfFileList SetupGetInfInformation SetupGetInfPublishedName SetupGetIntField SetupGetLineByIndex SetupGetLineCount SetupGetLineText SetupGetMultiSzField SetupGetNonInteractiveMode SetupGetSourceFileLocation SetupGetSourceFileSize SetupGetSourceInfo SetupGetStringField SetupGetTargetPath SetupGetThreadLogToken SetupInitDefaultQueueCallback SetupInitDefaultQueueCallbackEx SetupInitializeFileLog SetupInstallFile SetupInstallFileEx SetupInstallFilesFromInfSection SetupInstallFromInfSection SetupInstallServicesFromInfSection SetupInstallServicesFromInfSectionEx SetupIterateCabinet SetupLogError SetupLogFile SetupOpenAppendInfFile SetupOpenFileQueue SetupOpenInfFile SetupOpenLog SetupOpenMasterInf SetupPromptForDisk SetupPromptReboot SetupQueryDrivesInDiskSpaceList SetupQueryFileLog SetupQueryInfFileInformation SetupQueryInfOriginalFileInformation SetupQueryInfVersionInformation SetupQuerySourceList SetupQuerySpaceRequiredOnDrive SetupQueueCopy SetupQueueCopyIndirect SetupQueueCopySection SetupQueueDefaultCopy SetupQueueDelete SetupQueueDeleteSection SetupQueueRename SetupQueueRenameSection SetupRemoveFileLogEntry SetupRemoveFromDiskSpaceList SetupRemoveFromSourceList SetupRemoveInstallSectionFromDiskSpaceList SetupRemoveSectionFromDiskSpaceList SetupRenameError SetupScanFileQueue SetupSetDirectoryId SetupSetDirectoryIdEx SetupSetFileQueueAlternatePlatform SetupSetFileQueueFlags SetupSetNonInteractiveMode SetupSetPlatformPathOverride SetupSetSourceList SetupSetThreadLogToken SetupTermDefaultQueueCallback SetupTerminateFileLog SetupUninstallNewlyCopiedInfs SetupUninstallOEMInf SetupVerifyInfFile SetupWriteTextLog SetupWriteTextLogError SetupWriteTextLogInfLine

Structures
CABINET_INFO DEVPROPCOMPKEY DEVPROPERTY DEVPROPKEY FILEPATHS FILEPATHS_SIGNERINFO FILE_IN_CABINET_INFO HDEVINFO HDSKSPC HINF HSPFILELOG HSPFILEQ INFCONTEXT SOURCE_MEDIA SP_ALTPLATFORM_INFO SP_ALTPLATFORM_INFO_V1 SP_ALTPLATFORM_INFO_V2 SP_ALTPLATFORM_INFO_V3 SP_CLASSIMAGELIST_DATA SP_CLASSINSTALL_HEADER SP_DETECTDEVICE_PARAMS SP_DEVICE_INTERFACE_DATA SP_DEVICE_INTERFACE_DETAIL_DATA SP_DEVINFO_DATA SP_DEVINFO_LIST_DETAIL_DATA SP_DEVINSTALL_PARAMS SP_DRVINFO_DATA_V2 SP_DRVINFO_DETAIL_DATA SP_DRVINSTALL_PARAMS SP_FILE_COPY_PARAMS SP_INF_INFORMATION SP_INF_SIGNER_INFO_V1 SP_INF_SIGNER_INFO_V2 SP_NEWDEVICEWIZARD_DATA SP_ORIGINAL_FILE_INFO SP_POWERMESSAGEWAKE_PARAMS SP_PROPCHANGE_PARAMS SP_PROPSHEETPAGE_REQUEST SP_REGISTER_CONTROL_STATUS SP_REMOVEDEVICE_PARAMS SP_SELECTDEVICE_PARAMS SP_TROUBLESHOOTER_PARAMS SP_UNREMOVEDEVICE_PARAMS