ReactOS 0.4.15-dev-7660-g0086d05
tmarshal.idl
Go to the documentation of this file.
1/*
2 * Copyright (C) 2005 Robert Shearman
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17 *
18 */
19
20#pragma makedep ident
21#pragma makedep typelib
22
23import "ocidl.idl";
24
26{
52
75};
76
77static const int DISPID_TM_NEG_RESTRICTED = -26;
78
80{
83};
84
85[
86 uuid(d96d8a3e-78b6-4c8d-8f27-059db959be8a),
87 version(2.5),
88 helpstring("Test Typelib")
89]
91{
92 importlib("stdole2.tlb");
93
94 typedef enum tagSTATE
95 {
99
100 typedef struct tagMYSTRUCT
101 {
104 UINT uarr[8];
105 } MYSTRUCT;
106
107 typedef [public] int myint_t;
108
109 typedef int array_t[4];
110
111 coclass ApplicationObject2;
112
113 [
114 odl,
116 uuid(12345678-1234-4321-1234-121212121212)
117 ]
119 {
121 }
122
123 [
124 odl,
126 dual,
127 uuid(3f7e06fe-0bce-46f0-8b7d-3a68393c7967)
128 ]
130 {
132 }
133
134 [
135 odl,
136 uuid(3f7e06fe-0bce-46f0-8b7d-3a68393c7968)
137 ]
139 {
141 }
142
143 [
144 odl,
146 dual,
147 uuid(3f7e06fe-0bce-46f0-8b7d-3a68393c7969)
148 ]
150 {
152 }
153
154 [
156 uuid(3f7e06fe-0bce-46f0-8b7d-3a68393c796a)
157 ]
159 {
161 }
162
163 [
165 uuid(3f7e06fe-0bce-46f0-8b7d-3a68393c796b)
166 ]
168 {
170 }
171
172 [
173 uuid(3f7e06fe-0bce-46f0-8b7d-3a68393c796c)
174 ]
175 coclass Coclass1
176 {
177 [default] interface ICoclass1;
178 interface ICoclass2;
179 }
180
181 [
182 uuid(3f7e06fe-0bce-46f0-8b7d-3a68393c796d)
183 ]
184 coclass Coclass2
185 {
186 interface ICoclass1;
187 [default] interface ICoclass2;
188 }
189
190 [
191 uuid(3f7e06fe-0bce-46f0-8b7d-3a68393c796e)
192 ]
193 coclass Coclass3
194 {
195 interface ICoclass1;
196 interface ICoclass2;
197 }
198
199 [
201 uuid(a1f8cae3-c947-4c5f-b57d-c87b9b5f3586),
203 dual
204 ]
205 interface IWidget : IDispatch
206 {
207 [propput, id(DISPID_TM_NAME)]
209 [propget, id(DISPID_TM_NAME)]
210 HRESULT Name([out, retval] BSTR *name);
213 HRESULT DoSomething([in] double number, [out] BSTR *str1, [in, defaultvalue("")] BSTR str2, [in, optional] VARIANT *opt);
214
215 [propget, id(DISPID_TM_STATE)]
216 HRESULT State([out, retval] STATE *state);
217 [propput, id(DISPID_TM_STATE)]
219
221 HRESULT Map([in] BSTR bstrId, [out, retval] BSTR *sValue);
222
224 HRESULT SetOleColor([in] OLE_COLOR val);
227 HRESULT GetOleColor([out, retval] OLE_COLOR *pVal);
228
229 [propget, id(DISPID_TM_CLONE)]
230 HRESULT Clone([out, retval] IWidget **ppVal);
232 [propget, id(DISPID_TM_CLONEDISPATCH)]
233 HRESULT CloneDispatch([out, retval] IDispatch **ppVal);
235 [propget, id(DISPID_TM_CLONECOCLASS)]
236 HRESULT CloneCoclass([out, retval] ApplicationObject2 **ppVal);
238 [propget, id(DISPID_VALUE)]
239 HRESULT Value([in] VARIANT *value, [out, retval] VARIANT *retval);
242 HRESULT VariantArrayPtr([in] SAFEARRAY(VARIANT) *values);
243
245 HRESULT VarArg([in] int numexpect, [in] SAFEARRAY(VARIANT) values);
246
249
251 HRESULT CloneInterface([out, retval] ISomethingFromDispatch **ppVal);
252
254 HRESULT prop_with_lcid([in,lcid] long lcid, [in] INT i);
256 [id(DISPID_TM_PROP_WITH_LCID), propget]
257 HRESULT prop_with_lcid([in,lcid] long lcid, [out,retval] INT *i);
258
259 [id(DISPID_TM_PROP_INT), propget]
260 HRESULT prop_int([out,retval] INT *i);
261
262 [id(DISPID_TM_PROP_UINT), propget]
263 HRESULT prop_uint([out,retval] UINT *i);
264
266 HRESULT ByRefUInt([in, out] UINT *i);
267
268 [id(DISPID_TM_PROP_OPT_ARG), propput]
269 HRESULT prop_opt_arg([in,optional] INT opt, [in] INT i);
270
271 [id(DISPID_TM_PROP_REQ_ARG), propput]
272 HRESULT prop_req_arg([in] INT req, [in] INT i);
273
274 [id(DISPID_TM_RESTRICTED), restricted]
275 HRESULT pos_restrict([out, retval] INT *i);
276
278 HRESULT neg_restrict([out, retval] INT *i);
279
280 [id(DISPID_TM_VARARG_RUN), vararg]
281 HRESULT VarArg_Run([in] BSTR name, [in] SAFEARRAY(VARIANT) params, [out, retval] VARIANT *result);
284 HRESULT VarArg_Ref_Run([in] BSTR name, [in] SAFEARRAY(VARIANT) *params, [out, retval] VARIANT *result);
287 HRESULT basetypes_in([in] signed char c, [in] short s, [in] int i, [in] hyper h,
288 [in] unsigned char uc, [in] unsigned short us, [in] unsigned int ui,
289 [in] unsigned hyper uh, [in] float f, [in] double d, [in] STATE st);
290
292 HRESULT basetypes_out([out] signed char *c, [out] short *s, [out] int *i, [out] hyper *h,
293 [out] unsigned char *uc, [out] unsigned short *us, [out] unsigned int *ui,
294 [out] unsigned hyper *uh, [out] float *f, [out] double *d, [out] STATE *st);
295
297 HRESULT float_abi([in] float f, [in] double d, [in] int i, [in] float f2, [in] double d2);
298
300 HRESULT int_ptr([in] int *in, [out] int *out, [in, out] int *in_out);
301
303 HRESULT int_ptr_ptr([in] int **in, [out] int **out, [in, out] int **in_out);
304
306 HRESULT iface_in([in] IUnknown *unk, [in] IDispatch *disp, [in] ISomethingFromDispatch *sfd);
307
309 HRESULT iface_out([out] IUnknown **unk, [out] IDispatch **disp, [out] ISomethingFromDispatch **sfd);
310
313
315 HRESULT bstr([in] BSTR in, [out] BSTR *out, [in] BSTR *in_ptr, [in, out] BSTR *in_out);
318 HRESULT variant([in] VARIANT in, [out] VARIANT *out, [in] VARIANT *in_ptr, [in, out] VARIANT *in_out);
319
321 HRESULT safearray([in] SAFEARRAY(int) in, [out] SAFEARRAY(int) *out, [in] SAFEARRAY(int) *in_ptr, [in, out] SAFEARRAY(int) *in_out);
322
324 HRESULT mystruct([in] MYSTRUCT in, [out] MYSTRUCT *out, [in] MYSTRUCT *in_ptr, [in, out] MYSTRUCT *in_out);
325
327 HRESULT mystruct_ptr_ptr([in] MYSTRUCT **in);
329 struct thin
331 short a;
332 char b;
333 };
336 HRESULT thin_struct([in] struct thin in);
339 HRESULT rect([in] RECT in, [out] RECT *out, [in] RECT *in_ptr, [in, out] RECT *in_out);
340
341 struct complex
343 char c;
344 int i;
345 int *pi;
346 int **ppi;
349 BSTR bstr;
350 VARIANT var;
351 MYSTRUCT mystruct;
352 array_t arr;
353 myint_t myint;
354 };
355
357 HRESULT complex_struct([in] struct complex in);
358
360 HRESULT array([in] array_t in, [out] array_t out, [in, out] array_t in_out);
361
363 HRESULT variant_array([in] VARIANT in[2], [out] VARIANT out[2], [in, out] VARIANT in_out[2]);
364
366 HRESULT mystruct_array([in] MYSTRUCT in[2]);
367
369 HRESULT myint([in] myint_t val, [in] myint_t *ptr, [in] myint_t **ptr_ptr);
370
372 HRESULT Coclass([in] Coclass1 *class1, [in] Coclass2 *class2, [in] Coclass3 *class3);
373
375 HRESULT Coclass_ptr([in] Coclass1 **in, [out] Coclass1 **out, [in, out] Coclass1 **in_out);
376 }
377
378 [
379 odl,
380 uuid(a1f8cae3-c947-3c5f-a57c-c88b9b6f3586),
382 dual
383 ]
385 {
388
391 }
392
393 [
394 odl,
395 uuid(a028db05-30f0-4b93-b17a-41c72f831d84),
396 dual,
398 ]
400 {
402 [out] IWidget **widget);
403
405 [out] unsigned long *count);
406
408
410 [out] IKindaEnumWidget **ppenum);
411 }
412
413 [
414 odl,
415 uuid(a028db06-30f0-4b93-b17a-41c72f831d84),
416 ]
418 {
421
424 }
425
426
427 [
428 dllname("comm.drv"),
429 uuid(d377f60b-8639-4261-8ee7-75c8340d2cc9),
430 ]
431 module BadModule
432 {
433 [
434 entry("Foo"),
435 ]
437 };
438
439 [
440 dllname("oleaut32.dll"),
441 uuid(d377f60c-8639-4261-8ee7-75c8340d2cc9),
442 ]
443 module BadEntry
444 {
445 [
446 entry("Foo"),
447 ]
449 };
450
451 [
452 uuid(bb171948-10ec-407a-9a57-2f85f797ff1a),
453 appobject,
454 ]
456 {
457 interface IWidget;
458 [source] interface IWidget;
459 };
460
461 [
462 odl,
463 uuid(375f8a9d-33d0-44f3-b972-61f8407899e0)
464 ]
465 interface ItestIF1 : IUnknown
466 {
467 HRESULT fn1([in] int x);
468 HRESULT fn2([out,retval] int *x);
469 }
470
471 [
472 odl,
473 uuid(094056a3-666f-4956-be12-1859668310b8)
474 ]
475 interface ItestIF2 : ItestIF1
476 {
477 HRESULT fn3([in] int y);
478 }
479
480 [
481 odl,
482 uuid(33baba09-2e68-43ab-81fe-d84b403df2e5)
483 ]
484 dispinterface ItestIF3
485 {
486 interface ItestIF2;
487 }
488
489 [
490 odl,
491 uuid(a01005c7-7491-42eb-94f3-668e37ce60a6)
492 ]
493 dispinterface ItestIF4
494 {
495 properties:
496 methods:
497 [id(0x1c)] HRESULT fn([in] int z);
498 }
499
500 [
501 odl,
502 uuid(4ab61e25-c09f-4239-8f7f-7a018ea0199f),
503 dual
504 ]
505 interface ItestIF5 : ItestIF2
506 {
507 [id(0x1234)] HRESULT fn4([in] int a);
508 [id(0x1235)] HRESULT fn5([in] int a);
509 }
510
511 [
512 odl,
513 uuid(ec236d8e-2cc7-44f2-b394-36c86ff3da74)
514 ]
515 interface ItestIF6 : IDispatch
516 {
517 [id(0x1234)] HRESULT fn4([in] int a);
518 [id(0x1235)] HRESULT fn5([in] int a);
519 }
520
521 [
522 odl,
523 uuid(f711b105-554d-4751-818c-46fcc5d7c0d5),
524 dual
525 ]
526 interface ItestIF7 : ItestIF6
527 {
528 [id(0x1236)] HRESULT fn6([in] GUID a);
529 }
530
531 [
532 odl,
533 uuid(bdfa260b-ef40-43d3-b071-cddec919f132)
534 ]
535 interface ItestIF8
536 {
537 HRESULT fn1([in] int x);
538 HRESULT fn2([out,retval] int *x);
539 }
540
541 [
542 odl,
543 uuid(51033a23-dc37-4f19-aa34-4d8a670458a0)
544
545 ]
546 interface ItestIF9 : ItestIF8
547 {
548 HRESULT fn3([in] int y);
549 }
550
551 [
552 odl,
553 uuid(2e8f14fe-0bce-42f0-8b7d-3af8393c7967)
554 ]
555 dispinterface ItestIF10
556 {
557 interface ItestIF9;
558 }
559
560 [
561 odl,
562 uuid(7d9e9371-482e-4944-9b19-511fc705236f)
563 ]
564 dispinterface ItestIF11
565 {
566 interface ItestIF7;
567 }
568
569};
@ optional
Definition: SystemMenu.c:34
coclass MediaStreamFilter helpstring("Stream Class")
struct NameRec_ * Name
Definition: cdprocs.h:460
static int state
Definition: maze.c:121
BOOL Error
Definition: chkdsk.c:66
FT_Library library
Definition: cffdrivr.c:654
OLECHAR * BSTR
Definition: compat.h:2293
struct tagSAFEARRAY SAFEARRAY
static const WCHAR version[]
Definition: asmname.c:66
GLint GLint GLint GLint GLint x
Definition: gl.h:1548
GLdouble s
Definition: gl.h:2039
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548
GLuint GLuint GLsizei count
Definition: gl.h:1545
const GLubyte * c
Definition: glext.h:8905
GLfloat f
Definition: glext.h:7540
GLenum const GLfloat * params
Definition: glext.h:5645
GLuint in
Definition: glext.h:9616
GLboolean GLenum GLenum GLvoid * values
Definition: glext.h:5666
GLuint GLfloat * val
Definition: glext.h:7180
GLfloat GLfloat p
Definition: glext.h:8902
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204
GLuint64EXT * result
Definition: glext.h:11304
GLuint id
Definition: glext.h:5910
GLdouble GLdouble z
Definition: glext.h:5874
GLfloat GLfloat GLfloat GLfloat h
Definition: glext.h:7723
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
HRESULT Clone([out] IKindaEnumWidget **ppenum)
HRESULT Count([out] unsigned long *count)
HRESULT Next([out] IWidget **widget)
HRESULT TestDual([in] ItestDual *p)
HRESULT TestSecondIface([in] ITestSecondIface *p)
HRESULT fn1([in] int x)
HRESULT fn2([out, retval] int *x)
HRESULT fn3([in] int y)
HRESULT fn([in] int z)
HRESULT fn5([in] int a)
HRESULT fn4([in] int a)
HRESULT fn5([in] int a)
HRESULT fn4([in] int a)
HRESULT fn6([in] GUID a)
HRESULT fn1([in] int x)
HRESULT fn2([out, retval] int *x)
HRESULT fn3([in] int y)
Definition: msctf.idl:550
uint32_t entry
Definition: isohybrid.c:63
#define d
Definition: ke_i.h:81
#define e
Definition: ke_i.h:82
#define a
Definition: ke_i.h:78
#define c
Definition: ke_i.h:80
#define b
Definition: ke_i.h:79
static PVOID ptr
Definition: dispmode.c:27
UCHAR ab[sizeof("Hello World!") -1]
Definition: fdi.c:106
static const BYTE us[]
Definition: encode.c:689
static const struct update_accum a3
Definition: msg.c:600
const char * var
Definition: shader.c:5666
static unsigned int number
Definition: dsound.c:1479
static refpint_t pi[]
Definition: server.c:96
int array_t[4]
Definition: tmarshal.idl:109
@ STATE_WIDGETIFIED
Definition: tmarshal.idl:97
@ STATE_UNWIDGETIFIED
Definition: tmarshal.idl:96
coclass TestTypelib::Coclass3 odl
coclass TestTypelib::Coclass3 oleautomation
Definition: tmarshal.idl:202
unsigned int UINT
Definition: ndis.h:50
UINT ui
Definition: oleauto.h:49
static FILE * out
Definition: regtests2xml.c:44
INT64 hyper
Definition: rpcndr.h:117
#define f2(x, y, z)
Definition: sha1.c:31
#define f3(x, y, z)
Definition: sha1.c:32
& rect
Definition: startmenu.cpp:1413
Definition: userinit.h:57
Definition: name.c:39
INonOleAutomation_dispids
Definition: tmarshal.idl:80
@ DISPID_NOA_ERROR
Definition: tmarshal.idl:82
@ DISPID_NOA_BSTRRET
Definition: tmarshal.idl:81
static const int DISPID_TM_NEG_RESTRICTED
Definition: tmarshal.idl:77
IWidget_dispids
Definition: tmarshal.idl:26
@ DISPID_TM_CLONECOCLASS
Definition: tmarshal.idl:35
@ DISPID_TM_FLOAT_ABI
Definition: tmarshal.idl:55
@ DISPID_TM_PROP_INT
Definition: tmarshal.idl:43
@ DISPID_TM_COCLASS_PTR
Definition: tmarshal.idl:74
@ DISPID_TM_MAP
Definition: tmarshal.idl:30
@ DISPID_TM_COMPLEX_STRUCT
Definition: tmarshal.idl:68
@ DISPID_TM_VARARG_RUN
Definition: tmarshal.idl:50
@ DISPID_TM_STRUCT_ARRAY
Definition: tmarshal.idl:71
@ DISPID_TM_PROP_WITH_LCID
Definition: tmarshal.idl:42
@ DISPID_TM_STRUCT
Definition: tmarshal.idl:64
@ DISPID_TM_IFACE_PTR
Definition: tmarshal.idl:60
@ DISPID_TM_VALUE
Definition: tmarshal.idl:36
@ DISPID_TM_TESTDUAL
Definition: tmarshal.idl:41
@ DISPID_TM_RECT
Definition: tmarshal.idl:67
@ DISPID_TM_PROP_OPT_ARG
Definition: tmarshal.idl:46
@ DISPID_TM_BASETYPES_OUT
Definition: tmarshal.idl:54
@ DISPID_TM_RESTRICTED
Definition: tmarshal.idl:48
@ DISPID_TM_SAFEARRAY
Definition: tmarshal.idl:63
@ DISPID_TM_VARARG
Definition: tmarshal.idl:38
@ DISPID_TM_IFACE_OUT
Definition: tmarshal.idl:59
@ DISPID_TM_TESTSECONDIFACE
Definition: tmarshal.idl:49
@ DISPID_TM_VARARG_REF_RUN
Definition: tmarshal.idl:51
@ DISPID_TM_IFACE_IN
Definition: tmarshal.idl:58
@ DISPID_TM_CLONEINTERFACE
Definition: tmarshal.idl:40
@ DISPID_TM_VARARRAYPTR
Definition: tmarshal.idl:37
@ DISPID_TM_ERROR
Definition: tmarshal.idl:39
@ DISPID_TM_INT_PTR_PTR
Definition: tmarshal.idl:57
@ DISPID_TM_STRUCT_PTR_PTR
Definition: tmarshal.idl:65
@ DISPID_TM_CLONE
Definition: tmarshal.idl:33
@ DISPID_TM_VARIANT
Definition: tmarshal.idl:62
@ DISPID_TM_TYPEDEF
Definition: tmarshal.idl:72
@ DISPID_TM_DOSOMETHING
Definition: tmarshal.idl:28
@ DISPID_TM_COCLASS
Definition: tmarshal.idl:73
@ DISPID_TM_ARRAY
Definition: tmarshal.idl:69
@ DISPID_TM_VARIANT_ARRAY
Definition: tmarshal.idl:70
@ DISPID_TM_PROP_UINT
Definition: tmarshal.idl:44
@ DISPID_TM_NAME
Definition: tmarshal.idl:27
@ DISPID_TM_STATE
Definition: tmarshal.idl:29
@ DISPID_TM_INT_PTR
Definition: tmarshal.idl:56
@ DISPID_TM_BSTR
Definition: tmarshal.idl:61
@ DISPID_TM_CLONEDISPATCH
Definition: tmarshal.idl:34
@ DISPID_TM_BYREF_UINT
Definition: tmarshal.idl:45
@ DISPID_TM_BASETYPES_IN
Definition: tmarshal.idl:53
@ DISPID_TM_GETOLECOLOR
Definition: tmarshal.idl:32
@ DISPID_TM_PROP_REQ_ARG
Definition: tmarshal.idl:47
@ DISPID_TM_THIN_STRUCT
Definition: tmarshal.idl:66
@ DISPID_TM_SETOLECOLOR
Definition: tmarshal.idl:31
#define DISPID_TM_CLONE
#define DISPID_TM_BYREF_UINT
#define DISPID_TM_COCLASS
#define DISPID_TM_PROP_INT
#define DISPID_TM_VARARG_REF_RUN
#define DISPID_NOA_BSTRRET
#define DISPID_TM_VARARRAYPTR
#define DISPID_TM_CLONEDISPATCH
#define DISPID_NOA_ERROR
#define DISPID_TM_ARRAY
#define DISPID_TM_STATE
#define DISPID_TM_DOSOMETHING
#define DISPID_TM_ERROR
#define DISPID_TM_PROP_REQ_ARG
#define DISPID_TM_SETOLECOLOR
#define DISPID_TM_RESTRICTED
#define DISPID_TM_TESTSECONDIFACE
#define DISPID_TM_PROP_UINT
#define DISPID_TM_NEG_RESTRICTED
#define DISPID_TM_VARARG
#define DISPID_TM_TESTDUAL
#define DISPID_TM_PROP_OPT_ARG
#define DISPID_TM_MAP
#define DISPID_TM_GETOLECOLOR
#define DISPID_TM_CLONECOCLASS
#define DISPID_TM_CLONEINTERFACE
#define DISPID_TM_NAME
#define DISPID_TM_VARARG_RUN
#define DISPID_TM_VARIANT
#define DISPID_TM_PROP_WITH_LCID
int32_t INT
Definition: typedefs.h:58
uint64_t ULONGLONG
Definition: typedefs.h:67
Definition: pdh_main.c:94
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT _Inout_opt_ PUNICODE_STRING Value
Definition: wdfregistry.h:413