8 use vars qw(@ISA @EXPORT @EXPORT_OK);
14 my $module_declarations = {
15 "SetupCloseFileQueue" => ["long", ["long"]],
16 "SetupCloseInfFile" => ["void", ["long"]],
17 "SetupCommitFileQueueA" => ["long", ["long", "long", "ptr", "ptr"]],
18 "SetupCommitFileQueueW" => ["long", ["long", "long", "ptr", "ptr"]],
19 "SetupDefaultQueueCallbackA" => ["long", ["ptr", "long", "long", "long"]],
20 "SetupDefaultQueueCallbackW" => ["long", ["ptr", "long", "long", "long"]],
21 "SetupFindFirstLineA" => ["long", ["long", "str", "str", "ptr"]],
22 "SetupFindFirstLineW" => ["long", ["long", "str", "str", "ptr"]],
23 "SetupFindNextLine" => ["long", ["ptr", "ptr"]],
24 "SetupFindNextMatchLineA" => ["long", ["ptr", "str", "ptr"]],
25 "SetupFindNextMatchLineW" => ["long", ["ptr", "str", "ptr"]],
26 "SetupGetBinaryField" => ["long", ["ptr", "long", "ptr", "long", "ptr"]],
27 "SetupGetFieldCount" => ["long", ["ptr"]],
28 "SetupGetFileQueueCount" => ["long", ["long", "long", "ptr"]],
29 "SetupGetFileQueueFlags" => ["long", ["long", "ptr"]],
30 "SetupGetIntField" => ["long", ["ptr", "long", "ptr"]],
31 "SetupGetLineByIndexA" => ["long", ["long", "str", "long", "ptr"]],
32 "SetupGetLineByIndexW" => ["long", ["long", "str", "long", "ptr"]],
33 "SetupGetLineCountA" => ["long", ["long", "str"]],
34 "SetupGetLineCountW" => ["long", ["long", "str"]],
35 "SetupGetLineTextA" => ["long", ["ptr", "long", "str", "str", "ptr", "long", "ptr"]],
36 "SetupGetLineTextW" => ["long", ["ptr", "long", "str", "str", "str", "long", "ptr"]],
37 "SetupGetMultiSzFieldA" => ["long", ["ptr", "long", "ptr", "long", "ptr"]],
38 "SetupGetMultiSzFieldW" => ["long", ["ptr", "long", "str", "long", "ptr"]],
39 "SetupGetStringFieldA" => ["long", ["ptr", "long", "ptr", "long", "ptr"]],
40 "SetupGetStringFieldW" => ["long", ["ptr", "long", "str", "long", "ptr"]],
41 "SetupInitDefaultQueueCallback" => ["ptr", ["long"]],
42 "SetupInitDefaultQueueCallbackEx" => ["ptr", ["long", "long", "long", "long", "ptr"]],
43 "SetupInstallFilesFromInfSectionA" => ["long", ["long", "long", "long", "str", "str", "long"]],
44 "SetupInstallFilesFromInfSectionW" => ["long", ["long", "long", "long", "str", "str", "long"]],
45 "SetupInstallFromInfSectionA" => ["long", ["long", "long", "str", "long", "long", "str", "long", "ptr", "ptr", "long", "ptr"]],
46 "SetupInstallFromInfSectionW" => ["long", ["long", "long", "str", "long", "long", "str", "long", "ptr", "ptr", "long", "ptr"]],
47 "SetupIterateCabinetA" => ["long", ["str", "long", "ptr", "ptr"]],
48 "SetupIterateCabinetW" => ["long", ["str", "long", "ptr", "ptr"]],
49 "SetupOpenAppendInfFileA" => ["long", ["str", "long", "ptr"]],
50 "SetupOpenAppendInfFileW" => ["long", ["str", "long", "ptr"]],
51 "SetupOpenFileQueue" => ["long", []],
52 "SetupOpenInfFileA" => ["long", ["str", "str", "long", "ptr"]],
53 "SetupOpenInfFileW" => ["long", ["str", "str", "long", "ptr"]],
54 "SetupQueueCopyA" => ["long", ["long", "str", "str", "str", "str", "str", "str", "str", "long"]],
55 "SetupQueueCopyIndirectA" => ["long", ["ptr"]],
56 "SetupQueueCopyIndirectW" => ["long", ["ptr"]],
57 "SetupQueueCopySectionA" => ["long", ["long", "str", "long", "long", "str", "long"]],
58 "SetupQueueCopySectionW" => ["long", ["long", "str", "long", "long", "str", "long"]],
59 "SetupQueueCopyW" => ["long", ["long", "str", "str", "str", "str", "str", "str", "str", "long"]],
60 "SetupQueueDefaultCopyA" => ["long", ["long", "long", "str", "str", "str", "long"]],
61 "SetupQueueDefaultCopyW" => ["long", ["long", "long", "str", "str", "str", "long"]],
62 "SetupQueueDeleteA" => ["long", ["long", "str", "str"]],
63 "SetupQueueDeleteSectionA" => ["long", ["long", "long", "long", "str"]],
64 "SetupQueueDeleteSectionW" => ["long", ["long", "long", "long", "str"]],
65 "SetupQueueDeleteW" => ["long", ["long", "str", "str"]],
66 "SetupQueueRenameA" => ["long", ["long", "str", "str", "str", "str"]],
67 "SetupQueueRenameSectionA" => ["long", ["long", "long", "long", "str"]],
68 "SetupQueueRenameSectionW" => ["long", ["long", "long", "long", "str"]],
69 "SetupQueueRenameW" => ["long", ["long", "str", "str", "str", "str"]],
70 "SetupScanFileQueueA" => ["long", ["long", "long", "long", "ptr", "ptr", "ptr"]],
71 "SetupScanFileQueueW" => ["long", ["long", "long", "long", "ptr", "ptr", "ptr"]],
72 "SetupSetDirectoryIdA" => ["long", ["long", "long", "str"]],
73 "SetupSetDirectoryIdW" => ["long", ["long", "long", "str"]],
74 "SetupSetFileQueueFlags" => ["long", ["long", "long", "long"]],
75 "SetupTermDefaultQueueCallback" => ["void", ["ptr"]]
78 &wine::declare("setupapi",%$module_declarations);
79 push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));