Added regedit unit test, a couple minor changes to regedit.
[wine] / programs / winetest / include / oleaut32.pm
1 package oleaut32;
2
3 use strict;
4
5 require Exporter;
6
7 use wine;
8 use vars qw(@ISA @EXPORT @EXPORT_OK);
9
10 @ISA = qw(Exporter);
11 @EXPORT = qw();
12 @EXPORT_OK = qw();
13
14 my $module_declarations = {
15     "OleCreatePropertyFrame" => ["long",  ["long", "long", "long", "str", "long", "ptr", "long", "ptr", "long", "long", "ptr"]],
16     "OleCreatePropertyFrameIndirect" => ["long",  ["ptr"]],
17     "DllGetClassObject" => ["long",  ["ptr", "ptr", "ptr"]],
18     "SysAllocString" => ["wstr",  ["str"]],
19     "SysReAllocString" => ["long",  ["ptr", "str"]],
20     "SysAllocStringLen" => ["wstr",  ["ptr", "long"]],
21     "SysReAllocStringLen" => ["long",  ["ptr", "ptr", "long"]],
22     "SysFreeString" => ["void",  ["wstr"]],
23     "SysStringLen" => ["long",  ["wstr"]],
24     "VariantInit" => ["void",  ["ptr"]],
25     "VariantClear" => ["long",  ["ptr"]],
26     "VariantCopy" => ["long",  ["ptr", "ptr"]],
27     "VariantCopyInd" => ["long",  ["ptr", "ptr"]],
28     "VariantChangeType" => ["long",  ["ptr", "ptr", "long", "long"]],
29     "VariantTimeToDosDateTime" => ["long",  ["double", "ptr", "ptr"]],
30     "DosDateTimeToVariantTime" => ["long",  ["long", "long", "ptr"]],
31     "SafeArrayCreate" => ["ptr",  ["long", "long", "ptr"]],
32     "SafeArrayDestroy" => ["long",  ["ptr"]],
33     "SafeArrayGetDim" => ["long",  ["ptr"]],
34     "SafeArrayGetElemsize" => ["long",  ["ptr"]],
35     "SafeArrayGetUBound" => ["long",  ["ptr", "long", "ptr"]],
36     "SafeArrayGetLBound" => ["long",  ["ptr", "long", "ptr"]],
37     "SafeArrayLock" => ["long",  ["ptr"]],
38     "SafeArrayUnlock" => ["long",  ["ptr"]],
39     "SafeArrayAccessData" => ["long",  ["ptr", "ptr"]],
40     "SafeArrayUnaccessData" => ["long",  ["ptr"]],
41     "SafeArrayGetElement" => ["long",  ["ptr", "ptr", "ptr"]],
42     "SafeArrayPutElement" => ["long",  ["ptr", "ptr", "ptr"]],
43     "SafeArrayCopy" => ["long",  ["ptr", "ptr"]],
44     "DispGetParam" => ["long",  ["ptr", "long", "long", "ptr", "ptr"]],
45     "DispGetIDsOfNames" => ["long",  ["ptr", "ptr", "long", "ptr"]],
46     "DispInvoke" => ["long",  ["ptr", "ptr", "long", "long", "ptr", "ptr", "ptr", "ptr"]],
47     "CreateDispTypeInfo" => ["long",  ["ptr", "long", "ptr"]],
48     "CreateStdDispatch" => ["long",  ["ptr", "ptr", "ptr", "ptr"]],
49     "RegisterActiveObject" => ["long",  ["ptr", "ptr", "long", "ptr"]],
50     "RevokeActiveObject" => ["long",  ["long", "ptr"]],
51     "GetActiveObject" => ["long",  ["ptr", "ptr", "ptr"]],
52     "SafeArrayAllocDescriptor" => ["long",  ["long", "ptr"]],
53     "SafeArrayAllocData" => ["long",  ["ptr"]],
54     "SafeArrayDestroyDescriptor" => ["long",  ["ptr"]],
55     "SafeArrayDestroyData" => ["long",  ["ptr"]],
56     "SafeArrayRedim" => ["long",  ["ptr", "ptr"]],
57     "VarParseNumFromStr" => ["long",  ["ptr", "long", "long", "ptr", "ptr"]],
58     "VarNumFromParseNum" => ["long",  ["ptr", "ptr", "long", "ptr"]],
59     "VarI2FromUI1" => ["long",  ["long", "ptr"]],
60     "VarI2FromI4" => ["long",  ["long", "ptr"]],
61     "VarI2FromR4" => ["long",  ["long", "ptr"]],
62     "VarI2FromR8" => ["long",  ["double", "ptr"]],
63     "VarI2FromCy" => ["long",  ["double", "ptr"]],
64     "VarI2FromDate" => ["long",  ["double", "ptr"]],
65     "VarI2FromStr" => ["long",  ["ptr", "long", "long", "ptr"]],
66     "VarI2FromBool" => ["long",  ["long", "ptr"]],
67     "VarI4FromUI1" => ["long",  ["long", "ptr"]],
68     "VarI4FromI2" => ["long",  ["long", "ptr"]],
69     "VarI4FromR4" => ["long",  ["long", "ptr"]],
70     "VarI4FromR8" => ["long",  ["double", "ptr"]],
71     "VarI4FromCy" => ["long",  ["double", "ptr"]],
72     "VarI4FromDate" => ["long",  ["double", "ptr"]],
73     "VarI4FromStr" => ["long",  ["ptr", "long", "long", "ptr"]],
74     "VarI4FromBool" => ["long",  ["long", "ptr"]],
75     "VarR4FromUI1" => ["long",  ["long", "ptr"]],
76     "VarR4FromI2" => ["long",  ["long", "ptr"]],
77     "VarR4FromI4" => ["long",  ["long", "ptr"]],
78     "VarR4FromR8" => ["long",  ["double", "ptr"]],
79     "VarR4FromCy" => ["long",  ["double", "ptr"]],
80     "VarR4FromDate" => ["long",  ["double", "ptr"]],
81     "VarR4FromStr" => ["long",  ["ptr", "long", "long", "ptr"]],
82     "VarR4FromBool" => ["long",  ["long", "ptr"]],
83     "SafeArrayGetVarType" => ["long",  ["ptr", "ptr"]],
84     "VarR8FromUI1" => ["long",  ["long", "ptr"]],
85     "VarR8FromI2" => ["long",  ["long", "ptr"]],
86     "VarR8FromI4" => ["long",  ["long", "ptr"]],
87     "VarR8FromR4" => ["long",  ["long", "ptr"]],
88     "VarR8FromCy" => ["long",  ["double", "ptr"]],
89     "VarR8FromDate" => ["long",  ["double", "ptr"]],
90     "VarR8FromStr" => ["long",  ["ptr", "long", "long", "ptr"]],
91     "VarR8FromBool" => ["long",  ["long", "ptr"]],
92     "VarDateFromUI1" => ["long",  ["long", "ptr"]],
93     "VarDateFromI2" => ["long",  ["long", "ptr"]],
94     "VarDateFromI4" => ["long",  ["long", "ptr"]],
95     "VarDateFromR4" => ["long",  ["long", "ptr"]],
96     "VarDateFromR8" => ["long",  ["double", "ptr"]],
97     "VarDateFromCy" => ["long",  ["double", "ptr"]],
98     "VarDateFromStr" => ["long",  ["ptr", "long", "long", "ptr"]],
99     "VarDateFromBool" => ["long",  ["long", "ptr"]],
100     "VarCyFromUI1" => ["long",  ["long", "ptr"]],
101     "VarCyFromI2" => ["long",  ["long", "ptr"]],
102     "VarCyFromI4" => ["long",  ["long", "ptr"]],
103     "VarCyFromR4" => ["long",  ["long", "ptr"]],
104     "VarCyFromR8" => ["long",  ["double", "ptr"]],
105     "VarCyFromDate" => ["long",  ["double", "ptr"]],
106     "VarCyFromStr" => ["long",  ["ptr", "long", "long", "ptr"]],
107     "VarCyFromBool" => ["long",  ["long", "ptr"]],
108     "VarBstrFromUI1" => ["long",  ["long", "long", "long", "ptr"]],
109     "VarBstrFromI2" => ["long",  ["long", "long", "long", "ptr"]],
110     "VarBstrFromI4" => ["long",  ["long", "long", "long", "ptr"]],
111     "VarBstrFromR4" => ["long",  ["long", "long", "long", "ptr"]],
112     "VarBstrFromR8" => ["long",  ["double", "long", "long", "ptr"]],
113     "VarBstrFromCy" => ["long",  ["double", "long", "long", "ptr"]],
114     "VarBstrFromDate" => ["long",  ["double", "long", "long", "ptr"]],
115     "VarBstrFromBool" => ["long",  ["long", "long", "long", "ptr"]],
116     "VarBoolFromUI1" => ["long",  ["long", "ptr"]],
117     "VarBoolFromI2" => ["long",  ["long", "ptr"]],
118     "VarBoolFromI4" => ["long",  ["long", "ptr"]],
119     "VarBoolFromR4" => ["long",  ["long", "ptr"]],
120     "VarBoolFromR8" => ["long",  ["double", "ptr"]],
121     "VarBoolFromDate" => ["long",  ["double", "ptr"]],
122     "VarBoolFromCy" => ["long",  ["double", "ptr"]],
123     "VarBoolFromStr" => ["long",  ["ptr", "long", "long", "ptr"]],
124     "VarUI1FromI2" => ["long",  ["long", "ptr"]],
125     "VarUI1FromI4" => ["long",  ["long", "ptr"]],
126     "VarUI1FromR4" => ["long",  ["long", "ptr"]],
127     "VarUI1FromR8" => ["long",  ["double", "ptr"]],
128     "VarUI1FromCy" => ["long",  ["double", "ptr"]],
129     "VarUI1FromDate" => ["long",  ["double", "ptr"]],
130     "VarUI1FromStr" => ["long",  ["ptr", "long", "long", "ptr"]],
131     "VarUI1FromBool" => ["long",  ["long", "ptr"]],
132     "VariantChangeTypeEx" => ["long",  ["ptr", "ptr", "long", "long", "long"]],
133     "SafeArrayPtrOfIndex" => ["long",  ["ptr", "ptr", "ptr"]],
134     "SysStringByteLen" => ["long",  ["wstr"]],
135     "SysAllocStringByteLen" => ["wstr",  ["str", "long"]],
136     "CreateTypeLib" => ["long",  ["long", "str", "ptr"]],
137     "LoadTypeLib" => ["long",  ["ptr", "ptr"]],
138     "LoadRegTypeLib" => ["long",  ["ptr", "long", "long", "long", "ptr"]],
139     "RegisterTypeLib" => ["long",  ["ptr", "ptr", "ptr"]],
140     "QueryPathOfRegTypeLib" => ["long",  ["ptr", "long", "long", "long", "ptr"]],
141     "LHashValOfNameSys" => ["long",  ["long", "long", "str"]],
142     "LHashValOfNameSysA" => ["long",  ["long", "long", "str"]],
143     "OaBuildVersion" => ["long",  ["undef"]],
144     "LoadTypeLibEx" => ["long",  ["str", "long", "ptr"]],
145     "SystemTimeToVariantTime" => ["long",  ["ptr", "ptr"]],
146     "VariantTimeToSystemTime" => ["long",  ["double", "ptr"]],
147     "UnRegisterTypeLib" => ["long",  ["ptr", "long", "long", "long", "long"]],
148     "VarI2FromI1" => ["long",  ["long", "ptr"]],
149     "VarI2FromUI2" => ["long",  ["long", "ptr"]],
150     "VarI2FromUI4" => ["long",  ["long", "ptr"]],
151     "VarI4FromI1" => ["long",  ["long", "ptr"]],
152     "VarI4FromUI2" => ["long",  ["long", "ptr"]],
153     "VarI4FromUI4" => ["long",  ["long", "ptr"]],
154     "VarR4FromI1" => ["long",  ["long", "ptr"]],
155     "VarR4FromUI2" => ["long",  ["long", "ptr"]],
156     "VarR4FromUI4" => ["long",  ["long", "ptr"]],
157     "VarR8FromI1" => ["long",  ["long", "ptr"]],
158     "VarR8FromUI2" => ["long",  ["long", "ptr"]],
159     "VarR8FromUI4" => ["long",  ["long", "ptr"]],
160     "VarDateFromI1" => ["long",  ["long", "ptr"]],
161     "VarDateFromUI2" => ["long",  ["long", "ptr"]],
162     "VarDateFromUI4" => ["long",  ["long", "ptr"]],
163     "VarCyFromI1" => ["long",  ["long", "ptr"]],
164     "VarCyFromUI2" => ["long",  ["long", "ptr"]],
165     "VarCyFromUI4" => ["long",  ["long", "ptr"]],
166     "VarBstrFromI1" => ["long",  ["long", "long", "long", "ptr"]],
167     "VarBstrFromUI2" => ["long",  ["long", "long", "long", "ptr"]],
168     "VarBstrFromUI4" => ["long",  ["long", "long", "long", "ptr"]],
169     "VarBoolFromI1" => ["long",  ["long", "ptr"]],
170     "VarBoolFromUI2" => ["long",  ["long", "ptr"]],
171     "VarBoolFromUI4" => ["long",  ["long", "ptr"]],
172     "VarUI1FromI1" => ["long",  ["long", "ptr"]],
173     "VarUI1FromUI2" => ["long",  ["long", "ptr"]],
174     "VarUI1FromUI4" => ["long",  ["long", "ptr"]],
175     "VarI1FromUI1" => ["long",  ["long", "ptr"]],
176     "VarI1FromI2" => ["long",  ["long", "ptr"]],
177     "VarI1FromI4" => ["long",  ["long", "ptr"]],
178     "VarI1FromR4" => ["long",  ["long", "ptr"]],
179     "VarI1FromR8" => ["long",  ["double", "ptr"]],
180     "VarI1FromDate" => ["long",  ["double", "ptr"]],
181     "VarI1FromCy" => ["long",  ["double", "ptr"]],
182     "VarI1FromStr" => ["long",  ["ptr", "long", "long", "ptr"]],
183     "VarI1FromBool" => ["long",  ["long", "ptr"]],
184     "VarI1FromUI2" => ["long",  ["long", "ptr"]],
185     "VarI1FromUI4" => ["long",  ["long", "ptr"]],
186     "VarUI2FromUI1" => ["long",  ["long", "ptr"]],
187     "VarUI2FromI2" => ["long",  ["long", "ptr"]],
188     "VarUI2FromI4" => ["long",  ["long", "ptr"]],
189     "VarUI2FromR4" => ["long",  ["long", "ptr"]],
190     "VarUI2FromR8" => ["long",  ["double", "ptr"]],
191     "VarUI2FromDate" => ["long",  ["double", "ptr"]],
192     "VarUI2FromCy" => ["long",  ["double", "ptr"]],
193     "VarUI2FromStr" => ["long",  ["ptr", "long", "long", "ptr"]],
194     "VarUI2FromBool" => ["long",  ["long", "ptr"]],
195     "VarUI2FromI1" => ["long",  ["long", "ptr"]],
196     "VarUI2FromUI4" => ["long",  ["long", "ptr"]],
197     "VarUI4FromUI1" => ["long",  ["long", "ptr"]],
198     "VarUI4FromI2" => ["long",  ["long", "ptr"]],
199     "VarUI4FromI4" => ["long",  ["long", "ptr"]],
200     "VarUI4FromR4" => ["long",  ["long", "ptr"]],
201     "VarUI4FromR8" => ["long",  ["double", "ptr"]],
202     "VarUI4FromDate" => ["long",  ["double", "ptr"]],
203     "VarUI4FromCy" => ["long",  ["double", "ptr"]],
204     "VarUI4FromStr" => ["long",  ["ptr", "long", "long", "ptr"]],
205     "VarUI4FromBool" => ["long",  ["long", "ptr"]],
206     "VarUI4FromI1" => ["long",  ["long", "ptr"]],
207     "VarUI4FromUI2" => ["long",  ["long", "ptr"]],
208     "DllRegisterServer" => ["long",  ["undef"]],
209     "VarDateFromUdate" => ["long",  ["ptr", "long", "ptr"]],
210     "VarUdateFromDate" => ["long",  ["double", "long", "ptr"]],
211     "DllCanUnloadNow" => ["long",  ["undef"]],
212     "SafeArrayCreateVector" => ["ptr",  ["long", "long", "long"]],
213     "SafeArrayCopyData" => ["long",  ["ptr", "ptr"]],
214     "OleIconToCursor" => ["long",  ["long", "long"]],
215     "OleLoadPicture" => ["long",  ["ptr", "long", "long", "ptr", "ptr"]],
216     "OleCreatePictureIndirect" => ["long",  ["ptr", "ptr", "long", "ptr"]],
217     "OleCreateFontIndirect" => ["long",  ["ptr", "ptr", "ptr"]],
218     "OleTranslateColor" => ["long",  ["long", "long", "ptr"]],
219     "OleLoadPictureEx" => ["long",  ["ptr", "long", "long", "ptr", "long", "long", "long", "ptr"]],
220     "SafeArrayAllocDescriptorEx" => ["long",  ["long", "long", "ptr"]],
221     "VarBstrCat" => ["long",  ["wstr", "wstr", "ptr"]],
222     "VarBstrCmp" => ["long",  ["wstr", "wstr", "long", "long"]],
223     "VarCat" => ["long",  ["ptr", "ptr", "ptr"]]
224 };
225
226 &wine::declare("oleaut32",%$module_declarations);
227 push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
228 1;