Something went wrong. Try again.
Reactos
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694#ifndef _SETUPAPI_H_#define _SETUPAPI_H_
#include <commctrl.h>#if defined(_WIN64)#include <pshpack8.h>#else#include <pshpack1.h>#endif#ifdef __cplusplusextern "C" {#endif
#ifndef _SETUPAPI_#define WINSETUPAPI DECLSPEC_IMPORT#else#define WINSETUPAPI#endif
#define LINE_LEN 256#define MAX_INF_STRING_LENGTH 4096#define MAX_TITLE_LEN 60#define MAX_INSTRUCTION_LEN 256#define MAX_LABEL_LEN 30#define MAX_SERVICE_NAME_LEN 256#define MAX_SUBTITLE_LEN 256#define SP_MAX_MACHINENAME_LENGTH (MAX_PATH + 3)
#define COPYFLG_WARN_IF_SKIP 0x00000001#define COPYFLG_NOSKIP 0x00000002#define COPYFLG_NOVERSIONCHECK 0x00000004#define COPYFLG_FORCE_FILE_IN_USE 0x00000008#define COPYFLG_NO_OVERWRITE 0x00000010#define COPYFLG_NO_VERSION_DIALOG 0x00000020#define COPYFLG_OVERWRITE_OLDER_ONLY 0x00000040#define COPYFLG_REPLACEONLY 0x00000400#define COPYFLG_NODECOMP 0x00000800#define COPYFLG_REPLACE_BOOT_FILE 0x00001000#define COPYFLG_NOPRUNE 0x00002000#define DELFLG_IN_USE 0x00000001#define DELFLG_IN_USE1 0x00010000#define DI_REMOVEDEVICE_GLOBAL 0x00000001#define DI_REMOVEDEVICE_CONFIGSPECIFIC 0x00000002#define DI_UNREMOVEDEVICE_CONFIGSPECIFIC 0x00000002#define DI_SHOWOEM 0x00000001#define DI_SHOWCOMPAT 0x00000002#define DI_SHOWCLASS 0x00000004#define DI_SHOWALL 0x00000007#define DI_NOVCP 0x00000008#define DI_DIDCOMPAT 0x00000010#define DI_DIDCLASS 0x00000020#define DI_AUTOASSIGNRES 0x00000040#define DI_NEEDRESTART 0x00000080#define DI_NEEDREBOOT 0x00000100#define DI_NOBROWSE 0x00000200#define DI_MULTMFGS 0x00000400#define DI_DISABLED 0x00000800#define DI_GENERALPAGE_ADDED 0x00001000#define DI_RESOURCEPAGE_ADDED 0x00002000#define DI_PROPERTIES_CHANGE 0x00004000#define DI_INF_IS_SORTED 0x00008000#define DI_ENUMSINGLEINF 0x00010000#define DI_DONOTCALLCONFIGMG 0x00020000#define DI_INSTALLDISABLED 0x00040000#define DI_COMPAT_FROM_CLASS 0x00080000#define DI_CLASSINSTALLPARAMS 0x00100000#define DI_NODI_DEFAULTACTION 0x00200000#define DI_QUIETINSTALL 0x00800000#define DI_NOFILECOPY 0x01000000#define DI_FORCECOPY 0x02000000#define DI_DRIVERPAGE_ADDED 0x04000000#define DI_USECI_SELECTSTRINGS 0x08000000#define DI_OVERRIDE_INFFLAGS 0x10000000#define DI_PROPS_NOCHANGEUSAGE 0x20000000#define DI_NOSELECTICONS 0x40000000#define DI_NOWRITE_IDS 0x80000000#define DI_FLAGSEX_USEOLDINFSEARCH 0x00000001#define DI_FLAGSEX_AUTOSELECTRANK0 0x00000002#define DI_FLAGSEX_CI_FAILED 0x00000004#define DI_FLAGSEX_DIDINFOLIST 0x00000010#define DI_FLAGSEX_DIDCOMPATINFO 0x00000020#define DI_FLAGSEX_FILTERCLASSES 0x00000040#define DI_FLAGSEX_SETFAILEDINSTALL 0x00000080#define DI_FLAGSEX_DEVICECHANGE 0x00000100#define DI_FLAGSEX_ALWAYSWRITEIDS 0x00000200#define DI_FLAGSEX_PROPCHANGE_PENDING 0x00000400#define DI_FLAGSEX_ALLOWEXCLUDEDDRVS 0x00000800#define DI_FLAGSEX_NOUIONQUERYREMOVE 0x00001000#define DI_FLAGSEX_USECLASSFORCOMPAT 0x00002000#define DI_FLAGSEX_OLDINF_IN_CLASSLIST 0x00004000#define DI_FLAGSEX_NO_DRVREG_MODIFY 0x00008000#define DI_FLAGSEX_IN_SYSTEM_SETUP 0x00010000#define DI_FLAGSEX_INET_DRIVER 0x00020000#define DI_FLAGSEX_APPENDDRIVERLIST 0x00040000#define DI_FLAGSEX_PREINSTALLBACKUP 0x00080000#define DI_FLAGSEX_BACKUPONREPLACE 0x00100000#define DI_FLAGSEX_DRIVERLIST_FROM_URL 0x00200000#define DI_FLAGSEX_RESERVED1 0x00400000#define DI_FLAGSEX_EXCLUDE_OLD_INET_DRIVERS 0x00800000#define DI_FLAGSEX_POWERPAGE_ADDED 0x01000000#if (_SETUPAPI_VER >= 0x0501)#define DI_FLAGSEX_FILTERSIMILARDRIVERS 0x02000000#define DI_FLAGSEX_INSTALLEDDRIVER 0x04000000#define DI_FLAGSEX_NO_CLASSLIST_NODE_MERGE 0x08000000#define DI_FLAGSEX_ALTPLATFORM_DRVSEARCH 0x10000000#define DI_FLAGSEX_RESTART_DEVICE_ONLY 0x20000000#endif#define DIBCI_NOINSTALLCLASS 0x00000001#define DIBCI_NODISPLAYCLASS 0x00000002#define DICD_GENERATE_ID 0x00000001#define DICD_INHERIT_CLASSDRVS 0x00000002#define DICS_ENABLE 1#define DICS_FLAG_GLOBAL 1#define DICS_DISABLE 2#define DICS_FLAG_CONFIGSPECIFIC 2#define DICS_PROPCHANGE 3#define DICS_START 4#define DICS_FLAG_CONFIGGENERAL 4#define DICS_STOP 5#define DICUSTOMDEVPROP_MERGE_MULTISZ 0x00000001#define DIF_SELECTDEVICE 1#define DIF_INSTALLDEVICE 2#define DIF_ASSIGNRESOURCES 3#define DIF_PROPERTIES 4#define DIF_REMOVE 5#define DIF_FIRSTTIMESETUP 6#define DIF_FOUNDDEVICE 7#define DIF_SELECTCLASSDRIVERS 8#define DIF_VALIDATECLASSDRIVERS 9#define DIF_INSTALLCLASSDRIVERS 10#define DIF_CALCDISKSPACE 11#define DIF_DESTROYPRIVATEDATA 12#define DIF_VALIDATEDRIVER 13#define DIF_MOVEDEVICE 14#define DIF_DETECT 15#define DIF_INSTALLWIZARD 16#define DIF_DESTROYWIZARDDATA 17#define DIF_PROPERTYCHANGE 18#define DIF_ENABLECLASS 19#define DIF_DETECTVERIFY 20#define DIF_INSTALLDEVICEFILES 21#define DIF_UNREMOVE 22#define DIF_SELECTBESTCOMPATDRV 23#define DIF_ALLOW_INSTALL 24#define DIF_REGISTERDEVICE 25#define DIF_NEWDEVICEWIZARD_PRESELECT 26#define DIF_NEWDEVICEWIZARD_SELECT 27#define DIF_NEWDEVICEWIZARD_PREANALYZE 28#define DIF_NEWDEVICEWIZARD_POSTANALYZE 29#define DIF_NEWDEVICEWIZARD_FINISHINSTALL 30#define DIF_UNUSED1 31#define DIF_INSTALLINTERFACES 32#define DIF_DETECTCANCEL 33#define DIF_REGISTER_COINSTALLERS 34#define DIF_ADDPROPERTYPAGE_ADVANCED 35#define DIF_ADDPROPERTYPAGE_BASIC 36#define DIF_RESERVED1 37#define DIF_TROUBLESHOOTER 38#define DIF_POWERMESSAGEWAKE 39#define DIF_ADDREMOTEPROPERTYPAGE_ADVANCED 40#define DIF_UPDATEDRIVER_UI 41#define DIF_FINISHINSTALL_ACTION 42#define DIF_RESERVED2 48
#define DIGCDP_FLAG_BASIC 0x00000001#define DIGCDP_FLAG_ADVANCED 0x00000002#if (_SETUPAPI_VER >= 0x0501)#define DIGCDP_FLAG_REMOTE_BASIC 0x00000003#define DIGCDP_FLAG_REMOTE_ADVANCED 0x00000004#endif#define DIGCF_DEFAULT 0x00000001#define DIGCF_PRESENT 0x00000002#define DIGCF_ALLCLASSES 0x00000004#define DIGCF_PROFILE 0x00000008#define DIGCF_DEVICEINTERFACE 0x00000010#define DIGCF_INTERFACEDEVICE 0x00000010#define DIOCR_INSTALLER 0x00000001#define DIOCR_INTERFACE 0x00000002#define DIODI_NO_ADD 0x00000001#define DIOD_INHERIT_CLASSDRVS 0x00000002#define DIOD_CANCEL_REMOVE 0x00000004#define DIREG_DEV 0x00000001#define DIREG_DRV 0x00000002#define DIREG_BOTH 0x00000004#define DIRID_ABSOLUTE -1#define DIRID_NULL 0#define DIRID_SRCPATH 1#define DIRID_WINDOWS 10#define DIRID_SYSTEM 11#define DIRID_DRIVERS 12#define DIRID_INF 17#define DIRID_HELP 18#define DIRID_FONTS 20#define DIRID_VIEWERS 21#define DIRID_COLOR 23#define DIRID_APPS 24#define DIRID_SHARED 25#define DIRID_BOOT 30#define DIRID_SYSTEM16 50#define DIRID_SPOOL 51#define DIRID_SPOOLDRIVERS 52#define DIRID_USERPROFILE 53#define DIRID_LOADER 54#define DIRID_PRINTPROCESSOR 55#define DIRID_COMMON_STARTMENU 16406#define DIRID_COMMON_PROGRAMS 16407#define DIRID_COMMON_STARTUP 16408#define DIRID_COMMON_DESKTOPDIRECTORY 16409#define DIRID_COMMON_FAVORITES 16415#define DIRID_COMMON_APPDATA 16419#define DIRID_PROGRAM_FILES 16422#define DIRID_SYSTEM_X86 16425#define DIRID_PROGRAM_FILES_X86 16426#define DIRID_PROGRAM_FILES_COMMON 16427#define DIRID_PROGRAM_FILES_COMMONX86 16428#define DIRID_COMMON_TEMPLATES 16429#define DIRID_COMMON_DOCUMENTS 16430#define DIRID_USER 0x8000#define DIRID_ABSOLUTE_16BIT 0xffff#define DIRID_IOSUBSYS DIRID_DRIVERS#define DIRID_DEFAULT DIRID_SYSTEM#define DMI_MASK 0x00000001#define DMI_BKCOLOR 0x00000002#define DMI_USERECT 0x00000004#define DN_ROOT_ENUMERATED 0x00000001#define DN_DRIVER_LOADED 0x00000002#define DN_ENUM_LOADED 0x00000004#define DN_STARTED 0x00000008#define DN_MANUAL 0x00000010#define DN_NEED_TO_ENUM 0x00000020#define DN_NOT_FIRST_TIME 0x00000040#define DN_HARDWARE_ENUM 0x00000080#define DN_LIAR 0x00000100#define DN_HAS_MARK 0x00000200#define DN_HAS_PROBLEM 0x00000400#define DN_FILTERED 0x00000800#define DN_MOVED 0x00001000#define DN_DISABLEABLE 0x00002000#define DN_REMOVABLE 0x00004000#define DN_PRIVATE_PROBLEM 0x00008000#define DN_MF_PARENT 0x00010000#define DN_MF_CHILD 0x00020000#define DN_WILL_BE_REMOVED 0x00040000#define DN_NOT_FIRST_TIMEE 0x00080000#define DN_STOP_FREE_RES 0x00100000#define DN_REBAL_CANDIDATE 0x00200000#define DN_BAD_PARTIAL 0x00400000#define DN_NT_ENUMERATOR 0x00800000#define DN_NT_DRIVER 0x01000000#define DN_NEEDS_LOCKING 0x02000000#define DN_ARM_WAKEUP 0x04000000#define DN_APM_ENUMERATOR 0x08000000#define DN_APM_DRIVER 0x10000000#define DN_SILENT_INSTALL 0x20000000#define DN_NO_SHOW_IN_DM 0x40000000#define DN_BOOT_LOG_PROB 0x80000000#define DNF_DUPDESC 0x00000001#define DNF_OLDDRIVER 0x00000002#define DNF_EXCLUDEFROMLIST 0x00000004#define DNF_NODRIVER 0x00000008#define DNF_LEGACYINF 0x00000010#define DNF_CLASS_DRIVER 0x00000020#define DNF_COMPATIBLE_DRIVER 0x00000040#define DNF_INET_DRIVER 0x00000080#define DNF_UNUSED1 0x00000100#define DNF_INDEXED_DRIVER 0x00000200#define DNF_OLD_INET_DRIVER 0x00000400#define DNF_BAD_DRIVER 0x00000800#define DNF_DUPPROVIDER 0x00001000#define DPROMPT_SUCCESS 0#define DPROMPT_CANCEL 1#define DPROMPT_SKIPFILE 2#define DPROMPT_BUFFERTOOSMALL 3#define DPROMPT_OUTOFMEMORY 4#define DRIVER_HARDWAREID_RANK 0x00000FFF#if (_SETUPAPI_VER >= 0x0600)#define DRIVER_UNTRUSTED_RANK 0x80000000#else#define DRIVER_UNTRUSTED_RANK 0x00008000#endif#define DYNAWIZ_FLAG_PAGESADDED 0x00000001#define DYNAWIZ_FLAG_INSTALLDET_NEXT 0x00000002#define DYNAWIZ_FLAG_INSTALLDET_PREV 0x00000004#define DYNAWIZ_FLAG_ANALYZE_HANDLECONFLICT 0x00000008#define ENABLECLASS_QUERY 0#define ENABLECLASS_SUCCESS 1#define ENABLECLASS_FAILURE 2#define ERROR_EXPECTED_SECTION_NAME (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0)#define ERROR_BAD_SECTION_NAME_LINE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|1)#define ERROR_SECTION_NAME_TOO_LONG (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|2)#define ERROR_GENERAL_SYNTAX (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|3)#define ERROR_WRONG_INF_STYLE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x100)#define ERROR_NOT_INSTALLED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x1000)#define ERROR_SECTION_NOT_FOUND (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x101)#define ERROR_LINE_NOT_FOUND (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x102)#define ERROR_NO_BACKUP (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x103)#define ERROR_NO_ASSOCIATED_CLASS (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x200)#define ERROR_CLASS_MISMATCH (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x201)#define ERROR_DUPLICATE_FOUND (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x202)#define ERROR_NO_DRIVER_SELECTED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x203)#define ERROR_KEY_DOES_NOT_EXIST (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x204)#define ERROR_INVALID_DEVINST_NAME (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x205)#define ERROR_INVALID_CLASS (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x206)#define ERROR_DEVINST_ALREADY_EXISTS (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x207)#define ERROR_DEVINFO_NOT_REGISTERED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x208)#define ERROR_INVALID_REG_PROPERTY (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x209)#define ERROR_NO_INF (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x20A)#define ERROR_NO_SUCH_DEVINST (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x20B)#define ERROR_CANT_LOAD_CLASS_ICON (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x20C)#define ERROR_INVALID_CLASS_INSTALLER (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x20D)#define ERROR_DI_DO_DEFAULT (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x20E)#define ERROR_DI_NOFILECOPY (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x20F)#define ERROR_INVALID_HWPROFILE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x210)#define ERROR_NO_DEVICE_SELECTED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x211)#define ERROR_DEVINFO_LIST_LOCKED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x212)#define ERROR_DEVINFO_DATA_LOCKED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x213)#define ERROR_DI_BAD_PATH (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x214)#define ERROR_NO_CLASSINSTALL_PARAMS (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x215)#define ERROR_FILEQUEUE_LOCKED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x216)#define ERROR_BAD_SERVICE_INSTALLSECT (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x217)#define ERROR_NO_CLASS_DRIVER_LIST (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x218)#define ERROR_NO_ASSOCIATED_SERVICE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x219)#define ERROR_NO_DEFAULT_DEVICE_INTERFACE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x21A)#define ERROR_DEVICE_INTERFACE_ACTIVE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x21B)#define ERROR_DEVICE_INTERFACE_REMOVED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x21C)#define ERROR_BAD_INTERFACE_INSTALLSECT (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x21D)#define ERROR_NO_SUCH_INTERFACE_CLASS (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x21E)#define ERROR_INVALID_REFERENCE_STRING (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x21F)#define ERROR_INVALID_MACHINENAME (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x220)#define ERROR_REMOTE_COMM_FAILURE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x221)#define ERROR_MACHINE_UNAVAILABLE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x222)#define ERROR_NO_CONFIGMGR_SERVICES (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x223)#define ERROR_INVALID_PROPPAGE_PROVIDER (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x224)#define ERROR_NO_SUCH_DEVICE_INTERFACE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x225)#define ERROR_DI_POSTPROCESSING_REQUIRED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x226)#define ERROR_INVALID_COINSTALLER (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x227)#define ERROR_NO_COMPAT_DRIVERS (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x228)#define ERROR_NO_DEVICE_ICON (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x229)#define ERROR_INVALID_INF_LOGCONFIG (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x22A)#define ERROR_DI_DONT_INSTALL (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x22B)#define ERROR_INVALID_FILTER_DRIVER (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x22C)#define ERROR_NON_WINDOWS_NT_DRIVER (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x22D)#define ERROR_NON_WINDOWS_DRIVER (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x22E)#define ERROR_NO_CATALOG_FOR_OEM_INF (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x22F)#define ERROR_DEVINSTALL_QUEUE_NONNATIVE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x230)#define ERROR_NOT_DISABLEABLE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x231)#define ERROR_CANT_REMOVE_DEVINST (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x232)#define ERROR_IN_WOW64 (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x235)#define ERROR_INTERFACE_DEVICE_ACTIVE ERROR_DEVICE_INTERFACE_ACTIVE#define ERROR_INTERFACE_DEVICE_REMOVED ERROR_DEVICE_INTERFACE_REMOVED#define ERROR_NO_DEFAULT_INTERFACE_DEVICE ERROR_NO_DEFAULT_DEVICE_INTERFACE#define ERROR_NO_SUCH_INTERFACE_DEVICE ERROR_NO_SUCH_DEVICE_INTERFACE#define ERROR_WRONG_INF_TYPE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x24A)
#define FILEOP_COPY 0#define FILEOP_ABORT 0#define FILE_COMPRESSION_NONE 0#define FILEOP_RENAME 1#define FILEOP_DOIT 1#define FILE_COMPRESSION_WINLZA 1#define FILEOP_DELETE 2#define FILEOP_SKIP 2#define FILE_COMPRESSION_MSZIP 2#define FILEOP_BACKUP 3#define FILE_COMPRESSION_NTCAB 3#define FILEOP_NEWPATH 4#define FILEOP_RETRY FILEOP_DOIT#define FLG_ADDREG_TYPE_SZ 0x00000000#define FLG_ADDREG_BINVALUETYPE 0x00000001#define FLG_ADDREG_NOCLOBBER 0x00000002#define FLG_ADDREG_DELVAL 0x00000004#define FLG_ADDREG_APPEND 0x00000008#define FLG_ADDREG_KEYONLY 0x00000010#define FLG_ADDREG_OVERWRITEONLY 0x00000020#if (_SETUPAPI_VER >= 0x0501)#define FLG_ADDREG_64BITKEY 0x00001000#define FLG_ADDREG_KEYONLY_COMMON 0x00002000#define FLG_ADDREG_32BITKEY 0x00004000#define FLG_ADDREG_DELREG_BIT 0x00008000#endif#define FLG_ADDREG_TYPE_MULTI_SZ 0x00010000#define FLG_ADDREG_TYPE_EXPAND_SZ 0x00020000#define FLG_ADDREG_TYPE_BINARY (0x00000000|FLG_ADDREG_BINVALUETYPE)#define FLG_ADDREG_TYPE_DWORD (0x00010000|FLG_ADDREG_BINVALUETYPE)#define FLG_ADDREG_TYPE_NONE (0x00020000|FLG_ADDREG_BINVALUETYPE)#define FLG_ADDREG_TYPE_MASK (0xFFFF0000|FLG_ADDREG_BINVALUETYPE)#define FLG_DELREG_VALUE 0x00000000#if (_SETUPAPI_VER >= 0x0501)#define FLG_DELREG_TYPE_MASK FLG_ADDREG_TYPE_MASK#define FLG_DELREG_TYPE_SZ FLG_ADDREG_TYPE_SZ#define FLG_DELREG_TYPE_MULTI_SZ FLG_ADDREG_TYPE_MULTI_SZ#define FLG_DELREG_TYPE_EXPAND_SZ FLG_ADDREG_TYPE_EXPAND_SZ#define FLG_DELREG_TYPE_BINARY FLG_ADDREG_TYPE_BINARY#define FLG_DELREG_TYPE_DWORD FLG_ADDREG_TYPE_DWORD#define FLG_DELREG_TYPE_NONE FLG_ADDREG_TYPE_NONE#define FLG_DELREG_64BITKEY FLG_ADDREG_64BITKEY#define FLG_DELREG_KEYONLY_COMMON FLG_ADDREG_KEYONLY_COMMON#define FLG_DELREG_32BITKEY FLG_ADDREG_32BITKEY#define FLG_DELREG_OPERATION_MASK 0x000000FE#define FLG_DELREG_MULTI_SZ_DELSTRING (0x00000002|FLG_DELREG_TYPE_MULTI_SZ|FLG_ADDREG_DELREG_BIT)#endif#define FLG_BITREG_CLEARBITS 0x00000000#define FLG_BITREG_SETBITS 0x00000001#define FLG_PROFITEM_CURRENTUSER 0x00000001#define FLG_PROFITEM_DELETE 0x00000002#define FLG_PROFITEM_GROUP 0x00000004#define FLG_PROFITEM_CSIDL 0x00000008#define FLG_REGSVR_DLLREGISTER 0x00000001#define FLG_REGSVR_DLLINSTALL 0x00000002#define MIN_IDD_DYNAWIZ_RESOURCE_ID 10000#define MAX_IDD_DYNAWIZ_RESOURCE_ID 11000#define IDD_DYNAWIZ_FIRSTPAGE 10000#define IDD_DYNAWIZ_SELECT_PREVPAGE 10001#define IDD_DYNAWIZ_SELECT_NEXTPAGE 10002#define IDD_DYNAWIZ_ANALYZE_PREVPAGE 10003#define IDD_DYNAWIZ_ANALYZE_NEXTPAGE 10004#define IDD_DYNAWIZ_INSTALLDETECTED_PREVPAGE 10006#define IDD_DYNAWIZ_INSTALLDETECTED_NEXTPAGE 10007#define IDD_DYNAWIZ_INSTALLDETECTED_NODEVS 10008#define IDD_DYNAWIZ_SELECTDEV_PAGE 10009#define IDD_DYNAWIZ_ANALYZEDEV_PAGE 10010#define IDD_DYNAWIZ_INSTALLDETECTEDDEVS_PAGE 10011#define IDD_DYNAWIZ_SELECTCLASS_PAGE 10012#define IDF_NOBROWSE 0x00000001#define IDF_NOSKIP 0x00000002#define IDF_NODETAILS 0x00000004#define IDF_NOCOMPRESSED 0x00000008#define IDF_CHECKFIRST 0x00000100#define IDF_NOBEEP 0x00000200#define IDF_NOFOREGROUND 0x00000400#define IDF_WARNIFSKIP 0x00000800#define IDF_OEMDISK 0x80000000#define IDI_RESOURCEFIRST 159#define IDI_RESOURCE 159#define IDI_RESOURCELAST 161#define IDI_RESOURCEOVERLAYFIRST 161#define IDI_RESOURCEOVERLAYLAST 161#define IDI_CONFLICT 161#define IDI_PROBLEM_OVL 500#define IDI_DISABLED_OVL 501#define IDI_FORCED_OVL 502#define IDI_CLASSICON_OVERLAYFIRST 500#define IDI_CLASSICON_OVERLAYLAST 502#define INF_STYLE_NONE 0x00000000#define INF_STYLE_OLDNT 0x00000001#define INF_STYLE_WIN4 0x00000002#define INF_STYLE_CACHE_ENABLE 0x00000010#define INF_STYLE_CACHE_DISABLE 0x00000020#define INFINFO_INF_SPEC_IS_HINF 1#define INFINFO_INF_NAME_IS_ABSOLUTE 2#define INFINFO_DEFAULT_SEARCH 3#define INFINFO_REVERSE_DEFAULT_SEARCH 4#define INFINFO_INF_PATH_LIST_SEARCH 5#define LogSevInformation 0#define LogSevWarning 1#define LogSevError 2#define LogSevFatalError 3#define LogSevMaximum 4#define LogSeverity DWORD#define MAX_INSTALLWIZARD_DYNAPAGES 20#define NDW_INSTALLFLAG_DIDFACTDEFS 0x00000001#define NDW_INSTALLFLAG_HARDWAREALLREADYIN 0x00000002#define NDW_INSTALLFLAG_NEEDSHUTDOWN 0x00000200#define NDW_INSTALLFLAG_EXPRESSINTRO 0x00000400#define NDW_INSTALLFLAG_SKIPISDEVINSTALLED 0x00000800#define NDW_INSTALLFLAG_NODETECTEDDEVS 0x00001000#define NDW_INSTALLFLAG_INSTALLSPECIFIC 0x00002000#define NDW_INSTALLFLAG_SKIPCLASSLIST 0x00004000#define NDW_INSTALLFLAG_CI_PICKED_OEM 0x00008000#define NDW_INSTALLFLAG_PCMCIAMODE 0x00010000#define NDW_INSTALLFLAG_PCMCIADEVICE 0x00020000#define NDW_INSTALLFLAG_USERCANCEL 0x00040000#define NDW_INSTALLFLAG_KNOWNCLASS 0x00080000#define NDW_INSTALLFLAG_NEEDRESTART 0x00000080#define NDW_INSTALLFLAG_NEEDREBOOT 0x00000100#define SETDIRID_NOT_FULL_PATH 0x00000001#define SP_COPY_DELETESOURCE 0x0000001#define SP_COPY_REPLACEONLY 0x0000002#define SP_COPY_NEWER 0x0000004#define SP_COPY_NEWER_OR_SAME 0x0000004#define SP_COPY_NOOVERWRITE 0x0000008#define SP_COPY_NODECOMP 0x0000010#define SP_COPY_LANGUAGEAWARE 0x0000020#define SP_COPY_SOURCE_ABSOLUTE 0x0000040#define SP_COPY_SOURCEPATH_ABSOLUTE 0x0000080#define SP_COPY_IN_USE_NEEDS_REBOOT 0x0000100#define SP_COPY_FORCE_IN_USE 0x0000200#define SP_COPY_NOSKIP 0x0000400#define SP_COPY_FORCE_NOOVERWRITE 0x0001000#define SP_COPY_FORCE_NEWER 0x0002000#define SP_COPY_WARNIFSKIP 0x0004000#define SP_COPY_NOBROWSE 0x0008000#define SP_COPY_NEWER_ONLY 0x0010000#define SP_COPY_SOURCE_SIS_MASTER 0x0020000#define SP_COPY_OEMINF_CATALOG_ONLY 0x0040000#define SP_COPY_REPLACE_BOOT_FILE 0x0080000#define SP_COPY_NOPRUNE 0x0100000#define SP_FLAG_CABINETCONTINUATION 0x0000800#define SPCRP_SECURITY 23#define SPCRP_SECURITY_SDS 24#define SPCRP_DEVTYPE 25#define SPCRP_EXCLUSIVE 26#define SPCRP_CHARACTERISTICS 27#define SPCRP_MAXIMUM_PROPERTY 28#define SPDIT_NODRIVER 0#define SPDIT_CLASSDRIVER 1#define SPDIT_COMPATDRIVER 2#define SPDRP_DEVICEDESC 0#define SPDRP_HARDWAREID 1#define SPDRP_COMPATIBLEIDS 2#define SPDRP_UNUSED0 3#define SPDRP_SERVICE 4#define SPDRP_UNUSED1 5#define SPDRP_UNUSED2 6#define SPDRP_CLASS 7#define SPDRP_CLASSGUID 8#define SPDRP_DRIVER 9#define SPDRP_CONFIGFLAGS 10#define SPDRP_MFG 11#define SPDRP_FRIENDLYNAME 12#define SPDRP_LOCATION_INFORMATION 13#define SPDRP_PHYSICAL_DEVICE_OBJECT_NAME 14#define SPDRP_CAPABILITIES 15#define SPDRP_UI_NUMBER 16#define SPDRP_UPPERFILTERS 17#define SPDRP_LOWERFILTERS 18#define SPDRP_BUSTYPEGUID 19#define SPDRP_LEGACYBUSTYPE 20#define SPDRP_BUSNUMBER 21#define SPDRP_ENUMERATOR_NAME 22#define SPDRP_SECURITY 23#define SPDRP_SECURITY_SDS 24#define SPDRP_DEVTYPE 25#define SPDRP_EXCLUSIVE 26#define SPDRP_CHARACTERISTICS 27#define SPDRP_ADDRESS 28#define SPDRP_UI_NUMBER_DESC_FORMAT 29#define SPDRP_DEVICE_POWER_DATA 30#define SPDRP_REMOVAL_POLICY 31#define SPDRP_REMOVAL_POLICY_HW_DEFAULT 32#define SPDRP_REMOVAL_POLICY_OVERRIDE 33#define SPDRP_INSTALL_STATE 34#define SPDRP_MAXIMUM_PROPERTY 35#define SPDSL_IGNORE_DISK 1#define SPDSL_DISALLOW_NEGATIVE_ADJUST 2
#define SPFILENOTIFY_STARTQUEUE 1#define SPFILENOTIFY_ENDQUEUE 2#define SPFILENOTIFY_STARTSUBQUEUE 3#define SPFILENOTIFY_ENDSUBQUEUE 4#define SPFILENOTIFY_STARTDELETE 5#define SPFILENOTIFY_ENDDELETE 6#define SPFILENOTIFY_DELETEERROR 7#define SPFILENOTIFY_STARTRENAME 8#define SPFILENOTIFY_ENDRENAME 9#define SPFILENOTIFY_RENAMEERROR 10#define SPFILENOTIFY_STARTCOPY 11#define SPFILENOTIFY_ENDCOPY 12#define SPFILENOTIFY_COPYERROR 13#define SPFILENOTIFY_NEEDMEDIA 14#define SPFILENOTIFY_QUEUESCAN 15#define SPFILENOTIFY_CABINETINFO 16#define SPFILENOTIFY_FILEINCABINET 17#define SPFILENOTIFY_NEEDNEWCABINET 18#define SPFILENOTIFY_FILEEXTRACTED 19#define SPFILENOTIFY_FILEOPDELAYED 20#define SPFILENOTIFY_STARTBACKUP 21#define SPFILENOTIFY_BACKUPERROR 22#define SPFILENOTIFY_ENDBACKUP 23#define SPFILENOTIFY_QUEUESCAN_EX 24#define SPFILENOTIFY_STARTREGISTRATION 25#define SPFILENOTIFY_ENDREGISTRATION 26#define SPFILENOTIFY_LANGMISMATCH 0x00010000#define SPFILENOTIFY_TARGETEXISTS 0x00020000#define SPFILENOTIFY_TARGETNEWER 0x00040000#define SPFILELOG_SYSTEMLOG 0x00000001#define SPFILELOG_OEMFILE 0x00000001#define SPFILELOG_FORCENEW 0x00000002#define SPFILELOG_QUERYONLY 0x00000004#define SPFILEQ_FILE_IN_USE 0x00000001#define SPFILEQ_REBOOT_RECOMMENDED 0x00000002#define SPFILEQ_REBOOT_IN_PROGRESS 0x00000004#define SPINT_ACTIVE 0x00000001#define SPINT_DEFAULT 0x00000002#define SPINT_REMOVED 0x00000004#define SPID_ACTIVE 0x00000001#define SPID_DEFAULT 0x00000002#define SPID_REMOVED 0x00000004#define SPINST_LOGCONFIG 0x00000001#define SPINST_INIFILES 0x00000002#define SPINST_REGISTRY 0x00000004#define SPINST_INI2REG 0x00000008#define SPINST_FILES 0x00000010#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#if (_SETUPAPI_VER >= 0x0501)#define SPINST_REGISTERCALLBACKAWARE 0x00080000#endif#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 SPSVCINST_CLOBBER_SECURITY 0x00000400#define SPSVCINST_STARTSERVICE 0x00000800
#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#define SPREG_SUCCESS 0x00000000#define SPREG_LOADLIBRARY 0x00000001#define SPREG_GETPROCADDR 0x00000002#define SPREG_REGSVR 0x00000003#define SPREG_DLLINSTALL 0x00000004#define SPREG_TIMEOUT 0x00000005#define SPREG_UNKNOWN 0xFFFFFFFF
/* Flags for StringTableAddString and StringTableLookUpString */#define ST_CASE_SENSITIVE_COMPARE 0x00000001
/* SetupUninstallOEMInf Flags values */#define SUOI_FORCEDELETE 0x00000001
#ifndef RC_INVOKEDtypedef PVOID HINF;typedef PVOID HDSKSPC;typedef PVOID HDEVINFO;typedef PVOID HSPFILEQ;typedef PVOID HSPFILELOG;typedef UINT DI_FUNCTION;
typedef PVOID HSTRING_TABLE;
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_INF_SIGNER_INFO_A { DWORD cbSize; CHAR CatalogFile; CHAR DigitalSigner; CHAR DigitalSignerVersion;} SP_INF_SIGNER_INFO_A, *PSP_INF_SIGNER_INFO_A;typedef struct _SP_INF_SIGNER_INFO_W { DWORD cbSize; WCHAR CatalogFile; WCHAR DigitalSigner; WCHAR DigitalSignerVersion;} SP_INF_SIGNER_INFO_W, *PSP_INF_SIGNER_INFO_W;typedef struct _SP_ALTPLATFORM_INFO_V1 { DWORD cbSize; DWORD Platform; DWORD MajorVersion; DWORD MinorVersion; WORD ProcessorArchitecture; WORD Reserved;} SP_ALTPLATFORM_INFO_V1, *PSP_ALTPLATFORM_INFO_V1;typedef struct _SP_ALTPLATFORM_INFO_V2 { DWORD cbSize; DWORD Platform; DWORD MajorVersion; DWORD MinorVersion; WORD ProcessorArchitecture; union { WORD Reserved; WORD Flags; } DUMMYUNIONNAME; DWORD FirstValidatedMajorVersion; DWORD FirstValidatedMinorVersion;} SP_ALTPLATFORM_INFO_V2, *PSP_ALTPLATFORM_INFO_V2;#if _WIN32_WINNT <= 0x0500typedef SP_ALTPLATFORM_INFO_V1 SP_ALTPLATFORM_INFO;typedef PSP_ALTPLATFORM_INFO_V1 PSP_ALTPLATFORM_INFO;#elsetypedef SP_ALTPLATFORM_INFO_V2 SP_ALTPLATFORM_INFO;typedef PSP_ALTPLATFORM_INFO_V2 PSP_ALTPLATFORM_INFO;#endiftypedef 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;typedef struct _SP_MOVEDEV_PARAMS { SP_CLASSINSTALL_HEADER ClassInstallHeader; SP_DEVINFO_DATA SourceDeviceInfoData;} SP_MOVEDEV_PARAMS, *PSP_MOVEDEV_PARAMS;typedef struct _SP_PROPCHANGE_PARAMS { SP_CLASSINSTALL_HEADER ClassInstallHeader; DWORD StateChange; DWORD Scope; DWORD HwProfile;} SP_PROPCHANGE_PARAMS, *PSP_PROPCHANGE_PARAMS;typedef struct _SP_REMOVEDEVICE_PARAMS { SP_CLASSINSTALL_HEADER ClassInstallHeader; DWORD Scope; DWORD HwProfile;} SP_REMOVEDEVICE_PARAMS, *PSP_REMOVEDEVICE_PARAMS;typedef struct _SP_UNREMOVEDEVICE_PARAMS { SP_CLASSINSTALL_HEADER ClassInstallHeader; DWORD Scope; DWORD HwProfile;} SP_UNREMOVEDEVICE_PARAMS, *PSP_UNREMOVEDEVICE_PARAMS;typedef struct _SP_SELECTDEVICE_PARAMS_A { SP_CLASSINSTALL_HEADER ClassInstallHeader; CHAR Title[MAX_TITLE_LEN]; CHAR Instructions[MAX_INSTRUCTION_LEN]; CHAR ListLabel[MAX_LABEL_LEN]; CHAR SubTitle[MAX_SUBTITLE_LEN]; BYTE Reserved[2];} SP_SELECTDEVICE_PARAMS_A, *PSP_SELECTDEVICE_PARAMS_A;typedef struct _SP_SELECTDEVICE_PARAMS_W { SP_CLASSINSTALL_HEADER ClassInstallHeader; WCHAR Title[MAX_TITLE_LEN]; WCHAR Instructions[MAX_INSTRUCTION_LEN]; WCHAR ListLabel[MAX_LABEL_LEN]; WCHAR SubTitle[MAX_SUBTITLE_LEN];} SP_SELECTDEVICE_PARAMS_W, *PSP_SELECTDEVICE_PARAMS_W;typedef struct _SP_REGISTER_CONTROL_STATUSA { DWORD cbSize; PCSTR FileName; DWORD Win32Error; DWORD FailureCode;} SP_REGISTER_CONTROL_STATUSA, *PSP_REGISTER_CONTROL_STATUSA;typedef struct _SP_REGISTER_CONTROL_STATUSW { DWORD cbSize; PCWSTR FileName; DWORD Win32Error; DWORD FailureCode;} SP_REGISTER_CONTROL_STATUSW, *PSP_REGISTER_CONTROL_STATUSW;
typedef BOOL (CALLBACK* PDETECT_PROGRESS_NOTIFY)(PVOID,DWORD);typedef struct _SP_DETECTDEVICE_PARAMS { SP_CLASSINSTALL_HEADER ClassInstallHeader; PDETECT_PROGRESS_NOTIFY DetectProgressNotify; PVOID ProgressNotifyParam;} SP_DETECTDEVICE_PARAMS, *PSP_DETECTDEVICE_PARAMS;typedef struct _SP_INSTALLWIZARD_DATA { SP_CLASSINSTALL_HEADER ClassInstallHeader; DWORD Flags; HPROPSHEETPAGE DynamicPages[MAX_INSTALLWIZARD_DYNAPAGES]; DWORD NumDynamicPages; DWORD DynamicPageFlags; DWORD PrivateFlags; LPARAM PrivateData; HWND hwndWizardDlg;} SP_INSTALLWIZARD_DATA, *PSP_INSTALLWIZARD_DATA;typedef struct _SP_NEWDEVICEWIZARD_DATA { SP_CLASSINSTALL_HEADER ClassInstallHeader; DWORD Flags; HPROPSHEETPAGE DynamicPages[MAX_INSTALLWIZARD_DYNAPAGES]; DWORD NumDynamicPages; HWND hwndWizardDlg;} SP_NEWDEVICEWIZARD_DATA, *PSP_NEWDEVICEWIZARD_DATA;typedef SP_NEWDEVICEWIZARD_DATA SP_ADDPROPERTYPAGE_DATA, *PSP_ADDPROPERTYPAGE_DATA;typedef struct _SP_TROUBLESHOOTER_PARAMS_A { SP_CLASSINSTALL_HEADER ClassInstallHeader; CHAR ChmFile[MAX_PATH]; CHAR HtmlTroubleShooter[MAX_PATH];} SP_TROUBLESHOOTER_PARAMS_A, *PSP_TROUBLESHOOTER_PARAMS_A;typedef struct _SP_TROUBLESHOOTER_PARAMS_W { SP_CLASSINSTALL_HEADER ClassInstallHeader; WCHAR ChmFile[MAX_PATH]; WCHAR HtmlTroubleShooter[MAX_PATH];} SP_TROUBLESHOOTER_PARAMS_W, *PSP_TROUBLESHOOTER_PARAMS_W;typedef struct _SP_POWERMESSAGEWAKE_PARAMS_A { SP_CLASSINSTALL_HEADER ClassInstallHeader; CHAR PowerMessageWake[LINE_LEN*2];} SP_POWERMESSAGEWAKE_PARAMS_A, *PSP_POWERMESSAGEWAKE_PARAMS_A;typedef struct _SP_POWERMESSAGEWAKE_PARAMS_W { SP_CLASSINSTALL_HEADER ClassInstallHeader; WCHAR PowerMessageWake[LINE_LEN*2];} SP_POWERMESSAGEWAKE_PARAMS_W, *PSP_POWERMESSAGEWAKE_PARAMS_W;typedef struct _SP_DRVINFO_DATA_V2_A { DWORD cbSize; DWORD DriverType; ULONG_PTR Reserved; CHAR Description[LINE_LEN]; CHAR MfgName[LINE_LEN]; CHAR ProviderName[LINE_LEN]; FILETIME DriverDate; DWORDLONG DriverVersion;} SP_DRVINFO_DATA_V2_A, *PSP_DRVINFO_DATA_V2_A;typedef struct _SP_DRVINFO_DATA_V2_W { DWORD cbSize; DWORD DriverType; ULONG_PTR Reserved; WCHAR Description[LINE_LEN]; WCHAR MfgName[LINE_LEN]; WCHAR ProviderName[LINE_LEN]; FILETIME DriverDate; DWORDLONG DriverVersion;} SP_DRVINFO_DATA_V2_W, *PSP_DRVINFO_DATA_V2_W;typedef struct _SP_DRVINFO_DATA_V1_A { DWORD cbSize; DWORD DriverType; ULONG_PTR Reserved; CHAR Description[LINE_LEN]; CHAR MfgName[LINE_LEN]; CHAR ProviderName[LINE_LEN];} SP_DRVINFO_DATA_V1_A, *PSP_DRVINFO_DATA_V1_A;typedef struct _SP_DRVINFO_DATA_V1_W { DWORD cbSize; DWORD DriverType; ULONG_PTR Reserved; WCHAR Description[LINE_LEN]; WCHAR MfgName[LINE_LEN]; WCHAR ProviderName[LINE_LEN];} SP_DRVINFO_DATA_V1_W, *PSP_DRVINFO_DATA_V1_W;
#ifdef UNICODEtypedef SP_DRVINFO_DATA_V1_W SP_DRVINFO_DATA_V1, *PSP_DRVINFO_DATA_V1;typedef SP_DRVINFO_DATA_V2_W SP_DRVINFO_DATA_V2, *PSP_DRVINFO_DATA_V2;#elsetypedef SP_DRVINFO_DATA_V1_A SP_DRVINFO_DATA_V1, *PSP_DRVINFO_DATA_V1;typedef SP_DRVINFO_DATA_V2_A SP_DRVINFO_DATA_V2, *PSP_DRVINFO_DATA_V2;#endif
#if USE_SP_DRVINFO_DATA_V1typedef SP_DRVINFO_DATA_V1_A SP_DRVINFO_DATA_A, *PSP_DRVINFO_DATA_A;typedef SP_DRVINFO_DATA_V1_W SP_DRVINFO_DATA_W, *PSP_DRVINFO_DATA_W;typedef SP_DRVINFO_DATA_V1 SP_DRVINFO_DATA, *PSP_DRVINFO_DATA;#elsetypedef SP_DRVINFO_DATA_V2_A SP_DRVINFO_DATA_A, *PSP_DRVINFO_DATA_A;typedef SP_DRVINFO_DATA_V2_W SP_DRVINFO_DATA_W, *PSP_DRVINFO_DATA_W;typedef SP_DRVINFO_DATA_V2 SP_DRVINFO_DATA, *PSP_DRVINFO_DATA;#endif
typedef DWORD (CALLBACK* PSP_DETSIG_CMPPROC)(HDEVINFO,PSP_DEVINFO_DATA,PSP_DEVINFO_DATA,PVOID);
typedef struct _SP_DRVINFO_DETAIL_DATA_A { DWORD cbSize; FILETIME InfDate; DWORD CompatIDsOffset; DWORD CompatIDsLength; ULONG_PTR Reserved; CHAR SectionName[LINE_LEN]; CHAR InfFileName[MAX_PATH]; CHAR DrvDescription[LINE_LEN]; CHAR HardwareID[ANYSIZE_ARRAY];} SP_DRVINFO_DETAIL_DATA_A, *PSP_DRVINFO_DETAIL_DATA_A;typedef struct _SP_DRVINFO_DETAIL_DATA_W { DWORD cbSize; FILETIME InfDate; DWORD CompatIDsOffset; DWORD CompatIDsLength; ULONG_PTR Reserved; WCHAR SectionName[LINE_LEN]; WCHAR InfFileName[MAX_PATH]; WCHAR DrvDescription[LINE_LEN]; WCHAR HardwareID[ANYSIZE_ARRAY];} SP_DRVINFO_DETAIL_DATA_W, *PSP_DRVINFO_DETAIL_DATA_W;typedef struct _SP_DRVINSTALL_PARAMS { DWORD cbSize; DWORD Rank; DWORD Flags; DWORD_PTR PrivateData; DWORD Reserved;} SP_DRVINSTALL_PARAMS, *PSP_DRVINSTALL_PARAMS;
typedef struct _COINSTALLER_CONTEXT_DATA { BOOL PostProcessing; DWORD InstallResult; PVOID PrivateData;} COINSTALLER_CONTEXT_DATA, *PCOINSTALLER_CONTEXT_DATA;typedef struct _SP_CLASSIMAGELIST_DATA { DWORD cbSize; HIMAGELIST ImageList; ULONG_PTR Reserved;} SP_CLASSIMAGELIST_DATA, *PSP_CLASSIMAGELIST_DATA;typedef struct _SP_PROPSHEETPAGE_REQUEST { DWORD cbSize; DWORD PageRequested; HDEVINFO DeviceInfoSet; PSP_DEVINFO_DATA DeviceInfoData;} SP_PROPSHEETPAGE_REQUEST, *PSP_PROPSHEETPAGE_REQUEST;typedef struct _SP_BACKUP_QUEUE_PARAMS_A { DWORD cbSize; CHAR FullInfPath[MAX_PATH]; INT FilenameOffset;} SP_BACKUP_QUEUE_PARAMS_A, *PSP_BACKUP_QUEUE_PARAMS_A;typedef struct _SP_BACKUP_QUEUE_PARAMS_W { DWORD cbSize; WCHAR FullInfPath[MAX_PATH]; INT FilenameOffset;} SP_BACKUP_QUEUE_PARAMS_W, *PSP_BACKUP_QUEUE_PARAMS_W;
#ifdef UNICODEtypedef SP_ORIGINAL_FILE_INFO_W SP_ORIGINAL_FILE_INFO, *PSP_ORIGINAL_FILE_INFO;typedef FILEPATHS_W FILEPATHS, *PFILEPATHS;typedef SOURCE_MEDIA_W SOURCE_MEDIA, *PSOURCE_MEDIA;typedef CABINET_INFO_W CABINET_INFO, *PCABINET_INFO;typedef FILE_IN_CABINET_INFO_W FILE_IN_CABINET_INFO, *PFILE_IN_CABINET_INFO;typedef SP_FILE_COPY_PARAMS_W SP_FILE_COPY_PARAMS, PSP_FILE_COPY_PARAMS;typedef SP_DEVICE_INTERFACE_DETAIL_DATA_W SP_DEVICE_INTERFACE_DETAIL_DATA, *PSP_DEVICE_INTERFACE_DETAIL_DATA;typedef SP_INTERFACE_DEVICE_DETAIL_DATA_W SP_INTERFACE_DEVICE_DETAIL_DATA, *PSP_INTERFACE_DEVICE_DETAIL_DATA; /* deprecated */typedef SP_DEVINFO_LIST_DETAIL_DATA_W SP_DEVINFO_LIST_DETAIL_DATA, *PSP_DEVINFO_LIST_DETAIL_DATA;typedef SP_DEVINSTALL_PARAMS_W SP_DEVINSTALL_PARAMS, *PSP_DEVINSTALL_PARAMS;typedef SP_SELECTDEVICE_PARAMS_W SP_SELECTDEVICE_PARAMS, *PSP_SELECTDEVICE_PARAMS;typedef SP_TROUBLESHOOTER_PARAMS_W SP_TROUBLESHOOTER_PARAMS, *PSP_TROUBLESHOOTER_PARAMS;typedef SP_POWERMESSAGEWAKE_PARAMS_W SP_POWERMESSAGEWAKE_PARAMS, *PSP_POWERMESSAGEWAKE_PARAMS;typedef SP_DRVINFO_DETAIL_DATA_W SP_DRVINFO_DETAIL_DATA, *PSP_DRVINFO_DETAIL_DATA;typedef SP_BACKUP_QUEUE_PARAMS_W SP_BACKUP_QUEUE_PARAMS, *PSP_BACKUP_QUEUE_PARAMS;typedef SP_REGISTER_CONTROL_STATUSW SP_REGISTER_CONTROL_STATUS, *PSP_REGISTER_CONTROL_STATUS;#elsetypedef SP_ORIGINAL_FILE_INFO_A SP_ORIGINAL_FILE_INFO, *PSP_ORIGINAL_FILE_INFO;typedef FILEPATHS_A FILEPATHS, *PFILEPATHS;typedef SOURCE_MEDIA_A SOURCE_MEDIA, *PSOURCE_MEDIA;typedef CABINET_INFO_A CABINET_INFO, *PCABINET_INFO;typedef FILE_IN_CABINET_INFO_A FILE_IN_CABINET_INFO, *PFILE_IN_CABINET_INFO;typedef SP_FILE_COPY_PARAMS_A SP_FILE_COPY_PARAMS, *PSP_FILE_COPY_PARAMS;typedef SP_DEVICE_INTERFACE_DETAIL_DATA_A SP_DEVICE_INTERFACE_DETAIL_DATA, *PSP_DEVICE_INTERFACE_DETAIL_DATA;typedef SP_INTERFACE_DEVICE_DETAIL_DATA_A SP_INTERFACE_DEVICE_DETAIL_DATA, *PSP_INTERFACE_DEVICE_DETAIL_DATA; /* deprecated */typedef SP_DEVINFO_LIST_DETAIL_DATA_A SP_DEVINFO_LIST_DETAIL_DATA, *PSP_DEVINFO_LIST_DETAIL_DATA;typedef SP_DEVINSTALL_PARAMS_A SP_DEVINSTALL_PARAMS, *PSP_DEVINSTALL_PARAMS;typedef SP_SELECTDEVICE_PARAMS_A SP_SELECTDEVICE_PARAMS, *PSP_SELECTDEVICE_PARAMS;typedef SP_TROUBLESHOOTER_PARAMS_A SP_TROUBLESHOOTER_PARAMS, *PSP_TROUBLESHOOTER_PARAMS;typedef SP_POWERMESSAGEWAKE_PARAMS_A SP_POWERMESSAGEWAKE_PARAMS, *PSP_POWERMESSAGEWAKE_PARAMS;typedef SP_DRVINFO_DETAIL_DATA_A SP_DRVINFO_DETAIL_DATA, *PSP_DRVINFO_DETAIL_DATA;typedef SP_BACKUP_QUEUE_PARAMS_A SP_BACKUP_QUEUE_PARAMS, *PSP_BACKUP_QUEUE_PARAMS;typedef SP_REGISTER_CONTROL_STATUSA SP_REGISTER_CONTROL_STATUS, *PSP_REGISTER_CONTROL_STATUS;#endif /* UNICODE */
WINSETUPAPI LONG WINAPI AddTagToGroupOrderList(PCWSTR, DWORD, DWORD);WINSETUPAPI VOID WINAPI AssertFail(LPSTR, UINT, LPSTR);WINSETUPAPI DWORD WINAPI CaptureStringArg(PCWSTR, PWSTR*);WINSETUPAPI BOOL WINAPI DelayedMove(PCWSTR, PCWSTR);WINSETUPAPI BOOL WINAPI DoesUserHavePrivilege(PCWSTR);WINSETUPAPI BOOL WINAPI FileExists(PCWSTR, PWIN32_FIND_DATAW);WINSETUPAPI DWORD WINAPI GetSetFileTimestamp(PCWSTR, PFILETIME, PFILETIME, PFILETIME, BOOLEAN);WINSETUPAPI VOID WINAPI InstallHinfSectionA(_In_ HWND, _In_ HINSTANCE, _In_ PCSTR, _In_ INT);WINSETUPAPI VOID WINAPI InstallHinfSectionW(_In_ HWND, _In_ HINSTANCE, _In_ PCWSTR, _In_ INT);WINSETUPAPI BOOL WINAPI IsUserAdmin(VOID);WINSETUPAPI VOID WINAPI MyFree(PVOID);WINSETUPAPI PVOID WINAPI MyMalloc(DWORD);WINSETUPAPI PVOID WINAPI MyRealloc(PVOID, DWORD);WINSETUPAPI LONG WINAPI QueryRegistryValue(HKEY, PCWSTR, PBYTE*, PDWORD, PDWORD);WINSETUPAPI DWORD WINAPI RetreiveFileSecurity(PCWSTR, PSECURITY_DESCRIPTOR*);
WINSETUPAPI BOOL WINAPI SetupAddInstallSectionToDiskSpaceListA(_In_ HDSKSPC, _In_ HINF, _In_opt_ HINF, _In_ PCSTR, _Reserved_ PVOID, _Reserved_ UINT);WINSETUPAPI BOOL WINAPI SetupAddInstallSectionToDiskSpaceListW(_In_ HDSKSPC, _In_ HINF, _In_opt_ HINF, _In_ PCWSTR, _Reserved_ PVOID, _Reserved_ UINT);WINSETUPAPI BOOL WINAPI SetupAddSectionToDiskSpaceListA(_In_ HDSKSPC, _In_ HINF, _In_opt_ HINF, _In_ PCSTR, _In_ UINT, _Reserved_ PVOID, _Reserved_ UINT);WINSETUPAPI BOOL WINAPI SetupAddSectionToDiskSpaceListW(_In_ HDSKSPC, _In_ HINF, _In_opt_ HINF, _In_ PCWSTR, _In_ UINT, _Reserved_ PVOID, _Reserved_ UINT);WINSETUPAPI BOOL WINAPI SetupAddToDiskSpaceListA(_In_ HDSKSPC, _In_ PCSTR, _In_ LONGLONG, _In_ UINT, _Reserved_ PVOID, _Reserved_ UINT);WINSETUPAPI BOOL WINAPI SetupAddToDiskSpaceListW(_In_ HDSKSPC, _In_ PCWSTR, _In_ LONGLONG, _In_ UINT, _Reserved_ PVOID, _Reserved_ UINT);WINSETUPAPI BOOL WINAPI SetupAddToSourceListA(_In_ DWORD, _In_ PCSTR);WINSETUPAPI BOOL WINAPI SetupAddToSourceListW(_In_ DWORD, _In_ PCWSTR);WINSETUPAPI BOOL WINAPI SetupAdjustDiskSpaceListA(_In_ HDSKSPC, _In_ LPCSTR, _In_ LONGLONG, _Reserved_ PVOID, _Reserved_ UINT);WINSETUPAPI BOOL WINAPI SetupAdjustDiskSpaceListW(_In_ HDSKSPC, _In_ LPCWSTR, _In_ LONGLONG, _Reserved_ PVOID, _Reserved_ UINT);WINSETUPAPI UINT WINAPI SetupBackupErrorA(_In_ HWND, _In_opt_ PCSTR, _In_ PCSTR, _In_opt_ PCSTR, _In_ UINT, _In_ DWORD);WINSETUPAPI UINT WINAPI SetupBackupErrorW(_In_ HWND, _In_opt_ PCWSTR, _In_ PCWSTR, _In_opt_ PCWSTR, _In_ UINT, _In_ DWORD);WINSETUPAPI BOOL WINAPI SetupCancelTemporary(VOID);WINSETUPAPI BOOL WINAPI SetupCloseFileQueue(_In_ HSPFILEQ);WINSETUPAPI VOID WINAPI SetupCloseInfFile(_In_ HINF);WINSETUPAPI VOID WINAPI SetupCloseLog(VOID);WINSETUPAPI BOOL WINAPI SetupCommitFileQueueA(_In_opt_ HWND, _In_ HSPFILEQ, _In_ PSP_FILE_CALLBACK_A, _In_ PVOID);WINSETUPAPI BOOL WINAPI SetupCommitFileQueueW(_In_opt_ HWND, _In_ HSPFILEQ, _In_ PSP_FILE_CALLBACK_W, _In_ PVOID);
WINSETUPAPIUINTWINAPISetupCopyErrorA( _In_ HWND hwndParent, _In_opt_ PCSTR DialogTitle, _In_opt_ PCSTR DiskName, _In_ PCSTR PathToSource, _In_ PCSTR SourceFile, _In_opt_ PCSTR TargetPathFile, _In_ UINT Win32ErrorCode, _In_ DWORD Style, _Out_writes_opt_(PathBufferSize) PSTR PathBuffer, _In_ DWORD PathBufferSize, _Out_opt_ PDWORD PathRequiredSize);
WINSETUPAPIUINTWINAPISetupCopyErrorW( _In_ HWND hwndParent, _In_opt_ PCWSTR DialogTitle, _In_opt_ PCWSTR DiskName, _In_ PCWSTR PathToSource, _In_ PCWSTR SourceFile, _In_opt_ PCWSTR TargetPathFile, _In_ UINT Win32ErrorCode, _In_ DWORD Style, _Out_writes_opt_(PathBufferSize) PWSTR PathBuffer, _In_ DWORD PathBufferSize, _Out_opt_ PDWORD PathRequiredSize);
WINSETUPAPIBOOLWINAPISetupCopyOEMInfA( _In_ PCSTR SourceInfFileName, _In_opt_ PCSTR OEMSourceMediaLocation, _In_ DWORD OEMSourceMediaType, _In_ DWORD CopyStyle, _Out_writes_opt_(DestinationInfFileNameSize) PSTR DestinationInfFileName, _In_ DWORD DestinationInfFileNameSize, _Out_opt_ PDWORD RequiredSize, _Out_opt_ PSTR *DestinationInfFileNameComponent);
WINSETUPAPIBOOLWINAPISetupCopyOEMInfW( _In_ PCWSTR SourceInfFileName, _In_opt_ PCWSTR OEMSourceMediaLocation, _In_ DWORD OEMSourceMediaType, _In_ DWORD CopyStyle, _Out_writes_opt_(DestinationInfFileNameSize) PWSTR DestinationInfFileName, _In_ DWORD DestinationInfFileNameSize, _Out_opt_ PDWORD RequiredSize, _Out_opt_ PWSTR *DestinationInfFileNameComponent);
WINSETUPAPI HDSKSPC WINAPI SetupCreateDiskSpaceListA(_Reserved_ PVOID, _Reserved_ DWORD, _In_ UINT);WINSETUPAPI HDSKSPC WINAPI SetupCreateDiskSpaceListW(_Reserved_ PVOID, _Reserved_ DWORD, _In_ UINT);WINSETUPAPI DWORD WINAPI SetupDecompressOrCopyFileA(_In_ PCSTR, _In_ PCSTR, _In_opt_ PUINT);WINSETUPAPI DWORD WINAPI SetupDecompressOrCopyFileW(_In_ PCWSTR, _In_ PCWSTR, _In_opt_ PUINT);WINSETUPAPI UINT WINAPI SetupDefaultQueueCallbackA(_In_ PVOID, _In_ UINT, _In_ UINT_PTR, _In_ UINT_PTR);WINSETUPAPI UINT WINAPI SetupDefaultQueueCallbackW(_In_ PVOID, _In_ UINT, _In_ UINT_PTR, _In_ UINT_PTR);WINSETUPAPI UINT WINAPI SetupDeleteErrorA(_In_ HWND, _In_opt_ PCSTR, _In_ PCSTR, _In_ UINT, _In_ DWORD);WINSETUPAPI UINT WINAPI SetupDeleteErrorW(_In_ HWND, _In_opt_ PCWSTR, _In_ PCWSTR, _In_ UINT, _In_ DWORD);WINSETUPAPI BOOL WINAPI SetupDestroyDiskSpaceList(_Inout_ HDSKSPC);WINSETUPAPI BOOL WINAPI SetupDiAskForOEMDisk(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA);
_Success_(return != FALSE)WINSETUPAPIBOOLWINAPISetupDiBuildClassInfoList( _In_ DWORD Flags, _Out_writes_to_opt_(ClassGuidListSize, *RequiredSize) LPGUID ClassGuidList, _In_ DWORD ClassGuidListSize, _Out_ PDWORD RequiredSize);
_Success_(return != FALSE)WINSETUPAPIBOOLWINAPISetupDiBuildClassInfoListExA( _In_ DWORD Flags, _Out_writes_to_opt_(ClassGuidListSize, *RequiredSize) LPGUID ClassGuidList, _In_ DWORD ClassGuidListSize, _Out_ PDWORD RequiredSize, _In_opt_ PCSTR MachineName, _Reserved_ PVOID Reserved);
_Success_(return != FALSE)WINSETUPAPIBOOLWINAPISetupDiBuildClassInfoListExW( _In_ DWORD Flags, _Out_writes_to_opt_(ClassGuidListSize, *RequiredSize) LPGUID ClassGuidList, _In_ DWORD ClassGuidListSize, _Out_ PDWORD RequiredSize, _In_opt_ PCWSTR MachineName, _Reserved_ PVOID Reserved);
WINSETUPAPI BOOL WINAPI SetupDiBuildDriverInfoList(_In_ HDEVINFO, _Inout_opt_ PSP_DEVINFO_DATA, _In_ DWORD);WINSETUPAPI BOOL WINAPI SetupDiCallClassInstaller(_In_ DI_FUNCTION, _In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA);WINSETUPAPI BOOL WINAPI SetupDiCancelDriverInfoSearch(_In_ HDEVINFO);WINSETUPAPI BOOL WINAPI SetupDiChangeState(_In_ HDEVINFO, _Inout_ PSP_DEVINFO_DATA);
_Success_(return != FALSE)WINSETUPAPIBOOLWINAPISetupDiClassGuidsFromNameA( _In_ PCSTR ClassName, _Out_writes_to_(ClassGuidListSize, *RequiredSize) LPGUID ClassGuidList, _In_ DWORD ClassGuidListSize, _Out_ PDWORD RequiredSize);
_Success_(return != FALSE)WINSETUPAPIBOOLWINAPISetupDiClassGuidsFromNameW( _In_ PCWSTR ClassName, _Out_writes_to_(ClassGuidListSize, *RequiredSize) LPGUID ClassGuidList, _In_ DWORD ClassGuidListSize, _Out_ PDWORD RequiredSize);
_Success_(return != FALSE)WINSETUPAPIBOOLWINAPISetupDiClassGuidsFromNameExA( _In_ PCSTR ClassName, _Out_writes_to_(ClassGuidListSize, *RequiredSize) LPGUID ClassGuidList, _In_ DWORD ClassGuidListSize, _Out_ PDWORD RequiredSize, _In_opt_ PCSTR MachineName, _Reserved_ PVOID Reserved);
_Success_(return != FALSE)WINSETUPAPIBOOLWINAPISetupDiClassGuidsFromNameExW( _In_ PCWSTR ClassName, _Out_writes_to_(ClassGuidListSize, *RequiredSize) LPGUID ClassGuidList, _In_ DWORD ClassGuidListSize, _Out_ PDWORD RequiredSize, _In_opt_ PCWSTR MachineName, _Reserved_ PVOID Reserved);
WINSETUPAPIBOOLWINAPISetupDiClassNameFromGuidA( _In_ CONST GUID *ClassGuid, _Out_writes_(ClassNameSize) PSTR ClassName, _In_ DWORD ClassNameSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupDiClassNameFromGuidW( _In_ CONST GUID *ClassGuid, _Out_writes_(ClassNameSize) PWSTR ClassName, _In_ DWORD ClassNameSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupDiClassNameFromGuidExA( _In_ CONST GUID *ClassGuid, _Out_writes_(ClassNameSize) PSTR ClassName, _In_ DWORD ClassNameSize, _Out_opt_ PDWORD RequiredSize, _In_opt_ PCSTR MachineName, _Reserved_ PVOID Reserved);
WINSETUPAPIBOOLWINAPISetupDiClassNameFromGuidExW( _In_ CONST GUID *ClassGuid, _Out_writes_(ClassNameSize) PWSTR ClassName, _In_ DWORD ClassNameSize, _Out_opt_ PDWORD RequiredSize, _In_opt_ PCWSTR MachineName, _Reserved_ PVOID Reserved);
WINSETUPAPI BOOL WINAPI SetupDiCreateDeviceInfoA(_In_ HDEVINFO, _In_ PCSTR, _In_ CONST GUID*, _In_opt_ PCSTR, _In_opt_ HWND, _In_ DWORD, _Out_opt_ PSP_DEVINFO_DATA);WINSETUPAPI BOOL WINAPI SetupDiCreateDeviceInfoW(_In_ HDEVINFO, _In_ PCWSTR, _In_ CONST GUID*, _In_opt_ PCWSTR, _In_opt_ HWND, _In_ DWORD, _Out_opt_ PSP_DEVINFO_DATA);_Check_return_ WINSETUPAPI HDEVINFO WINAPI SetupDiCreateDeviceInfoList(_In_opt_ CONST GUID*, _In_opt_ HWND);_Check_return_ WINSETUPAPI HDEVINFO WINAPI SetupDiCreateDeviceInfoListExA(_In_opt_ CONST GUID*, _In_opt_ HWND, _In_opt_ PCSTR, _Reserved_ PVOID);_Check_return_ WINSETUPAPI HDEVINFO WINAPI SetupDiCreateDeviceInfoListExW(_In_opt_ CONST GUID*, _In_opt_ HWND, _In_opt_ PCWSTR, _Reserved_ PVOID);WINSETUPAPI BOOL WINAPI SetupDiCreateDeviceInterfaceA(_In_ HDEVINFO, _In_ PSP_DEVINFO_DATA, _In_ CONST GUID*, _In_opt_ PCSTR, _In_ DWORD, _Out_opt_ PSP_DEVICE_INTERFACE_DATA);WINSETUPAPI BOOL WINAPI SetupDiCreateDeviceInterfaceW(_In_ HDEVINFO, _In_ PSP_DEVINFO_DATA, _In_ CONST GUID*, _In_opt_ PCWSTR, _In_ DWORD, _Out_opt_ PSP_DEVICE_INTERFACE_DATA);_Check_return_ WINSETUPAPI HKEY WINAPI SetupDiCreateDeviceInterfaceRegKeyA(_In_ HDEVINFO, _In_ PSP_DEVICE_INTERFACE_DATA, _Reserved_ DWORD, _In_ REGSAM, _In_opt_ HINF, _In_opt_ PCSTR);_Check_return_ WINSETUPAPI HKEY WINAPI SetupDiCreateDeviceInterfaceRegKeyW(_In_ HDEVINFO, _In_ PSP_DEVICE_INTERFACE_DATA, _Reserved_ DWORD, _In_ REGSAM, _In_opt_ HINF, _In_opt_ PCWSTR);_Check_return_ WINSETUPAPI HKEY WINAPI SetupDiCreateDevRegKeyA(_In_ HDEVINFO, _In_ PSP_DEVINFO_DATA, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_opt_ HINF, _In_opt_ PCSTR);_Check_return_ WINSETUPAPI HKEY WINAPI SetupDiCreateDevRegKeyW(_In_ HDEVINFO, _In_ PSP_DEVINFO_DATA, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_opt_ HINF, _In_opt_ PCWSTR);WINSETUPAPI BOOL WINAPI SetupDiDeleteDeviceInfo(_In_ HDEVINFO, _In_ PSP_DEVINFO_DATA);WINSETUPAPI BOOL WINAPI SetupDiDeleteDeviceInterfaceData(_In_ HDEVINFO, _In_ PSP_DEVICE_INTERFACE_DATA);WINSETUPAPI BOOL WINAPI SetupDiDeleteDeviceInterfaceRegKey(_In_ HDEVINFO, _In_ PSP_DEVICE_INTERFACE_DATA, _Reserved_ DWORD);WINSETUPAPI BOOL WINAPI SetupDiDeleteDevRegKey(_In_ HDEVINFO, _In_ PSP_DEVINFO_DATA, _In_ DWORD, _In_ DWORD, _In_ DWORD);WINSETUPAPI BOOL WINAPI SetupDiDestroyClassImageList(_In_ PSP_CLASSIMAGELIST_DATA);WINSETUPAPI BOOL WINAPI SetupDiDestroyDeviceInfoList(_In_ HDEVINFO);WINSETUPAPI BOOL WINAPI SetupDiDestroyDriverInfoList(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ DWORD);WINSETUPAPI INT WINAPI SetupDiDrawMiniIcon(_In_ HDC, _In_ RECT, _In_ INT, _In_ DWORD);WINSETUPAPI BOOL WINAPI SetupDiEnumDeviceInfo(_In_ HDEVINFO, _In_ DWORD, _Out_ PSP_DEVINFO_DATA);WINSETUPAPI BOOL WINAPI SetupDiEnumDeviceInterfaces(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ CONST GUID*, _In_ DWORD, _Out_ PSP_DEVICE_INTERFACE_DATA);WINSETUPAPI BOOL WINAPI SetupDiEnumDriverInfoA(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ DWORD, _In_ DWORD, _Out_ PSP_DRVINFO_DATA_A);WINSETUPAPI BOOL WINAPI SetupDiEnumDriverInfoW(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ DWORD, _In_ DWORD, _Out_ PSP_DRVINFO_DATA_W);
WINSETUPAPIBOOLWINAPISetupDiGetActualSectionToInstallA( _In_ HINF InfHandle, _In_ PCSTR InfSectionName, _Out_writes_opt_(InfSectionWithExtSize) PSTR InfSectionWithExt, _In_ DWORD InfSectionWithExtSize, _Out_opt_ PDWORD RequiredSize, _Out_opt_ PSTR *Extension);
WINSETUPAPIBOOLWINAPISetupDiGetActualSectionToInstallW( _In_ HINF InfHandle, _In_ PCWSTR InfSectionName, _Out_writes_opt_(InfSectionWithExtSize) PWSTR InfSectionWithExt, _In_ DWORD InfSectionWithExtSize, _Out_opt_ PDWORD RequiredSize, _Out_opt_ PWSTR *Extension);
WINSETUPAPIBOOLWINAPISetupDiGetActualSectionToInstallExA( _In_ HINF InfHandle, _In_ PCSTR InfSectionName, _In_opt_ PSP_ALTPLATFORM_INFO AlternatePlatformInfo, _Out_writes_opt_(InfSectionWithExtSize) PSTR InfSectionWithExt, _In_ DWORD InfSectionWithExtSize, _Out_opt_ PDWORD RequiredSize, _Out_opt_ PSTR *Extension, _Reserved_ PVOID Reserved);
WINSETUPAPIBOOLWINAPISetupDiGetActualSectionToInstallExW( _In_ HINF InfHandle, _In_ PCWSTR InfSectionName, _In_opt_ PSP_ALTPLATFORM_INFO AlternatePlatformInfo, _Out_writes_opt_(InfSectionWithExtSize) PWSTR InfSectionWithExt, _In_ DWORD InfSectionWithExtSize, _Out_opt_ PDWORD RequiredSize, _Out_opt_ PWSTR *Extension, _Reserved_ PVOID Reserved);
WINSETUPAPI BOOL WINAPI SetupDiGetClassBitmapIndex(_In_opt_ CONST GUID*, _Out_ PINT);
WINSETUPAPIBOOLWINAPISetupDiGetClassDescriptionA( _In_ CONST GUID *ClassGuid, _Out_writes_(ClassDescriptionSize) PSTR ClassDescription, _In_ DWORD ClassDescriptionSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupDiGetClassDescriptionW( _In_ CONST GUID *ClassGuid, _Out_writes_(ClassDescriptionSize) PWSTR ClassDescription, _In_ DWORD ClassDescriptionSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupDiGetClassDescriptionExA( _In_ CONST GUID *ClassGuid, _Out_writes_(ClassDescriptionSize) PSTR ClassDescription, _In_ DWORD ClassDescriptionSize, _Out_opt_ PDWORD RequiredSize, _In_opt_ PCSTR MachineName, _Reserved_ PVOID Reserved);
WINSETUPAPIBOOLWINAPISetupDiGetClassDescriptionExW( _In_ CONST GUID *ClassGuid, _Out_writes_(ClassDescriptionSize) PWSTR ClassDescription, _In_ DWORD ClassDescriptionSize, _Out_opt_ PDWORD RequiredSize, _In_opt_ PCWSTR MachineName, _Reserved_ PVOID Reserved);
WINSETUPAPI BOOL WINAPI SetupDiGetClassDevPropertySheetsA(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ LPPROPSHEETHEADERA, _In_ DWORD, _Out_opt_ PDWORD, _In_ DWORD);WINSETUPAPI BOOL WINAPI SetupDiGetClassDevPropertySheetsW(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ LPPROPSHEETHEADERW, _In_ DWORD, _Out_opt_ PDWORD, _In_ DWORD);_Check_return_ WINSETUPAPI HDEVINFO WINAPI SetupDiGetClassDevsA(_In_opt_ CONST GUID*, _In_opt_ PCSTR, _In_opt_ HWND, _In_ DWORD);_Check_return_ WINSETUPAPI HDEVINFO WINAPI SetupDiGetClassDevsW(_In_opt_ CONST GUID*, _In_opt_ PCWSTR, _In_opt_ HWND, _In_ DWORD);_Check_return_ WINSETUPAPI HDEVINFO WINAPI SetupDiGetClassDevsExA(_In_opt_ CONST GUID*, _In_opt_ PCSTR, _In_opt_ HWND, _In_ DWORD, _In_opt_ HDEVINFO, _In_opt_ PCSTR, _Reserved_ PVOID);_Check_return_ WINSETUPAPI HDEVINFO WINAPI SetupDiGetClassDevsExW(_In_opt_ CONST GUID*, _In_opt_ PCWSTR, _In_opt_ HWND, _In_ DWORD, _In_opt_ HDEVINFO, _In_opt_ PCWSTR, _Reserved_ PVOID);WINSETUPAPI BOOL WINAPI SetupDiGetClassImageIndex(_In_ PSP_CLASSIMAGELIST_DATA, _In_ CONST GUID*, _Out_ PINT);WINSETUPAPI BOOL WINAPI SetupDiGetClassImageList(_Out_ PSP_CLASSIMAGELIST_DATA);WINSETUPAPI BOOL WINAPI SetupDiGetClassImageListExA(_Out_ PSP_CLASSIMAGELIST_DATA, _In_opt_ PCSTR, _Reserved_ PVOID);WINSETUPAPI BOOL WINAPI SetupDiGetClassImageListExW(_Out_ PSP_CLASSIMAGELIST_DATA, _In_opt_ PCWSTR, _Reserved_ PVOID);
_Success_(return != FALSE)WINSETUPAPIBOOLWINAPISetupDiGetClassInstallParamsA( _In_ HDEVINFO DeviceInfoSet, _In_opt_ PSP_DEVINFO_DATA DeviceInfoData, _Out_writes_bytes_to_opt_(ClassInstallParamsSize, *RequiredSize) PSP_CLASSINSTALL_HEADER ClassInstallParams, _In_ DWORD ClassInstallParamsSize, _Out_opt_ PDWORD RequiredSize);
_Success_(return != FALSE)WINSETUPAPIBOOLWINAPISetupDiGetClassInstallParamsW( _In_ HDEVINFO DeviceInfoSet, _In_opt_ PSP_DEVINFO_DATA DeviceInfoData, _Out_writes_bytes_to_opt_(ClassInstallParamsSize, *RequiredSize) PSP_CLASSINSTALL_HEADER ClassInstallParams, _In_ DWORD ClassInstallParamsSize, _Out_opt_ PDWORD RequiredSize);
_Success_(return != FALSE)WINSETUPAPIBOOLWINAPISetupDiGetClassRegistryPropertyA( _In_ CONST GUID *ClassGuid, _In_ DWORD Property, _Out_opt_ PDWORD PropertyRegDataType, _Out_writes_bytes_to_(PropertyBufferSize, *RequiredSize) PBYTE PropertyBuffer, _In_ DWORD PropertyBufferSize, _Out_opt_ PDWORD RequiredSize, _In_opt_ PCSTR MachineName, _Reserved_ PVOID Reserved);
_Success_(return != FALSE)WINSETUPAPIBOOLWINAPISetupDiGetClassRegistryPropertyW( _In_ CONST GUID *ClassGuid, _In_ DWORD Property, _Out_opt_ PDWORD PropertyRegDataType, _Out_writes_bytes_to_(PropertyBufferSize, *RequiredSize) PBYTE PropertyBuffer, _In_ DWORD PropertyBufferSize, _Out_opt_ PDWORD RequiredSize, _In_opt_ PCWSTR MachineName, _Reserved_ PVOID Reserved);
WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInfoListClass(_In_ HDEVINFO, _Out_ LPGUID);WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInfoListDetailA(_In_ HDEVINFO, _Out_ PSP_DEVINFO_LIST_DETAIL_DATA_A);WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInfoListDetailW(_In_ HDEVINFO, _Out_ PSP_DEVINFO_LIST_DETAIL_DATA_W);WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInstallParamsA(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _Out_ PSP_DEVINSTALL_PARAMS_A);WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInstallParamsW(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _Out_ PSP_DEVINSTALL_PARAMS_W);
WINSETUPAPIBOOLWINAPISetupDiGetDeviceInstanceIdA( _In_ HDEVINFO DeviceInfoSet, _In_ PSP_DEVINFO_DATA DeviceInfoData, _Out_writes_opt_(DeviceInstanceIdSize) PSTR DeviceInstanceId, _In_ DWORD DeviceInstanceIdSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupDiGetDeviceInstanceIdW( _In_ HDEVINFO DeviceInfoSet, _In_ PSP_DEVINFO_DATA DeviceInfoData, _Out_writes_opt_(DeviceInstanceIdSize) PWSTR DeviceInstanceId, _In_ DWORD DeviceInstanceIdSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInterfaceAlias(_In_ HDEVINFO, _In_ PSP_DEVICE_INTERFACE_DATA, _In_ CONST GUID*, _Out_ PSP_DEVICE_INTERFACE_DATA);
_Success_(return != FALSE)_At_((LPSTR)DeviceInterfaceDetailData->DevicePath, _Post_z_)WINSETUPAPIBOOLWINAPISetupDiGetDeviceInterfaceDetailA( _In_ HDEVINFO DeviceInfoSet, _In_ PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData, _Inout_updates_bytes_to_opt_(DeviceInterfaceDetailDataSize, *RequiredSize) PSP_DEVICE_INTERFACE_DETAIL_DATA_A DeviceInterfaceDetailData, _In_ DWORD DeviceInterfaceDetailDataSize, _Out_opt_ _Out_range_(>=, sizeof(SP_DEVICE_INTERFACE_DETAIL_DATA_A)) PDWORD RequiredSize, _Out_opt_ PSP_DEVINFO_DATA DeviceInfoData);
_Success_(return != FALSE)_At_((LPWSTR)DeviceInterfaceDetailData->DevicePath, _Post_z_)WINSETUPAPIBOOLWINAPISetupDiGetDeviceInterfaceDetailW( _In_ HDEVINFO DeviceInfoSet, _In_ PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData, _Out_writes_bytes_to_opt_(DeviceInterfaceDetailDataSize, *RequiredSize) PSP_DEVICE_INTERFACE_DETAIL_DATA_W DeviceInterfaceDetailData, _In_ DWORD DeviceInterfaceDetailDataSize, _Out_opt_ _Out_range_(>=, sizeof(SP_DEVICE_INTERFACE_DETAIL_DATA_W)) PDWORD RequiredSize, _Out_opt_ PSP_DEVINFO_DATA DeviceInfoData);
_Success_(return != FALSE)_When_((*PropertyRegDataType == REG_SZ), _At_((PSTR) PropertyBuffer, _Post_valid_))_When_((*PropertyRegDataType == REG_MULTI_SZ), _At_((PZZSTR) PropertyBuffer, _Post_valid_))WINSETUPAPIBOOLWINAPISetupDiGetDeviceRegistryPropertyA( _In_ HDEVINFO DeviceInfoSet, _In_ PSP_DEVINFO_DATA DeviceInfoData, _In_ DWORD Property, _Out_opt_ PDWORD PropertyRegDataType, _Out_writes_bytes_to_opt_(PropertyBufferSize, *RequiredSize) PBYTE PropertyBuffer, _In_ DWORD PropertyBufferSize, _Out_opt_ PDWORD RequiredSize);
_Success_(return != FALSE)_When_((*PropertyRegDataType == REG_SZ), _At_((PWSTR) PropertyBuffer, _Post_valid_))_When_((*PropertyRegDataType == REG_MULTI_SZ), _At_((PZZWSTR) PropertyBuffer, _Post_valid_))WINSETUPAPIBOOLWINAPISetupDiGetDeviceRegistryPropertyW( _In_ HDEVINFO DeviceInfoSet, _In_ PSP_DEVINFO_DATA DeviceInfoData, _In_ DWORD Property, _Out_opt_ PDWORD PropertyRegDataType, _Out_writes_bytes_to_opt_(PropertyBufferSize, *RequiredSize) PBYTE PropertyBuffer, _In_ DWORD PropertyBufferSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupDiGetDriverInfoDetailA( _In_ HDEVINFO DeviceInfoSet, _In_opt_ PSP_DEVINFO_DATA DeviceInfoData, _In_ PSP_DRVINFO_DATA_A DriverInfoData, _Inout_updates_bytes_opt_(DriverInfoDetailDataSize) PSP_DRVINFO_DETAIL_DATA_A DriverInfoDetailData, _In_ DWORD DriverInfoDetailDataSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupDiGetDriverInfoDetailW( _In_ HDEVINFO DeviceInfoSet, _In_opt_ PSP_DEVINFO_DATA DeviceInfoData, _In_ PSP_DRVINFO_DATA_W DriverInfoData, _Inout_updates_bytes_opt_(DriverInfoDetailDataSize) PSP_DRVINFO_DETAIL_DATA_W DriverInfoDetailData, _In_ DWORD DriverInfoDetailDataSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPI BOOL WINAPI SetupDiGetDriverInstallParamsA(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ PSP_DRVINFO_DATA_A, _Out_ PSP_DRVINSTALL_PARAMS);WINSETUPAPI BOOL WINAPI SetupDiGetDriverInstallParamsW(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ PSP_DRVINFO_DATA_W, _Out_ PSP_DRVINSTALL_PARAMS);
WINSETUPAPIBOOLWINAPISetupDiGetHwProfileFriendlyNameA( _In_ DWORD HwProfile, _Out_writes_(FriendlyNameSize) PSTR FriendlyName, _In_ DWORD FriendlyNameSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupDiGetHwProfileFriendlyNameW( _In_ DWORD HwProfile, _Out_writes_(FriendlyNameSize) PWSTR FriendlyName, _In_ DWORD FriendlyNameSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupDiGetHwProfileFriendlyNameExA( _In_ DWORD HwProfile, _Out_writes_(FriendlyNameSize) PSTR FriendlyName, _In_ DWORD FriendlyNameSize, _Out_opt_ PDWORD RequiredSize, _In_opt_ PCSTR MachineName, _Reserved_ PVOID Reserved);
WINSETUPAPIBOOLWINAPISetupDiGetHwProfileFriendlyNameExW( _In_ DWORD HwProfile, _Out_writes_(FriendlyNameSize) PWSTR FriendlyName, _In_ DWORD FriendlyNameSize, _Out_opt_ PDWORD RequiredSize, _In_opt_ PCWSTR MachineName, _Reserved_ PVOID Reserved);
WINSETUPAPI BOOL WINAPI SetupDiGetHwProfileFriendlyNameW(DWORD,PWSTR,DWORD,PDWORD);
_Success_(return != FALSE)WINSETUPAPIBOOLWINAPISetupDiGetHwProfileList( _Out_writes_to_(HwProfileListSize, *RequiredSize) PDWORD HwProfileList, _In_ DWORD HwProfileListSize, _Out_ PDWORD RequiredSize, _Out_opt_ PDWORD CurrentlyActiveIndex);
_Success_(return != FALSE)WINSETUPAPIBOOLWINAPISetupDiGetHwProfileListExA( _Out_writes_to_(HwProfileListSize, *RequiredSize) PDWORD HwProfileList, _In_ DWORD HwProfileListSize, _Out_ PDWORD RequiredSize, _Out_opt_ PDWORD CurrentlyActiveIndex, _In_opt_ PCSTR MachineName, _Reserved_ PVOID Reserved);
_Success_(return != FALSE)WINSETUPAPIBOOLWINAPISetupDiGetHwProfileListExW( _Out_writes_to_(HwProfileListSize, *RequiredSize) PDWORD HwProfileList, _In_ DWORD HwProfileListSize, _Out_ PDWORD RequiredSize, _Out_opt_ PDWORD CurrentlyActiveIndex, _In_opt_ PCWSTR MachineName, _Reserved_ PVOID Reserved);
WINSETUPAPIBOOLWINAPISetupDiGetINFClassA( _In_ PCSTR InfName, _Out_ LPGUID ClassGuid, _Out_writes_(ClassNameSize) PSTR ClassName, _In_ DWORD ClassNameSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupDiGetINFClassW( _In_ PCWSTR InfName, _Out_ LPGUID ClassGuid, _Out_writes_(ClassNameSize) PWSTR ClassName, _In_ DWORD ClassNameSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPI BOOL WINAPI SetupDiGetSelectedDevice(_In_ HDEVINFO, _Out_ PSP_DEVINFO_DATA);WINSETUPAPI BOOL WINAPI SetupDiGetSelectedDriverA(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _Out_ PSP_DRVINFO_DATA_A);WINSETUPAPI BOOL WINAPI SetupDiGetSelectedDriverW(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _Out_ PSP_DRVINFO_DATA_W);WINSETUPAPI HPROPSHEETPAGE WINAPI SetupDiGetWizardPage(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ PSP_INSTALLWIZARD_DATA, _In_ DWORD, _In_ DWORD);WINSETUPAPI BOOL WINAPI SetupDiInstallClassA(_In_opt_ HWND, _In_ PCSTR, _In_ DWORD, _In_opt_ HSPFILEQ);WINSETUPAPI BOOL WINAPI SetupDiInstallClassW(_In_opt_ HWND, _In_ PCWSTR, _In_ DWORD, _In_opt_ HSPFILEQ);WINSETUPAPI BOOL WINAPI SetupDiInstallClassExA(_In_opt_ HWND, _In_opt_ PCSTR, _In_ DWORD, _In_opt_ HSPFILEQ, _In_opt_ CONST GUID*, _Reserved_ PVOID, _Reserved_ PVOID);WINSETUPAPI BOOL WINAPI SetupDiInstallClassExW(_In_opt_ HWND, _In_opt_ PCWSTR, _In_ DWORD, _In_opt_ HSPFILEQ, _In_opt_ CONST GUID*, _Reserved_ PVOID, _Reserved_ PVOID);WINSETUPAPI BOOL WINAPI SetupDiInstallDevice(_In_ HDEVINFO, _Inout_ PSP_DEVINFO_DATA);WINSETUPAPI BOOL WINAPI SetupDiInstallDeviceInterfaces(_In_ HDEVINFO, _In_ PSP_DEVINFO_DATA);WINSETUPAPI BOOL WINAPI SetupDiInstallDriverFiles(_In_ HDEVINFO, _In_ PSP_DEVINFO_DATA);WINSETUPAPI BOOL WINAPI SetupDiLoadClassIcon(_In_ CONST GUID*, _Out_opt_ HICON*, _Out_opt_ PINT);WINSETUPAPI BOOL WINAPI SetupDiMoveDuplicateDevice(HDEVINFO,PSP_DEVINFO_DATA);_Check_return_ WINSETUPAPI HKEY WINAPI SetupDiOpenClassRegKey(_In_opt_ CONST GUID*, _In_ REGSAM);_Check_return_ WINSETUPAPI HKEY WINAPI SetupDiOpenClassRegKeyExA(_In_opt_ CONST GUID*, _In_ REGSAM, _In_ DWORD, _In_opt_ PCSTR, _Reserved_ PVOID);_Check_return_ WINSETUPAPI HKEY WINAPI SetupDiOpenClassRegKeyExW(_In_opt_ CONST GUID*, _In_ REGSAM, _In_ DWORD, _In_opt_ PCWSTR, _Reserved_ PVOID);WINSETUPAPI BOOL WINAPI SetupDiOpenDeviceInfoA(_In_ HDEVINFO, _In_ PCSTR, _In_opt_ HWND, _In_ DWORD, _Out_opt_ PSP_DEVINFO_DATA);WINSETUPAPI BOOL WINAPI SetupDiOpenDeviceInfoW(_In_ HDEVINFO, _In_ PCWSTR, _In_opt_ HWND, _In_ DWORD, _Out_opt_ PSP_DEVINFO_DATA);WINSETUPAPI BOOL WINAPI SetupDiOpenDeviceInterfaceA(_In_ HDEVINFO, _In_ PCSTR, _In_ DWORD, _Out_opt_ PSP_DEVICE_INTERFACE_DATA);WINSETUPAPI BOOL WINAPI SetupDiOpenDeviceInterfaceW(_In_ HDEVINFO, _In_ PCWSTR, _In_ DWORD, _Out_opt_ PSP_DEVICE_INTERFACE_DATA);_Check_return_ WINSETUPAPI HKEY WINAPI SetupDiOpenDeviceInterfaceRegKey(_In_ HDEVINFO, _In_ PSP_DEVICE_INTERFACE_DATA, _Reserved_ DWORD, _In_ REGSAM);_Check_return_ WINSETUPAPI HKEY WINAPI SetupDiOpenDevRegKey(_In_ HDEVINFO, _In_ PSP_DEVINFO_DATA, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ REGSAM);WINSETUPAPI BOOL WINAPI SetupDiRegisterCoDeviceInstallers(_In_ HDEVINFO, _In_ PSP_DEVINFO_DATA);WINSETUPAPI BOOL WINAPI SetupDiRegisterDeviceInfo(_In_ HDEVINFO, _Inout_ PSP_DEVINFO_DATA, _In_ DWORD, _In_opt_ PSP_DETSIG_CMPPROC, _In_opt_ PVOID, _Out_opt_ PSP_DEVINFO_DATA);WINSETUPAPI BOOL WINAPI SetupDiRemoveDevice(_In_ HDEVINFO, _Inout_ PSP_DEVINFO_DATA);WINSETUPAPI BOOL WINAPI SetupDiRemoveDeviceInterface(_In_ HDEVINFO, _Inout_ PSP_DEVICE_INTERFACE_DATA);WINSETUPAPI BOOL WINAPI SetupDiRestartDevices(_In_ HDEVINFO, _Inout_ PSP_DEVINFO_DATA);WINSETUPAPI BOOL WINAPI SetupDiSelectBestCompatDrv(_In_ HDEVINFO, _Inout_opt_ PSP_DEVINFO_DATA);WINSETUPAPI BOOL WINAPI SetupDiSelectDevice(_In_ HDEVINFO, _Inout_opt_ PSP_DEVINFO_DATA);WINSETUPAPI BOOL WINAPI SetupDiSelectOEMDrv(_In_opt_ HWND, _In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA);
WINSETUPAPIBOOLWINAPISetupDiSetClassInstallParamsA( _In_ HDEVINFO DeviceInfoSet, _In_opt_ PSP_DEVINFO_DATA DeviceInfoData, _In_reads_bytes_opt_(ClassInstallParamsSize) PSP_CLASSINSTALL_HEADER ClassInstallParams, _In_ DWORD ClassInstallParamsSize);
WINSETUPAPIBOOLWINAPISetupDiSetClassInstallParamsW( _In_ HDEVINFO DeviceInfoSet, _In_opt_ PSP_DEVINFO_DATA DeviceInfoData, _In_reads_bytes_opt_(ClassInstallParamsSize) PSP_CLASSINSTALL_HEADER ClassInstallParams, _In_ DWORD ClassInstallParamsSize);
WINSETUPAPIBOOLWINAPISetupDiSetClassRegistryPropertyA( _In_ CONST GUID *ClassGuid, _In_ DWORD Property, _In_reads_bytes_opt_(PropertyBufferSize) CONST BYTE *PropertyBuffer, _In_ DWORD PropertyBufferSize, _In_opt_ PCSTR MachineName, _Reserved_ PVOID Reserved);
WINSETUPAPIBOOLWINAPISetupDiSetClassRegistryPropertyW( _In_ CONST GUID *ClassGuid, _In_ DWORD Property, _In_reads_bytes_opt_(PropertyBufferSize) CONST BYTE *PropertyBuffer, _In_ DWORD PropertyBufferSize, _In_opt_ PCWSTR MachineName, _Reserved_ PVOID Reserved);
WINSETUPAPI BOOL WINAPI SetupDiSetDeviceInstallParamsA(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ PSP_DEVINSTALL_PARAMS_A);WINSETUPAPI BOOL WINAPI SetupDiSetDeviceInstallParamsW(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ PSP_DEVINSTALL_PARAMS_W);
WINSETUPAPIBOOLWINAPISetupDiSetDeviceRegistryPropertyA( _In_ HDEVINFO DeviceInfoSet, _Inout_ PSP_DEVINFO_DATA DeviceInfoData, _In_ DWORD Property, _In_reads_bytes_opt_(PropertyBufferSize) CONST BYTE *PropertyBuffer, _In_ DWORD PropertyBufferSize);
WINSETUPAPIBOOLWINAPISetupDiSetDeviceRegistryPropertyW( _In_ HDEVINFO DeviceInfoSet, _Inout_ PSP_DEVINFO_DATA DeviceInfoData, _In_ DWORD Property, _In_reads_bytes_opt_(PropertyBufferSize) CONST BYTE *PropertyBuffer, _In_ DWORD PropertyBufferSize);
WINSETUPAPI BOOL WINAPI SetupDiSetDriverInstallParamsA(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ PSP_DRVINFO_DATA_A, _In_ PSP_DRVINSTALL_PARAMS);WINSETUPAPI BOOL WINAPI SetupDiSetDriverInstallParamsW(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ PSP_DRVINFO_DATA_W, _In_ PSP_DRVINSTALL_PARAMS);WINSETUPAPI BOOL WINAPI SetupDiSetSelectedDevice(_In_ HDEVINFO, _In_ PSP_DEVINFO_DATA);WINSETUPAPI BOOL WINAPI SetupDiSetSelectedDriverA(_In_ HDEVINFO, _Inout_opt_ PSP_DEVINFO_DATA, _Inout_opt_ PSP_DRVINFO_DATA_A);WINSETUPAPI BOOL WINAPI SetupDiSetSelectedDriverW(_In_ HDEVINFO, _Inout_opt_ PSP_DEVINFO_DATA, _Inout_opt_ PSP_DRVINFO_DATA_W);WINSETUPAPI BOOL WINAPI SetupDiUnremoveDevice(_In_ HDEVINFO, _Inout_ PSP_DEVINFO_DATA);WINSETUPAPI HDSKSPC WINAPI SetupDuplicateDiskSpaceListA(_In_ HDSKSPC, _Reserved_ PVOID, _Reserved_ DWORD, _In_ UINT);WINSETUPAPI HDSKSPC WINAPI SetupDuplicateDiskSpaceListW(_In_ HDSKSPC, _Reserved_ PVOID, _Reserved_ DWORD, _In_ UINT);WINSETUPAPI BOOL WINAPI SetupFindFirstLineA(_In_ HINF, _In_ PCSTR, _In_opt_ PCSTR, _Out_ PINFCONTEXT);WINSETUPAPI BOOL WINAPI SetupFindFirstLineW(_In_ HINF, _In_ PCWSTR, _In_opt_ PCWSTR, _Out_ PINFCONTEXT);WINSETUPAPI BOOL WINAPI SetupFindNextLine(_In_ PINFCONTEXT, _Out_ PINFCONTEXT);WINSETUPAPI BOOL WINAPI SetupFindNextMatchLineA(_In_ PINFCONTEXT, _In_opt_ PCSTR, _Out_ PINFCONTEXT);WINSETUPAPI BOOL WINAPI SetupFindNextMatchLineW(_In_ PINFCONTEXT, _In_opt_ PCWSTR, _Out_ PINFCONTEXT);WINSETUPAPI BOOL WINAPI SetupFreeA(PCSTR**,UINT);WINSETUPAPI BOOL WINAPI SetupFreeW(PCWSTR**,UINT);WINSETUPAPI BOOL WINAPI SetupGetBackupInformationA(_In_ HSPFILEQ, _Inout_ PSP_BACKUP_QUEUE_PARAMS_A);WINSETUPAPI BOOL WINAPI SetupGetBackupInformationW(_In_ HSPFILEQ, _Inout_ PSP_BACKUP_QUEUE_PARAMS_W);
_Success_(return != FALSE)WINSETUPAPIBOOLWINAPISetupGetBinaryField( _In_ PINFCONTEXT Context, _In_ DWORD FieldIndex, _Out_writes_bytes_to_opt_(ReturnBufferSize, *RequiredSize) PBYTE ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ LPDWORD RequiredSize);
WINSETUPAPI DWORD WINAPI SetupGetFieldCount(_In_ PINFCONTEXT);WINSETUPAPI DWORD WINAPI SetupGetFileCompressionInfoA(_In_ PCSTR, _Out_ PSTR*, _Out_ PDWORD, _Out_ PDWORD, _Out_ PUINT);WINSETUPAPI DWORD WINAPI SetupGetFileCompressionInfoW(_In_ PCWSTR, _Out_ PWSTR*, _Out_ PDWORD, _Out_ PDWORD, _Out_ PUINT);
WINSETUPAPIBOOLWINAPISetupGetFileCompressionInfoExA( _In_ PCSTR SourceFileName, _In_reads_opt_(ActualSourceFileNameBufferLen) PSTR ActualSourceFileNameBuffer, _In_ DWORD ActualSourceFileNameBufferLen, _Out_opt_ PDWORD RequiredBufferLen, _Out_ PDWORD SourceFileSize, _Out_ PDWORD TargetFileSize, _Out_ PUINT CompressionType);
WINSETUPAPIBOOLWINAPISetupGetFileCompressionInfoExW( _In_ PCWSTR SourceFileName, _In_reads_opt_(ActualSourceFileNameBufferLen) PWSTR ActualSourceFileNameBuffer, _In_ DWORD ActualSourceFileNameBufferLen, _Out_opt_ PDWORD RequiredBufferLen, _Out_ PDWORD SourceFileSize, _Out_ PDWORD TargetFileSize, _Out_ PUINT CompressionType);
WINSETUPAPIBOOLWINAPISetupGetInfFileListA( _In_opt_ PCSTR DirectoryPath, _In_ DWORD InfStyle, _Out_writes_opt_(ReturnBufferSize) PSTR ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupGetInfFileListW( _In_opt_ PCWSTR DirectoryPath, _In_ DWORD InfStyle, _Out_writes_(ReturnBufferSize) PWSTR ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ PDWORD RequiredSize);
_Success_(return != FALSE)WINSETUPAPIBOOLWINAPISetupGetInfInformationA( _In_ LPCVOID InfSpec, _In_ DWORD SearchControl, _Out_writes_bytes_to_opt_(ReturnBufferSize, *RequiredSize) PSP_INF_INFORMATION ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ PDWORD RequiredSize);
_Success_(return != FALSE)WINSETUPAPIBOOLWINAPISetupGetInfInformationW( _In_ LPCVOID InfSpec, _In_ DWORD SearchControl, _Out_writes_bytes_to_opt_(ReturnBufferSize, *RequiredSize) PSP_INF_INFORMATION ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPI BOOL WINAPI SetupGetIntField(_In_ PINFCONTEXT, _In_ DWORD, _Out_ PINT);WINSETUPAPI BOOL WINAPI SetupGetLineByIndexA(_In_ HINF, _In_ PCSTR, _In_ DWORD, _Out_ PINFCONTEXT);WINSETUPAPI BOOL WINAPI SetupGetLineByIndexW(_In_ HINF, _In_ PCWSTR, _In_ DWORD, _Out_ PINFCONTEXT);WINSETUPAPI LONG WINAPI SetupGetLineCountA(_In_ HINF, _In_ PCSTR);WINSETUPAPI LONG WINAPI SetupGetLineCountW(_In_ HINF, _In_ PCWSTR);
WINSETUPAPIBOOLWINAPISetupGetLineTextA( _In_opt_ PINFCONTEXT Context, _In_opt_ HINF InfHandle, _In_opt_ PCSTR Section, _In_opt_ PCSTR Key, _Out_writes_opt_(ReturnBufferSize) PSTR ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupGetLineTextW( _In_opt_ PINFCONTEXT Context, _In_opt_ HINF InfHandle, _In_opt_ PCWSTR Section, _In_opt_ PCWSTR Key, _Out_writes_opt_(ReturnBufferSize) PWSTR ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupGetMultiSzFieldA( _In_ PINFCONTEXT Context, _In_ DWORD FieldIndex, _Out_writes_opt_(ReturnBufferSize) PSTR ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ LPDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupGetMultiSzFieldW( _In_ PINFCONTEXT Context, _In_ DWORD FieldIndex, _Out_writes_opt_(ReturnBufferSize) PWSTR ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ LPDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupGetSourceFileLocationA( _In_ HINF InfHandle, _In_opt_ PINFCONTEXT InfContext, _In_opt_ PCSTR FileName, _Out_ PUINT SourceId, _Out_writes_opt_(ReturnBufferSize) PSTR ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupGetSourceFileLocationW( _In_ HINF InfHandle, _In_opt_ PINFCONTEXT InfContext, _In_opt_ PCWSTR FileName, _Out_ PUINT SourceId, _Out_writes_opt_(ReturnBufferSize) PWSTR ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPI BOOL WINAPI SetupGetSourceFileSizeA(_In_ HINF, _In_opt_ PINFCONTEXT, _In_opt_ PCSTR, _In_opt_ PCSTR, _Out_ PDWORD, _In_ UINT);WINSETUPAPI BOOL WINAPI SetupGetSourceFileSizeW(_In_ HINF, _In_opt_ PINFCONTEXT, _In_opt_ PCWSTR, _In_opt_ PCWSTR, _Out_ PDWORD, _In_ UINT);
WINSETUPAPIBOOLWINAPISetupGetSourceInfoA( _In_ HINF InfHandle, _In_ UINT SourceId, _In_ UINT InfoDesired, _Out_writes_opt_(ReturnBufferSize) PSTR ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupGetSourceInfoW( _In_ HINF InfHandle, _In_ UINT SourceId, _In_ UINT InfoDesired, _Out_writes_opt_(ReturnBufferSize) PWSTR ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupGetStringFieldA( _In_ PINFCONTEXT Context, _In_ DWORD FieldIndex, _Out_writes_opt_(ReturnBufferSize) PSTR ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupGetStringFieldW( _In_ PINFCONTEXT Context, _In_ DWORD FieldIndex, _Out_writes_opt_(ReturnBufferSize) PWSTR ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupGetTargetPathA( _In_ HINF InfHandle, _In_opt_ PINFCONTEXT InfContext, _In_opt_ PCSTR Section, _Out_writes_opt_(ReturnBufferSize) PSTR ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupGetTargetPathW( _In_ HINF InfHandle, _In_opt_ PINFCONTEXT InfContext, _In_opt_ PCWSTR Section, _Out_writes_opt_(ReturnBufferSize) PWSTR ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPI PVOID WINAPI SetupInitDefaultQueueCallback(_In_opt_ HWND);WINSETUPAPI PVOID WINAPI SetupInitDefaultQueueCallbackEx(_In_opt_ HWND, _In_opt_ HWND, _In_ UINT, _Reserved_ DWORD, _Reserved_ PVOID);WINSETUPAPI HSPFILELOG WINAPI SetupInitializeFileLogA(_In_opt_ PCSTR, _In_ DWORD);WINSETUPAPI HSPFILELOG WINAPI SetupInitializeFileLogW(_In_opt_ PCWSTR, _In_ DWORD);WINSETUPAPI BOOL WINAPI SetupInstallFileA(_In_opt_ HINF, _In_opt_ PINFCONTEXT, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_ DWORD, _In_opt_ PSP_FILE_CALLBACK_A, _In_opt_ PVOID);WINSETUPAPI BOOL WINAPI SetupInstallFileW(_In_opt_ HINF, _In_opt_ PINFCONTEXT, _In_opt_ PCWSTR, _In_opt_ PCWSTR, _In_opt_ PCWSTR, _In_ DWORD, _In_opt_ PSP_FILE_CALLBACK_W, _In_opt_ PVOID);WINSETUPAPI BOOL WINAPI SetupInstallFileExA(_In_opt_ HINF, _In_opt_ PINFCONTEXT, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_ DWORD, _In_opt_ PSP_FILE_CALLBACK_A, _In_opt_ PVOID, _Out_ PBOOL);WINSETUPAPI BOOL WINAPI SetupInstallFileExW(_In_opt_ HINF, _In_opt_ PINFCONTEXT, _In_opt_ PCWSTR, _In_opt_ PCWSTR, _In_opt_ PCWSTR, _In_ DWORD, _In_opt_ PSP_FILE_CALLBACK_W, _In_opt_ PVOID, _Out_ PBOOL);WINSETUPAPI BOOL WINAPI SetupInstallFilesFromInfSectionA(_In_ HINF, _In_opt_ HINF, _In_ HSPFILEQ, _In_ PCSTR, _In_opt_ PCSTR, _In_ UINT);WINSETUPAPI BOOL WINAPI SetupInstallFilesFromInfSectionW(_In_ HINF, _In_opt_ HINF, _In_ HSPFILEQ, _In_ PCWSTR, _In_opt_ PCWSTR, _In_ UINT);WINSETUPAPI BOOL WINAPI SetupInstallFromInfSectionA(_In_opt_ HWND, _In_ HINF, _In_ PCSTR, _In_ UINT, _In_opt_ HKEY, _In_opt_ PCSTR, _In_ UINT, _In_opt_ PSP_FILE_CALLBACK_A, _In_opt_ PVOID, _In_opt_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA);WINSETUPAPI BOOL WINAPI SetupInstallFromInfSectionW(_In_opt_ HWND, _In_ HINF, _In_ PCWSTR, _In_ UINT, _In_opt_ HKEY, _In_opt_ PCWSTR, _In_ UINT, _In_opt_ PSP_FILE_CALLBACK_W, _In_opt_ PVOID, _In_opt_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA);WINSETUPAPI BOOL WINAPI SetupInstallServicesFromInfSectionA(_In_ HINF, _In_ PCSTR, _In_ DWORD);WINSETUPAPI BOOL WINAPI SetupInstallServicesFromInfSectionW(_In_ HINF, _In_ PCWSTR, _In_ DWORD);WINSETUPAPI BOOL WINAPI SetupInstallServicesFromInfSectionExA(_In_ HINF, _In_ PCSTR, _In_ DWORD, _In_opt_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _Reserved_ PVOID, _Reserved_ PVOID);WINSETUPAPI BOOL WINAPI SetupInstallServicesFromInfSectionExW(_In_ HINF, _In_ PCWSTR, _In_ DWORD, _In_opt_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _Reserved_ PVOID, _Reserved_ PVOID);WINSETUPAPI BOOL WINAPI SetupIterateCabinetA(_In_ PCSTR, _Reserved_ DWORD, _In_ PSP_FILE_CALLBACK_A, _In_ PVOID);WINSETUPAPI BOOL WINAPI SetupIterateCabinetW(_In_ PCWSTR, _Reserved_ DWORD, _In_ PSP_FILE_CALLBACK_W, _In_ PVOID);WINSETUPAPI BOOL WINAPI SetupLogErrorA(_In_ LPCSTR, _In_ LogSeverity);WINSETUPAPI BOOL WINAPI SetupLogErrorW(_In_ LPCWSTR, _In_ LogSeverity);WINSETUPAPI BOOL WINAPI SetupLogFileA(_In_ HSPFILELOG, _In_opt_ PCSTR, _In_ PCSTR, _In_ PCSTR, _In_ DWORD, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_ DWORD);WINSETUPAPI BOOL WINAPI SetupLogFileW(_In_ HSPFILELOG, _In_opt_ PCWSTR, _In_ PCWSTR, _In_ PCWSTR, _In_ DWORD, _In_opt_ PCWSTR, _In_opt_ PCWSTR, _In_opt_ PCWSTR, _In_ DWORD);
WINSETUPAPIBOOLWINAPISetupOpenAppendInfFileA( _In_opt_ PCSTR FileName, _In_ HINF InfHandle, _Out_opt_ PUINT ErrorLine);
WINSETUPAPIBOOLWINAPISetupOpenAppendInfFileW( _In_opt_ PCWSTR FileName, _In_ HINF InfHandle, _Out_opt_ PUINT ErrorLine);
WINSETUPAPI HSPFILEQ WINAPI SetupOpenFileQueue(VOID);
WINSETUPAPIHINFWINAPISetupOpenInfFileA( _In_ PCSTR FileName, _In_opt_ PCSTR InfClass, _In_ DWORD InfStyle, _Out_opt_ PUINT ErrorLine);
WINSETUPAPIHINFWINAPISetupOpenInfFileW( _In_ PCWSTR FileName, _In_opt_ PCWSTR InfClass, _In_ DWORD InfStyle, _Out_opt_ PUINT ErrorLine);
WINSETUPAPI BOOL WINAPI SetupOpenLog(_In_ BOOL);WINSETUPAPI HINF WINAPI SetupOpenMasterInf(VOID);
WINSETUPAPIUINTWINAPISetupPromptForDiskA( _In_ HWND hwndParent, _In_opt_ PCSTR DialogTitle, _In_opt_ PCSTR DiskName, _In_opt_ PCSTR PathToSource, _In_ PCSTR FileSought, _In_opt_ PCSTR TagFile, _In_ DWORD DiskPromptStyle, _Out_writes_opt_(PathBufferSize) PSTR PathBuffer, _In_ DWORD PathBufferSize, _Out_opt_ PDWORD PathRequiredSize);
WINSETUPAPIUINTWINAPISetupPromptForDiskW( _In_ HWND hwndParent, _In_opt_ PCWSTR DialogTitle, _In_opt_ PCWSTR DiskName, _In_opt_ PCWSTR PathToSource, _In_ PCWSTR FileSought, _In_opt_ PCWSTR TagFile, _In_ DWORD DiskPromptStyle, _Out_writes_opt_(PathBufferSize) PWSTR PathBuffer, _In_ DWORD PathBufferSize, _Out_opt_ PDWORD PathRequiredSize);
WINSETUPAPI INT WINAPI SetupPromptReboot(_In_opt_ HSPFILEQ, _In_opt_ HWND, _In_ BOOL);WINSETUPAPI BOOL WINAPI SetupQueryA(DWORD,PCSTR**,PUINT);WINSETUPAPI BOOL WINAPI SetupQueryW(DWORD,PCWSTR**,PUINT);
WINSETUPAPIBOOLWINAPISetupQueryDrivesInDiskSpaceListA( _In_ HDSKSPC DiskSpace, _Out_writes_opt_(ReturnBufferSize) PSTR ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupQueryDrivesInDiskSpaceListW( _In_ HDSKSPC DiskSpace, _Out_writes_opt_(ReturnBufferSize) PWSTR ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupQueryFileLogA( _In_ HSPFILELOG FileLogHandle, _In_opt_ PCSTR LogSectionName, _In_ PCSTR TargetFilename, _In_ SetupFileLogInfo DesiredInfo, _Out_writes_opt_(ReturnBufferSize) PSTR DataOut, _In_ DWORD ReturnBufferSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupQueryFileLogW( _In_ HSPFILELOG FileLogHandle, _In_opt_ PCWSTR LogSectionName, _In_ PCWSTR TargetFilename, _In_ SetupFileLogInfo DesiredInfo, _Out_writes_opt_(ReturnBufferSize) PWSTR DataOut, _In_ DWORD ReturnBufferSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupQueryInfFileInformationA( _In_ PSP_INF_INFORMATION InfInformation, _In_ UINT InfIndex, _Out_writes_opt_(ReturnBufferSize) PSTR ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupQueryInfFileInformationW( _In_ PSP_INF_INFORMATION InfInformation, _In_ UINT InfIndex, _Out_writes_opt_(ReturnBufferSize) PWSTR ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupQueryInfOriginalFileInformationA( _In_ PSP_INF_INFORMATION InfInformation, _In_ UINT InfIndex, _In_opt_ PSP_ALTPLATFORM_INFO AlternatePlatformInfo, _Out_ PSP_ORIGINAL_FILE_INFO_A OriginalFileInfo);
WINSETUPAPIBOOLWINAPISetupQueryInfOriginalFileInformationW( _In_ PSP_INF_INFORMATION InfInformation, _In_ UINT InfIndex, _In_opt_ PSP_ALTPLATFORM_INFO AlternatePlatformInfo, _Out_ PSP_ORIGINAL_FILE_INFO_W OriginalFileInfo);
WINSETUPAPIBOOLWINAPISetupQueryInfVersionInformationA( _In_ PSP_INF_INFORMATION InfInformation, _In_ UINT InfIndex, _In_opt_ PCSTR Key, _Out_writes_opt_(ReturnBufferSize) PSTR ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPIBOOLWINAPISetupQueryInfVersionInformationW( _In_ PSP_INF_INFORMATION InfInformation, _In_ UINT InfIndex, _In_opt_ PCWSTR Key, _Out_writes_opt_(ReturnBufferSize) PWSTR ReturnBuffer, _In_ DWORD ReturnBufferSize, _Out_opt_ PDWORD RequiredSize);
WINSETUPAPI BOOL WINAPI SetupQuerySpaceRequiredOnDriveA(_In_ HDSKSPC, _In_ PCSTR, _Out_ LONGLONG*, _Reserved_ PVOID, _Reserved_ UINT);WINSETUPAPI BOOL WINAPI SetupQuerySpaceRequiredOnDriveW(_In_ HDSKSPC, _In_ PCWSTR, _Out_ LONGLONG*, _Reserved_ PVOID, _Reserved_ UINT);WINSETUPAPI BOOL WINAPI SetupQueueCopyA(_In_ HSPFILEQ, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_ PCSTR, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_ PCSTR, _In_opt_ PCSTR, _In_ DWORD);WINSETUPAPI BOOL WINAPI SetupQueueCopyW(_In_ HSPFILEQ, _In_opt_ PCWSTR, _In_opt_ PCWSTR, _In_ PCWSTR, _In_opt_ PCWSTR, _In_opt_ PCWSTR, _In_ PCWSTR, _In_opt_ PCWSTR, _In_ DWORD);WINSETUPAPI BOOL WINAPI SetupQueueCopyIndirectA(_In_ PSP_FILE_COPY_PARAMS_A);WINSETUPAPI BOOL WINAPI SetupQueueCopyIndirectW(_In_ PSP_FILE_COPY_PARAMS_W);WINSETUPAPI BOOL WINAPI SetupQueueCopySectionA(_In_ HSPFILEQ, _In_opt_ PCSTR, _In_ HINF, _In_opt_ HINF, _In_ PCSTR, _In_ DWORD);WINSETUPAPI BOOL WINAPI SetupQueueCopySectionW(_In_ HSPFILEQ, _In_opt_ PCWSTR, _In_ HINF, _In_opt_ HINF, _In_ PCWSTR, _In_ DWORD);WINSETUPAPI BOOL WINAPI SetupQueueDefaultCopyA(_In_ HSPFILEQ, _In_ HINF, _In_opt_ PCSTR, _In_ PCSTR, _In_opt_ PCSTR, _In_ DWORD);WINSETUPAPI BOOL WINAPI SetupQueueDefaultCopyW(_In_ HSPFILEQ, _In_ HINF, _In_opt_ PCWSTR, _In_ PCWSTR, _In_opt_ PCWSTR, _In_ DWORD);WINSETUPAPI BOOL WINAPI SetupQueueDeleteA(_In_ HSPFILEQ, _In_ PCSTR, _In_opt_ PCSTR);WINSETUPAPI BOOL WINAPI SetupQueueDeleteW(_In_ HSPFILEQ, _In_ PCWSTR, _In_opt_ PCWSTR);WINSETUPAPI BOOL WINAPI SetupQueueDeleteSectionA(_In_ HSPFILEQ, _In_ HINF, _In_opt_ HINF, _In_ PCSTR);WINSETUPAPI BOOL WINAPI SetupQueueDeleteSectionW(_In_ HSPFILEQ, _In_ HINF, _In_opt_ HINF, _In_ PCWSTR);WINSETUPAPI BOOL WINAPI SetupQueueRenameA(_In_ HSPFILEQ, _In_ PCSTR, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_ PCSTR);WINSETUPAPI BOOL WINAPI SetupQueueRenameW(_In_ HSPFILEQ, _In_ PCWSTR, _In_opt_ PCWSTR, _In_opt_ PCWSTR, _In_ PCWSTR);WINSETUPAPI BOOL WINAPI SetupQueueRenameSectionA(_In_ HSPFILEQ, _In_ HINF, _In_opt_ HINF, _In_ PCSTR);WINSETUPAPI BOOL WINAPI SetupQueueRenameSectionW(_In_ HSPFILEQ, _In_ HINF, _In_opt_ HINF, _In_ PCWSTR);WINSETUPAPI BOOL WINAPI SetupRemoveFileLogEntryA(_In_ HSPFILELOG, _In_opt_ PCSTR, _In_opt_ PCSTR);WINSETUPAPI BOOL WINAPI SetupRemoveFileLogEntryW(_In_ HSPFILELOG, _In_opt_ PCWSTR, _In_opt_ PCWSTR);WINSETUPAPI BOOL WINAPI SetupRemoveFromDiskSpaceListA(_In_ HDSKSPC, _In_ PCSTR, _In_ UINT, _Reserved_ PVOID, _Reserved_ UINT);WINSETUPAPI BOOL WINAPI SetupRemoveFromDiskSpaceListW(_In_ HDSKSPC, _In_ PCWSTR, _In_ UINT, _Reserved_ PVOID, _Reserved_ UINT);WINSETUPAPI BOOL WINAPI SetupRemoveFromSourceListA(_In_ DWORD, _In_ PCSTR);WINSETUPAPI BOOL WINAPI SetupRemoveFromSourceListW(_In_ DWORD, _In_ PCWSTR);WINSETUPAPI BOOL WINAPI SetupRemoveInstallSectionFromDiskSpaceListA(_In_ HDSKSPC, _In_ HINF, _In_opt_ HINF, _In_ PCSTR, _Reserved_ PVOID, _Reserved_ UINT);WINSETUPAPI BOOL WINAPI SetupRemoveInstallSectionFromDiskSpaceListW(_In_ HDSKSPC, _In_ HINF, _In_opt_ HINF, _In_ PCWSTR, _Reserved_ PVOID, _Reserved_ UINT);WINSETUPAPI BOOL WINAPI SetupRemoveSectionFromDiskSpaceListA(_In_ HDSKSPC, _In_ HINF, _In_opt_ HINF, _In_ PCSTR, _In_ UINT, _Reserved_ PVOID, _Reserved_ UINT);WINSETUPAPI BOOL WINAPI SetupRemoveSectionFromDiskSpaceListW(_In_ HDSKSPC, _In_ HINF, _In_opt_ HINF, _In_ PCWSTR, _In_ UINT, _Reserved_ PVOID, _Reserved_ UINT);WINSETUPAPI UINT WINAPI SetupRenameErrorA(_In_ HWND, _In_opt_ PCSTR, _In_ PCSTR, _In_ PCSTR, _In_ UINT, _In_ DWORD);WINSETUPAPI UINT WINAPI SetupRenameErrorW(_In_ HWND, _In_opt_ PCWSTR, _In_ PCWSTR, _In_ PCWSTR, _In_ UINT, _In_ DWORD);WINSETUPAPI BOOL WINAPI SetupScanFileQueueA(_In_ HSPFILEQ, _In_ DWORD, _In_opt_ HWND, _In_opt_ PSP_FILE_CALLBACK_A, _In_opt_ PVOID, _Out_ PDWORD);WINSETUPAPI BOOL WINAPI SetupScanFileQueueW(_In_ HSPFILEQ, _In_ DWORD, _In_opt_ HWND, _In_opt_ PSP_FILE_CALLBACK_W, _In_opt_ PVOID, _Out_ PDWORD);WINSETUPAPI BOOL WINAPI SetupSetDirectoryIdA(_In_ HINF, _In_ DWORD, _In_opt_ PCSTR);WINSETUPAPI BOOL WINAPI SetupSetDirectoryIdW(_In_ HINF, _In_ DWORD, _In_opt_ PCWSTR);WINSETUPAPI BOOL WINAPI SetupSetDirectoryIdExA(_In_ HINF, _In_ DWORD, _In_opt_ PCSTR, _In_ DWORD, _Reserved_ DWORD, _Reserved_ PVOID);WINSETUPAPI BOOL WINAPI SetupSetDirectoryIdExW(_In_ HINF, _In_ DWORD, _In_opt_ PCWSTR, _In_ DWORD, _Reserved_ DWORD, _Reserved_ PVOID);WINSETUPAPI BOOL WINAPI SetupSetFileQueueAlternatePlatformA(_In_ HSPFILEQ, _In_opt_ PSP_ALTPLATFORM_INFO, _In_opt_ PCSTR);WINSETUPAPI BOOL WINAPI SetupSetFileQueueAlternatePlatformW(_In_ HSPFILEQ, _In_opt_ PSP_ALTPLATFORM_INFO, _In_opt_ PCWSTR);WINSETUPAPI BOOL WINAPI SetupSetNonInteractiveMode(_In_ BOOL);WINSETUPAPI BOOL WINAPI SetupSetPlatformPathOverrideA(_In_opt_ PCSTR);WINSETUPAPI BOOL WINAPI SetupSetPlatformPathOverrideW(_In_opt_ PCWSTR);
WINSETUPAPIBOOLWINAPISetupSetSourceListA( _In_ DWORD Flags, _In_reads_(SourceCount) PCSTR *SourceList, _In_ UINT SourceCount);
WINSETUPAPIBOOLWINAPISetupSetSourceListW( _In_ DWORD Flags, _In_reads_(SourceCount) PCWSTR *SourceList, _In_ UINT SourceCount);
WINSETUPAPI VOID WINAPI SetupTermDefaultQueueCallback(_In_ PVOID);WINSETUPAPI BOOL WINAPI SetupTerminateFileLog(_In_ HSPFILELOG);
WINSETUPAPIBOOLWINAPISetupUninstallOEMInfA( _In_ PCSTR InfFileName, _In_ DWORD Flags, _In_ PVOID Reserved);
WINSETUPAPIBOOLWINAPISetupUninstallOEMInfW( _In_ PCWSTR InfFileName, _In_ DWORD Flags, _In_ PVOID Reserved);
WINSETUPAPI DWORD WINAPI StampFileSecurity(PCWSTR, PSECURITY_DESCRIPTOR);
WINSETUPAPI DWORD WINAPI pSetupCaptureAndConvertAnsiArg(PCSTR, PWSTR*);WINSETUPAPI VOID WINAPI pSetupCenterWindowRelativeToParent(HWND);WINSETUPAPI BOOL WINAPI pSetupConcatenatePaths(LPWSTR, LPCWSTR, DWORD, LPDWORD);WINSETUPAPI PWSTR WINAPI pSetupDuplicateString(PCWSTR);WINSETUPAPI BOOL WINAPI pSetupEnablePrivilege(PCWSTR, BOOL);WINSETUPAPI PWSTR WINAPI pSetupGetFileTitle(PCWSTR);WINSETUPAPI BOOL WINAPI pSetupGetVersionInfoFromImage(LPWSTR, PULARGE_INTEGER, LPWORD);WINSETUPAPI DWORD WINAPI pSetupGuidFromString(PCWSTR, LPGUID);WINSETUPAPI BOOL WINAPI pSetupIsGuidNull(LPGUID);WINSETUPAPI BOOL WINAPI pSetupIsUserAdmin(VOID);WINSETUPAPI PWSTR WINAPI pSetupMultiByteToUnicode(PCSTR, UINT);WINSETUPAPI DWORD WINAPI pSetupOpenAndMapForRead(PCWSTR, PDWORD, PHANDLE, PHANDLE, PVOID*);WINSETUPAPI DWORD WINAPI pSetupStringFromGuid(LPGUID, PWSTR, DWORD);
WINSETUPAPI DWORD WINAPI pSetupStringTableAddString(HSTRING_TABLE, LPWSTR, DWORD);WINSETUPAPI DWORD WINAPI pSetupStringTableAddStringEx(HSTRING_TABLE, LPWSTR, DWORD, LPVOID, DWORD);WINSETUPAPI VOID WINAPI pSetupStringTableDestroy(HSTRING_TABLE);WINSETUPAPI HSTRING_TABLE WINAPI pSetupStringTableDuplicate(HSTRING_TABLE);WINSETUPAPI BOOL WINAPI pSetupStringTableGetExtraData(HSTRING_TABLE, DWORD, LPVOID, DWORD);WINSETUPAPI HSTRING_TABLE WINAPI pSetupStringTableInitialize(VOID);WINSETUPAPI HSTRING_TABLE WINAPI pSetupStringTableInitializeEx(DWORD, DWORD);WINSETUPAPI DWORD WINAPI pSetupStringTableLookUpString(HSTRING_TABLE, LPWSTR, DWORD);WINSETUPAPI DWORD WINAPI pSetupStringTableLookUpStringEx(HSTRING_TABLE, LPWSTR, DWORD, LPVOID, DWORD);WINSETUPAPI BOOL WINAPI pSetupStringTableSetExtraData(HSTRING_TABLE, DWORD, LPVOID, DWORD);WINSETUPAPI LPWSTR WINAPI pSetupStringTableStringFromId(HSTRING_TABLE, DWORD);WINSETUPAPI BOOL WINAPI pSetupStringTableStringFromIdEx(HSTRING_TABLE, DWORD, LPWSTR, LPDWORD);
WINSETUPAPI PSTR WINAPI pSetupUnicodeToMultiByte(PCWSTR lpUnicodeStr, UINT uCodePage);WINSETUPAPI BOOL WINAPI pSetupUnmapAndCloseFile(HANDLE, HANDLE, PVOID);
WINSETUPAPI DWORD WINAPI TakeOwnershipOfFile(PCWSTR);WINSETUPAPI PSTR WINAPI UnicodeToMultiByte(PCWSTR lpUnicodeStr, UINT uCodePage);
/* for backward compatability */#define SetupDiCreateInterfaceDeviceW SetupDiCreateDeviceInterfaceW#define SetupDiCreateInterfaceDeviceRegKeyW SetupDiCreateDeviceInterfaceRegKeyW#define SetupDiOpenInterfaceDeviceW SetupDiOpenDeviceInterfaceW#define SetupDiGetInterfaceDeviceDetailW SetupDiGetDeviceInterfaceDetailW#define SetupDiCreateInterfaceDeviceA SetupDiCreateDeviceInterfaceA#define SetupDiCreateInterfaceDeviceRegKeyA SetupDiCreateDeviceInterfaceRegKeyA#define SetupDiOpenInterfaceDeviceA SetupDiOpenDeviceInterfaceA#define SetupDiGetInterfaceDeviceDetailA SetupDiGetDeviceInterfaceDetailA
#ifdef UNICODE#define PSP_FILE_CALLBACK PSP_FILE_CALLBACK_W#define InstallHinfSection InstallHinfSectionW#define SetupAddInstallSectionToDiskSpaceList SetupAddInstallSectionToDiskSpaceListW#define SetupAddSectionToDiskSpaceList SetupAddSectionToDiskSpaceListW#define SetupAddToDiskSpaceList SetupAddToDiskSpaceListW#define SetupAddToSourceList SetupAddToSourceListW#define SetupAdjustDiskSpaceList SetupAdjustDiskSpaceListW#define SetupBackupError SetupBackupErrorW#define SetupCommitFileQueue SetupCommitFileQueueW#define SetupCopyError SetupCopyErrorW#define SetupCopyOEMInf SetupCopyOEMInfW#define SetupCreateDiskSpaceList SetupCreateDiskSpaceListW#define SetupDecompressOrCopyFile SetupDecompressOrCopyFileW#define SetupDefaultQueueCallback SetupDefaultQueueCallbackW#define SetupDeleteError SetupDeleteErrorW#define SetupDiBuildClassInfoListEx SetupDiBuildClassInfoListExW#define SetupDiClassGuidsFromNameEx SetupDiClassGuidsFromNameExW#define SetupDiClassGuidsFromName SetupDiClassGuidsFromNameW#define SetupDiClassNameFromGuidEx SetupDiClassNameFromGuidExW#define SetupDiClassNameFromGuid SetupDiClassNameFromGuidW#define SetupDiCreateDeviceInfoListEx SetupDiCreateDeviceInfoListExW#define SetupDiCreateDeviceInfo SetupDiCreateDeviceInfoW#define SetupDiCreateDeviceInterfaceRegKey SetupDiCreateDeviceInterfaceRegKeyW#define SetupDiCreateInterfaceDeviceRegKey SetupDiCreateDeviceInterfaceRegKeyW#define SetupDiCreateDeviceInterface SetupDiCreateDeviceInterfaceW#define SetupDiCreateInterfaceDevice SetupDiCreateDeviceInterfaceW#define SetupDiCreateDevRegKey SetupDiCreateDevRegKeyW#define SetupDiEnumDriverInfo SetupDiEnumDriverInfoW#define SetupDiGetActualSectionToInstall SetupDiGetActualSectionToInstallW#define SetupDiGetActualSectionToInstallEx SetupDiGetActualSectionToInstallExW#define SetupDiGetClassDescriptionEx SetupDiGetClassDescriptionExW#define SetupDiGetClassDescription SetupDiGetClassDescriptionW#define SetupDiGetClassDevPropertySheets SetupDiGetClassDevPropertySheetsW#define SetupDiGetClassDevsEx SetupDiGetClassDevsExW#define SetupDiGetClassDevs SetupDiGetClassDevsW#define SetupDiGetClassImageListEx SetupDiGetClassImageListExW#define SetupDiGetClassInstallParams SetupDiGetClassInstallParamsW#define SetupDiGetClassRegistryProperty SetupDiGetClassRegistryPropertyW#define SetupDiGetDeviceInfoListDetail SetupDiGetDeviceInfoListDetailW#define SetupDiGetDeviceInstallParams SetupDiGetDeviceInstallParamsW#define SetupDiGetDeviceInstanceId SetupDiGetDeviceInstanceIdW#define SetupDiGetDeviceInterfaceDetail SetupDiGetDeviceInterfaceDetailW#define SetupDiGetInterfaceDeviceDetail SetupDiGetDeviceInterfaceDetailW#define SetupDiGetDeviceRegistryProperty SetupDiGetDeviceRegistryPropertyW#define SetupDiGetDriverInfoDetail SetupDiGetDriverInfoDetailW#define SetupDiGetDriverInstallParams SetupDiGetDriverInstallParamsW#define SetupDiGetHwProfileFriendlyNameEx SetupDiGetHwProfileFriendlyNameExW#define SetupDiGetHwProfileFriendlyName SetupDiGetHwProfileFriendlyNameW#define SetupDiGetHwProfileListEx SetupDiGetHwProfileListExW#define SetupDiGetINFClass SetupDiGetINFClassW#define SetupDiGetSelectedDriver SetupDiGetSelectedDriverW#define SetupDiInstallClassEx SetupDiInstallClassExW#define SetupDiInstallClass SetupDiInstallClassW#define SetupDiOpenClassRegKeyEx SetupDiOpenClassRegKeyExW#define SetupDiOpenDeviceInfo SetupDiOpenDeviceInfoW#define SetupDiOpenDeviceInterface SetupDiOpenDeviceInterfaceW#define SetupDiOpenInterfaceDevice SetupDiOpenDeviceInterfaceW#define SetupDiSetClassInstallParams SetupDiSetClassInstallParamsW#define SetupDiSetClassRegistryProperty SetupDiSetClassRegistryPropertyW#define SetupDiSetDeviceInstallParams SetupDiSetDeviceInstallParamsW#define SetupDiSetDeviceRegistryProperty SetupDiSetDeviceRegistryPropertyW#define SetupDiSetDriverInstallParams SetupDiSetDriverInstallParamsW#define SetupDiSetSelectedDriver SetupDiSetSelectedDriverW#define SetupDuplicateDiskSpaceList SetupDuplicateDiskSpaceListW#define SetupFindFirstLine SetupFindFirstLineW#define SetupFindNextMatchLine SetupFindNextMatchLineW#define SetupFreeSourceList SetupFreeSourceListW#define SetupGetBackupInformation SetupGetBackupInformationW#define SetupGetFileCompressionInfo SetupGetFileCompressionInfoW#define SetupGetFileCompressionInfoEx SetupGetFileCompressionInfoExW#define SetupGetInfFileList SetupGetInfFileListW#define SetupGetInfInformation SetupGetInfInformationW#define SetupGetLineByIndex SetupGetLineByIndexW#define SetupGetLineCount SetupGetLineCountW#define SetupGetLineText SetupGetLineTextW#define SetupGetMultiSzField SetupGetMultiSzFieldW#define SetupGetSourceFileLocation SetupGetSourceFileLocationW#define SetupGetSourceFileSize SetupGetSourceFileSizeW#define SetupGetSourceInfo SetupGetSourceInfoW#define SetupGetStringField SetupGetStringFieldW#define SetupGetTargetPath SetupGetTargetPathW#define SetupInitializeFileLog SetupInitializeFileLogW#define SetupInstallFileEx SetupInstallFileExW#define SetupInstallFilesFromInfSection SetupInstallFilesFromInfSectionW#define SetupInstallFile SetupInstallFileW#define SetupInstallFromInfSection SetupInstallFromInfSectionW#define SetupInstallServicesFromInfSectionEx SetupInstallServicesFromInfSectionExW#define SetupInstallServicesFromInfSection SetupInstallServicesFromInfSectionW#define SetupIterateCabinet SetupIterateCabinetW#define SetupLogError SetupLogErrorW#define SetupLogFile SetupLogFileW#define SetupOpenAppendInfFile SetupOpenAppendInfFileW#define SetupOpenInfFile SetupOpenInfFileW#define SetupPromptForDisk SetupPromptForDiskW#define SetupQueryDrivesInDiskSpaceList SetupQueryDrivesInDiskSpaceListW#define SetupQueryFileLog SetupQueryFileLogW#define SetupQueryInfFileInformation SetupQueryInfFileInformationW#define SetupQueryInfOriginalFileInformation SetupQueryInfOriginalFileInformationW#define SetupQueryInfVersionInformation SetupQueryInfVersionInformationW#define SetupQuerySourceList SetupQuerySourceListW#define SetupQuerySpaceRequiredOnDrive SetupQuerySpaceRequiredOnDriveW#define SetupQueueCopyIndirect SetupQueueCopyIndirectW#define SetupQueueCopySection SetupQueueCopySectionW#define SetupQueueCopy SetupQueueCopyW#define SetupQueueDefaultCopy SetupQueueDefaultCopyW#define SetupQueueDeleteSection SetupQueueDeleteSectionW#define SetupQueueDelete SetupQueueDeleteW#define SetupQueueRenameSection SetupQueueRenameSectionW#define SetupQueueRename SetupQueueRenameW#define SetupRemoveFileLogEntry SetupRemoveFileLogEntryW#define SetupRemoveFromDiskSpaceList SetupRemoveFromDiskSpaceListW#define SetupRemoveFromSourceList SetupRemoveFromSourceListW#define SetupRemoveInstallSectionFromDiskSpaceList SetupRemoveInstallSectionFromDiskSpaceListW#define SetupRemoveSectionFromDiskSpaceList SetupRemoveSectionFromDiskSpaceListW#define SetupRenameError SetupRenameErrorW#define SetupScanFileQueue SetupScanFileQueueW#define SetupSetDirectoryIdEx SetupSetDirectoryIdExW#define SetupSetDirectoryId SetupSetDirectoryIdW#define SetupSetFileQueueAlternatePlatform SetupSetFileQueueAlternatePlatformW#define SetupSetPlatformPathOverride SetupSetPlatformPathOverrideW#define SetupSetSourceList SetupSetSourceListW#define SetupUninstallOEMInf SetupUninstallOEMInfW#else#define PSP_FILE_CALLBACK PSP_FILE_CALLBACK_A#define InstallHinfSection InstallHinfSectionA#define SetupAddInstallSectionToDiskSpaceList SetupAddInstallSectionToDiskSpaceListA#define SetupAddSectionToDiskSpaceList SetupAddSectionToDiskSpaceListA#define SetupAddToDiskSpaceList SetupAddToDiskSpaceListA#define SetupAddToSourceList SetupAddToSourceListA#define SetupAdjustDiskSpaceList SetupAdjustDiskSpaceListA#define SetupBackupError SetupBackupErrorA#define SetupCommitFileQueue SetupCommitFileQueueA#define SetupCopyError SetupCopyErrorA#define SetupCopyOEMInf SetupCopyOEMInfA#define SetupCreateDiskSpaceList SetupCreateDiskSpaceListA#define SetupDecompressOrCopyFile SetupDecompressOrCopyFileA#define SetupDefaultQueueCallback SetupDefaultQueueCallbackA#define SetupDeleteError SetupDeleteErrorA#define SetupDiBuildClassInfoListEx SetupDiBuildClassInfoListExA#define SetupDiClassGuidsFromName SetupDiClassGuidsFromNameA#define SetupDiClassGuidsFromNameEx SetupDiClassGuidsFromNameExA#define SetupDiClassNameFromGuid SetupDiClassNameFromGuidA#define SetupDiClassNameFromGuidEx SetupDiClassNameFromGuidExA#define SetupDiCreateDeviceInfo SetupDiCreateDeviceInfoA#define SetupDiCreateDeviceInfoListEx SetupDiCreateDeviceInfoListExA#define SetupDiCreateDeviceInterface SetupDiCreateDeviceInterfaceA#define SetupDiCreateInterfaceDevice SetupDiCreateDeviceInterfaceA#define SetupDiCreateDeviceInterfaceRegKey SetupDiCreateDeviceInterfaceRegKeyA#define SetupDiCreateInterfaceDeviceRegKey SetupDiCreateDeviceInterfaceRegKeyA#define SetupDiCreateDevRegKey SetupDiCreateDevRegKeyA#define SetupDiDeleteInterfaceDeviceData SetupDiDeleteDeviceInterfaceData#define SetupDiEnumDriverInfo SetupDiEnumDriverInfoA#define SetupDiGetActualSectionToInstall SetupDiGetActualSectionToInstallA#define SetupDiGetActualSectionToInstallEx SetupDiGetActualSectionToInstallExA#define SetupDiGetClassDescription SetupDiGetClassDescriptionA#define SetupDiGetClassDescriptionEx SetupDiGetClassDescriptionExA#define SetupDiGetClassDevPropertySheets SetupDiGetClassDevPropertySheetsA#define SetupDiGetClassDevs SetupDiGetClassDevsA#define SetupDiGetClassDevsEx SetupDiGetClassDevsExA#define SetupDiGetClassImageListEx SetupDiGetClassImageListExA#define SetupDiGetClassInstallParams SetupDiGetClassInstallParamsA#define SetupDiGetClassRegistryProperty SetupDiGetClassRegistryPropertyA#define SetupDiGetDeviceInfoListDetail SetupDiGetDeviceInfoListDetailA#define SetupDiGetDeviceInstallParams SetupDiGetDeviceInstallParamsA#define SetupDiGetDeviceInstanceId SetupDiGetDeviceInstanceIdA#define SetupDiGetDeviceInterfaceDetail SetupDiGetDeviceInterfaceDetailA#define SetupDiGetInterfaceDeviceDetail SetupDiGetDeviceInterfaceDetailA#define SetupDiGetDeviceRegistryProperty SetupDiGetDeviceRegistryPropertyA#define SetupDiGetDriverInfoDetail SetupDiGetDriverInfoDetailA#define SetupDiGetDriverInstallParams SetupDiGetDriverInstallParamsA#define SetupDiGetHwProfileFriendlyName SetupDiGetHwProfileFriendlyNameA#define SetupDiGetHwProfileFriendlyNameEx SetupDiGetHwProfileFriendlyNameExA#define SetupDiGetHwProfileListEx SetupDiGetHwProfileListExA#define SetupDiGetINFClass SetupDiGetINFClassA#define SetupDiGetSelectedDriver SetupDiGetSelectedDriverA#define SetupDiInstallClass SetupDiInstallClassA#define SetupDiInstallClassEx SetupDiInstallClassExA#define SetupDiOpenClassRegKeyEx SetupDiOpenClassRegKeyExA#define SetupDiOpenDeviceInfo SetupDiOpenDeviceInfoA#define SetupDiOpenDeviceInterface SetupDiOpenDeviceInterfaceA#define SetupDiOpenInterfaceDevice SetupDiOpenDeviceInterfaceA#define SetupDiSetClassInstallParams SetupDiSetClassInstallParamsA#define SetupDiSetClassRegistryProperty SetupDiSetClassRegistryPropertyA#define SetupDiSetDeviceInstallParams SetupDiSetDeviceInstallParamsA#define SetupDiSetDeviceRegistryProperty SetupDiSetDeviceRegistryPropertyA#define SetupDiSetDriverInstallParams SetupDiSetDriverInstallParamsA#define SetupDiSetSelectedDriver SetupDiSetSelectedDriverA#define SetupDuplicateDiskSpaceList SetupDuplicateDiskSpaceListA#define SetupFindFirstLine SetupFindFirstLineA#define SetupFindNextMatchLine SetupFindNextMatchLineA#define SetupFreeSourceList SetupFreeSourceListA#define SetupGetBackupInformation SetupGetBackupInformationA#define SetupGetFileCompressionInfo SetupGetFileCompressionInfoA#define SetupGetFileCompressionInfoEx SetupGetFileCompressionInfoExA#define SetupGetInfFileList SetupGetInfFileListA#define SetupGetInfInformation SetupGetInfInformationA#define SetupGetLineByIndex SetupGetLineByIndexA#define SetupGetLineCount SetupGetLineCountA#define SetupGetLineText SetupGetLineTextA#define SetupGetMultiSzField SetupGetMultiSzFieldA#define SetupGetSourceFileLocation SetupGetSourceFileLocationA#define SetupGetSourceFileSize SetupGetSourceFileSizeA#define SetupGetSourceInfo SetupGetSourceInfoA#define SetupGetStringField SetupGetStringFieldA#define SetupGetTargetPath SetupGetTargetPathA#define SetupInitializeFileLog SetupInitializeFileLogA#define SetupInstallFile SetupInstallFileA#define SetupInstallFileEx SetupInstallFileExA#define SetupInstallFilesFromInfSection SetupInstallFilesFromInfSectionA#define SetupInstallFromInfSection SetupInstallFromInfSectionA#define SetupInstallServicesFromInfSection SetupInstallServicesFromInfSectionA#define SetupInstallServicesFromInfSectionEx SetupInstallServicesFromInfSectionExA#define SetupIterateCabinet SetupIterateCabinetA#define SetupLogError SetupLogErrorA#define SetupLogFile SetupLogFileA#define SetupOpenAppendInfFile SetupOpenAppendInfFileA#define SetupOpenInfFile SetupOpenInfFileA#define SetupPromptForDisk SetupPromptForDiskA#define SetupQueryDrivesInDiskSpaceList SetupQueryDrivesInDiskSpaceListA#define SetupQueryFileLog SetupQueryFileLogA#define SetupQueryInfFileInformation SetupQueryInfFileInformationA#define SetupQueryInfOriginalFileInformation SetupQueryInfOriginalFileInformationA#define SetupQueryInfVersionInformation SetupQueryInfVersionInformationA#define SetupQuerySourceList SetupQuerySourceListA#define SetupQuerySpaceRequiredOnDrive SetupQuerySpaceRequiredOnDriveA#define SetupQueueCopy SetupQueueCopyA#define SetupQueueCopyIndirect SetupQueueCopyIndirectA#define SetupQueueCopySection SetupQueueCopySectionA#define SetupQueueDefaultCopy SetupQueueDefaultCopyA#define SetupQueueDelete SetupQueueDeleteA#define SetupQueueDeleteSection SetupQueueDeleteSectionA#define SetupQueueRename SetupQueueRenameA#define SetupQueueRenameSection SetupQueueRenameSectionA#define SetupRemoveFileLogEntry SetupRemoveFileLogEntryA#define SetupRemoveFromDiskSpaceList SetupRemoveFromDiskSpaceListA#define SetupRemoveFromSourceList SetupRemoveFromSourceListA#define SetupRemoveInstallSectionFromDiskSpaceList SetupRemoveInstallSectionFromDiskSpaceListA#define SetupRemoveSectionFromDiskSpaceList SetupRemoveSectionFromDiskSpaceListA#define SetupRenameError SetupRenameErrorA#define SetupScanFileQueue SetupScanFileQueueA#define SetupSetDirectoryId SetupSetDirectoryIdA#define SetupSetDirectoryIdEx SetupSetDirectoryIdExA#define SetupSetFileQueueAlternatePlatform SetupSetFileQueueAlternatePlatformA#define SetupSetPlatformPathOverride SetupSetPlatformPathOverrideA#define SetupSetSourceList SetupSetSourceListA#define SetupUninstallOEMInf SetupUninstallOEMInfA#endif /* UNICODE */
#endif /* RC_INVOKED */
#ifdef __cplusplus}#endif
#include <poppack.h>#endif /* _SETUPAPI_H_ */