source: trunk/ab5.0/ablib/src/OAIdl.ab @ 560

Last change on this file since 560 was 497, checked in by イグトランス (egtra), 15 years ago

インクルードガードとその他不要な前処理定義などの削除

File size: 38.6 KB
Line 
1' OAIdl.sbp
2' 本来はOAIdl.idlから生成するのが正当ですが、
3' これは手動で移植したものです。
4
5#require <objidl.sbp>
6
7/* interface IOleAutomationTypes */
8/* [auto_handle][unique][version] */
9
10TypeDef CURRENCY = CY
11
12Type SAFEARRAYBOUND
13    cElements As DWord
14    lLbound As Long
15End Type
16
17Typedef LPSAFEARRAYBOUND = *SAFEARRAYBOUND
18
19Typedef wireVARIANT = VoidPtr '/* [unique] */ *_wireVARIANT
20
21Typedef wireBRECORD = VoidPtr '/* [unique] */ *_wireBRECORD
22
23' Type SAFEARR_BSTR;
24' Type SAFEARR_UNKNOWN;
25' Type SAFEARR_DISPATCH;
26' Type SAFEARR_VARIANT;
27' Type SAFEARR_BRECORD;
28' Type SAFEARR_HAVEIID;
29
30/* [v1_enum] */
31/*
32Const Enum SF_TYPE
33    SF_ERROR = VT_ERROR
34    SF_I1 = VT_I1
35    SF_I2 = VT_I2
36    SF_I4 = VT_I4
37    SF_I8 = VT_I8
38    SF_BSTR = VT_BSTR
39    SF_UNKNOWN = VT_UNKNOWN
40    SF_DISPATCH = VT_DISPATCH
41    SF_VARIANT = VT_VARIANT
42    SF_RECORD = VT_RECORD
43    SF_HAVEIID = VT_UNKNOWN Or VT_RESERVED
44End Enum
45*/
46' Type SAFEARRAYUNION
47
48' Type /* [unique] */ wireSAFEARRAY
49
50TypeDef wirePSAFEARRAY = VoidPtr '/* [unique] */ *wireSAFEARRAY
51
52Type SAFEARRAY
53    cDims As Word
54    fFeatures As Word
55    cbElements As DWord
56    cLocks As DWord
57    pvData As VoidPtr
58    rgsabound[ELM(1)] As SAFEARRAYBOUND
59End Type
60
61TypeDef LPSAFEARRAY = /* [wire_marshal] */ *SAFEARRAY
62
63Const FADF_AUTO = &h1
64Const FADF_STATIC = &h2
65Const FADF_EMBEDDED = &h4
66Const FADF_FIXEDSIZE = &h10
67Const FADF_RECORD = &h20
68Const FADF_HAVEIID = &h40
69Const FADF_HAVEVARTYPE = &h80
70Const FADF_BSTR = &h100
71Const FADF_UNKNOWN = &h200
72Const FADF_DISPATCH = &h400
73Const FADF_VARIANT = &h800
74Const FADF_RESERVED = &hf008
75
76Type /*Class*/ VARIANT
77Public
78    vt As VARTYPE
79    wReserved1 As Word
80    wReserved2 As Word
81    wReserved3 As Word
82    val As QWord
83/*
84    Function llVal() As Int64
85        Return val As Int64
86    End Function
87
88    Sub llVal(v As Int64)
89        val = v As QWord
90    End Sub
91
92    Function lVal() As Long
93        Return val As DWord As Long
94    End Function
95
96    Sub lVal(v As Long)
97        val = v As DWord
98    End Sub
99
100    Function bVal() As Byte
101        Return val As Byte
102    End Function
103
104    Sub bVal(v As Byte)
105        val = v
106    End Sub
107
108    Function iVal() As Integer
109        Return val As Word As Integer
110    End Function
111
112    Sub iVal(v As Integer)
113        val = v As Word
114    End Sub
115
116    Function fltVal() As Single
117        Return GetSingle(VarPtr(val) As *Single)
118    End Function
119
120    Sub fltVal(v As Single)
121        SetSingle(VarPtr(val) As *Single, v)
122    End Sub
123
124    Function dblVal() As Double
125        Return GetDouble(VarPtr(val) As *Double)
126    End Function
127
128    Sub dblVal(v As Double)
129        SetDouble(VarPtr(val) As *Double, v)
130    End Sub
131
132    ' SizeOf (VARIANT_BOOL) = 2
133    Function boolVal() As VARIANT_BOOL
134        Return val As Word As VARIANT_BOOL
135    End Function
136
137    Sub boolVal(v As VARIANT_BOOL)
138        val = v As Word
139    End Sub
140
141    ' SizeOf (SCODE) = 4
142    Function scode() As SCODE
143        Return val As DWord As SCODE
144    End Function
145
146    Sub scode(v As SCODE)
147        val = v As DWord
148    End Sub
149
150    ' SizeOf (CY) = 8
151    Function cyVal() As CY
152        SetQWord(VarPtr(cyVal), val)
153    End Function
154
155    Sub cyVal(v As CY)
156        SetQWord(VarPtr(val), GetQWord(VarPtr(v)))
157    End Sub
158
159    ' SizeOf (DATE) = 8
160    Function date() As DATE
161        SetQWord(VarPtr(date), val)
162    End Function
163
164    Sub date(v As DATE)
165        SetQWord(VarPtr(val), GetQWord(VarPtr(v)))
166    End Sub
167
168    Function bstrVal() As BSTR
169        Return val As ULONG_PTR As BSTR
170    End Function
171
172    Sub bstrVal(v As BSTR)
173        val = v As ULONG_PTR
174    End Sub
175
176    Function punkVal() As *IUnknown
177        Return val As ULONG_PTR As *IUnknown
178    End Function
179
180    Sub punkVal(v As *IUnknown)
181        val = v As ULONG_PTR
182    End Sub
183
184    Function pdispVal() As *IDispatch
185        Return val As ULONG_PTR As *IDispatch
186    End Function
187
188    Sub pdispVal(v As *IDispatch)
189        val = v As ULONG_PTR
190    End Sub
191
192    Function parray() As *SAFEARRAY
193        Return val As ULONG_PTR As *SAFEARRAY
194    End Function
195
196    Sub parray(v As *SAFEARRAY)
197        val = v As ULONG_PTR
198    End Sub
199
200    Function pbVal() As *Byte
201        Return val As ULONG_PTR As *Byte
202    End Function
203
204    Sub pbVal(v As *Byte)
205        val = v As ULONG_PTR
206    End Sub
207
208    Function piVal() As *Integer
209        Return val As ULONG_PTR As *Integer
210    End Function
211
212    Sub piVal(v As *Integer)
213        val = v As ULONG_PTR
214    End Sub
215
216    Function plVal() As *Long
217        Return val As ULONG_PTR As *Long
218    End Function
219
220    Sub plVal(v As *Long)
221        val = v As ULONG_PTR
222    End Sub
223
224    Function pllVal() As *Int64
225        Return val As ULONG_PTR As *Int64
226    End Function
227
228    Sub pllVal(v As *Int64)
229        val = v As ULONG_PTR
230    End Sub
231
232    Function pfltVal() As *Single
233        Return val As ULONG_PTR As *Single
234    End Function
235
236    Sub pfltVal(v As *Single)
237        val = v As ULONG_PTR
238    End Sub
239
240    Function pdblVal() As *Double
241        Return val As ULONG_PTR As *Double
242    End Function
243
244    Sub pdblVal(v As *Double)
245        val = v As ULONG_PTR
246    End Sub
247
248    Function pboolVal() As *VARIANT_BOOL
249        Return val As ULONG_PTR As *VARIANT_BOOL
250    End Function
251
252    Sub pboolVal(v As *VARIANT_BOOL)
253        val = v As ULONG_PTR
254    End Sub
255
256    Function pscode() As *SCODE
257        Return val As ULONG_PTR As *SCODE
258    End Function
259
260    Sub pscode(v As *SCODE)
261        val = v As ULONG_PTR
262    End Sub
263
264    Function pcyVal() As *CY
265        Return val As ULONG_PTR As *CY
266    End Function
267
268    Sub pcyVal(v As *CY)
269        val = v As ULONG_PTR
270    End Sub
271
272    Function pdate() As *DATE
273        Return val As ULONG_PTR As *DATE
274    End Function
275
276    Sub pdate(v As *DATE)
277        val = v As ULONG_PTR
278    End Sub
279
280    Function pbstrVal() As *BSTR
281        Return val As ULONG_PTR As *BSTR
282    End Function
283
284    Sub pbstrVal(v As *BSTR)
285        val = v As ULONG_PTR
286    End Sub
287
288    Function ppunkVal() As **IUnknown
289        Return val As ULONG_PTR As **IUnknown
290    End Function
291
292    Sub ppunkVal(v As **IUnknown)
293        val = v As ULONG_PTR
294    End Sub
295
296    Function ppdispVal() As **IDispatch
297        Return val As ULONG_PTR As **IDispatch
298    End Function
299
300    Sub ppdispVal(v As **IDispatch)
301        val = v As ULONG_PTR
302    End Sub
303
304    Function pparray() As **SAFEARRAY
305        Return val As ULONG_PTR As **SAFEARRAY
306    End Function
307
308    Sub pparray(v As **SAFEARRAY)
309        val = v As ULONG_PTR
310    End Sub
311
312    Function pvarVal() As *VARIANT
313        Return val As ULONG_PTR As *VARIANT
314    End Function
315
316    Sub pvarVal(v As *VARIANT)
317        val = v As ULONG_PTR
318    End Sub
319
320'   Function byref() As VoidPtr
321'       Return val As ULONG_PTR As VoidPtr
322'   End Function
323
324'   Sub byref(v As VoidPtr)
325'       val = v As ULONG_PTR
326'   End Sub
327
328    Function cVal() As Char
329        Return val As Byte As Char
330    End Function
331
332    Sub cVal(v As Char)
333        val = v As Byte
334    End Sub
335
336    Function uiVal() As Word
337        Return val As Word
338    End Function
339
340    Sub uiVal(v As Word)
341        val = v
342    End Sub
343
344    Function ulVal() As DWord
345        Return val As DWord
346    End Function
347
348    Sub ulVal(v As DWord)
349        val = v
350    End Sub
351
352    Function ullVal() As QWord
353        Return val
354    End Function
355
356    Sub ullVal(v As QWord)
357        val = v
358    End Sub
359
360    Function intVal() As Long
361        Return val As DWord As Long
362    End Function
363
364    Sub intVal(v As Long)
365        val = v As DWord
366    End Sub
367
368    Function uintVal() As DWord
369        Return val As DWord
370    End Function
371
372    Sub uintVal(v As DWord)
373        val = v
374    End Sub
375
376    Function pdecVal() As *DECIMAL
377        Return val As ULONG_PTR As *DECIMAL
378    End Function
379
380    Sub pdecVal(v As *DECIMAL)
381        val = v As ULONG_PTR
382    End Sub
383
384    Function pcVal() As *Char
385        Return val As ULONG_PTR As *Char
386    End Function
387
388    Sub pcVal(v As *Char)
389        val = v As ULONG_PTR
390    End Sub
391
392    Function puiVal() As *Word
393        Return val As ULONG_PTR As *Word
394    End Function
395
396    Sub puiVal(v As *Word)
397        val = v As ULONG_PTR
398    End Sub
399
400    Function pulVal() As *DWord
401        Return val As ULONG_PTR As *DWord
402    End Function
403
404    Sub pulVal(v As *DWord)
405        val = v As ULONG_PTR
406    End Sub
407
408    Function pullVal() As *QWord
409        Return val As ULONG_PTR As *QWord
410    End Function
411
412    Sub pullVal(v As *QWord)
413        val = v As ULONG_PTR
414    End Sub
415
416    Function pintVal() As *Long
417        Return val As ULONG_PTR As *Long
418    End Function
419
420    Sub pintVal(v As *Long)
421        val = v As ULONG_PTR
422    End Sub
423
424    Function puintVal() As *DWord
425        Return val As ULONG_PTR As *DWord
426    End Function
427
428    Sub puintVal(v As *DWord)
429        val = v As ULONG_PTR
430    End Sub
431
432    Function pvRecord() As VoidPtr
433        Return val As ULONG_PTR As VoidPtr
434    End Function
435
436    Sub pvRecord(v As VoidPtr)
437        val = v As ULONG_PTR
438    End Sub
439
440    Function pRecInfo() As *IRecordInfo
441        Return (val As ULONG_PTR + SizeOf (VoidPtr)) As *IRecordInfo
442    End Function
443
444    Sub pRecInfo(v As *IRecordInfo)
445        Set_LONG_PTR((VarPtr(val) As ULONG_PTR + SizeOf (VoidPtr)) As VoidPtr, v As LONG_PTR)
446    End Sub
447
448    Function decVal() As DECIMAL
449        Dim p As *DECIMAL
450        p = VarPtr(This) As *DECIMAL
451        Return p[0]
452    End Function
453
454    Sub decVal(v As DECIMAL)
455        Dim p As *DECIMAL
456        p = VarPtr(This) As *DECIMAL
457        p[0] = v
458    End Sub
459*/
460End Type 'Class
461
462TypeDef LPVARIANT = *VARIANT
463TypeDef VARIANTARG = VARIANT
464TypeDef LPVARIANTARG =* VARIANT
465
466' Type _wireBRECORD
467' Type _wireVARIANT
468
469TypeDef DISPID = Long
470
471TypeDef MEMBERID = DISPID
472
473TypeDef HREFTYPE = DWord
474
475/* [v1_enum] */
476Const Enum TYPEKIND
477    TKIND_ENUM ' = 0
478    TKIND_RECORD ' = TKIND_ENUM + 1
479    TKIND_MODULE ' = TKIND_RECORD + 1
480    TKIND_INTERFACE ' = TKIND_MODULE + 1
481    TKIND_DISPATCH ' = TKIND_INTERFACE + 1
482    TKIND_COCLASS ' = TKIND_DISPATCH + 1
483    TKIND_ALIAS ' = TKIND_COCLASS + 1
484    TKIND_UNION ' = TKIND_ALIAS + 1
485    TKIND_MAX ' = TKIND_UNION + 1
486End Enum
487
488Type /*Class*/ TYPEDESC
489' Private
490    p As VoidPtr
491'   /* [switch_is][switch_type] */ Union
492'       /* [case()] */ lptdesc As *TYPEDESC
493'       /* [case()] */ lpadesc As *ARRAYDESC
494'       /* [case()] */ hreftype As HREFTYPE
495'       /* [default] */  /* Empty union arm */
496'   End Union
497'Public
498    vt As VARTYPE
499/*
500    Function lptdesc() As *TYPEDESC
501        Return p
502    End Function
503
504    Sub lptdesc(ptd As *TYPEDESC)
505        p = ptd
506    End Sub
507
508    Function lpadesc() As *ARRAYDESC
509        Return p
510    End Function
511
512    Sub lpadesc(pad As *ARRAYDESC)
513        p = pad
514    End Sub
515
516    Function hreftype() As *HREFTYPE
517        Return p
518    End Function
519
520    Sub hreftype(prd As *HREFTYPE)
521        p = prd
522    End Sub
523*/
524End Type 'Class
525
526Type ARRAYDESC
527    tdescElem As TYPEDESC
528    cDims As Word
529    /* [size_is] */ rgbounds[ELM(1)] As SAFEARRAYBOUND
530End Type
531
532Type PARAMDESCEX
533    cBytes As DWord
534    varDefaultValue As VARIANTARG
535End Type
536
537Typedef LPPARAMDESCEX = *PARAMDESCEX
538
539Type PARAMDESC
540    pparamdescex As LPPARAMDESCEX
541    USHORT wParamFlags As Word
542End Type
543
544TypeDef LPPARAMDESC = *PARAMDESC
545
546Const PARAMFLAG_NONE = 0
547Const PARAMFLAG_FIN = &h1
548Const PARAMFLAG_FOUT = &h2
549Const PARAMFLAG_FLCID = &h4
550Const PARAMFLAG_FRETVAL = &h8
551Const PARAMFLAG_FOPT = &h10
552Const PARAMFLAG_FHASDEFAULT = &h20
553Const PARAMFLAG_FHASCUSTDATA = &h40
554
555Type IDLDESC
556    dwReserved As ULONG_PTR
557    wIDLFlags As Word
558End Type
559
560TypeDef LPIDLDESC = *IDLDESC
561
562Const IDLFLAG_NONE = PARAMFLAG_NONE
563Const IDLFLAG_FIN = PARAMFLAG_FIN
564Const IDLFLAG_FOUT = PARAMFLAG_FOUT
565Const IDLFLAG_FLCID = PARAMFLAG_FLCID
566Const IDLFLAG_FRETVAL = PARAMFLAG_FRETVAL
567
568Type /*Class*/ ELEMDESC
569'Public
570    tdesc As TYPEDESC
571    idldesc As IDLDESC
572/*
573    Function paramdesc() As PARAMDESC
574        Dim p As *PARAMDESC
575        p = VarPtr(idldesc) As *PARAMDESC
576        Return p[0]
577    End Function
578
579    Sub paramdesc(pd As PARAMDESC)
580        Dim p As *PARAMDESC
581        p = VarPtr(idldesc) As *PARAMDESC
582        p[0] = pd
583    End Sub
584*/
585End Type 'Class
586
587Type TYPEATTR
588    guid As GUID
589    lcid As LCID
590    dwReserved As DWord
591    memidConstructor As MEMBERID
592    memidDestructor As MEMBERID
593    lpstrSchema As LPOLESTR
594    cbSizeInstance As DWord
595    typekind As TYPEKIND
596    cFuncs As Word
597    cVars As Word
598    cImplTypes As Word
599    cbSizeVft As Word
600    cbAlignment As Word
601    wTypeFlags As Word
602    wMajorVerNum As Word
603    wMinorVerNum As Word
604    tdescAlias As TYPEDESC
605    idldescType As IDLDESC
606End Type
607
608TypeDef LPTYPEATTR = *TYPEATTR
609
610Type DISPPARAMS
611    /* [size_is] */ rgvarg As *VARIANTARG
612    /* [size_is] */ rgdispidNamedArgs As *DISPID
613    cArgs As DWord
614    cNamedArgs As DWord
615End Type
616
617Type EXCEPINFO
618    wCode As Word
619    wReserved As Word
620    bstrSource As BSTR
621    bstrDescription As BSTR
622    bstrHelpFile As BSTR
623    dwHelpContext As DWord
624    pvReserved As VoidPtr
625    pfnDeferredFillIn As *Function(p As *EXCEPINFO) As HRESULT
626    scode As SCODE
627End Type
628
629TypeDef LPEXCEPINFO = *EXCEPINFO
630
631/* [v1_enum] */
632Const Enum CALLCONV
633    CC_FASTCALL = 0
634    CC_CDECL    = 1
635    CC_MSCPASCAL    = CC_CDECL + 1
636    CC_PASCAL   = CC_MSCPASCAL
637    CC_MACPASCAL    = CC_PASCAL + 1
638    CC_STDCALL  = CC_MACPASCAL + 1
639    CC_FPFASTCALL   = CC_STDCALL + 1
640    CC_SYSCALL  = CC_FPFASTCALL + 1
641    CC_MPWCDECL = CC_SYSCALL + 1
642    CC_MPWPASCAL    = CC_MPWCDECL + 1
643    CC_MAX  = CC_MPWPASCAL + 1
644End Enum
645
646/* [v1_enum] */
647Const Enum FUNCKIND
648    FUNC_VIRTUAL = 0
649    FUNC_PUREVIRTUAL = FUNC_VIRTUAL + 1
650    FUNC_NONVIRTUAL = FUNC_PUREVIRTUAL + 1
651    FUNC_STATIC = FUNC_NONVIRTUAL + 1
652    FUNC_DISPATCH = FUNC_STATIC + 1
653End Enum
654
655/* [v1_enum] */
656Const Enum INVOKEKIND
657    INVOKE_FUNC = 1
658    INVOKE_PROPERTYGET = 2
659    INVOKE_PROPERTYPUT = 4
660    INVOKE_PROPERTYPUTREF = 8
661End Enum
662
663Type FUNCDESC
664    memid As MEMBERID
665    /* [size_is] */ lprgscode As *SCODE
666    /* [size_is] */ lprgelemdescParam As *ELEMDESC
667    funckind As FUNCKIND
668    invkind As INVOKEKIND
669    callconv As CALLCONV
670    cParams As Integer
671    cParamsOpt As Integer
672    oVft As Integer
673    cScodes As Integer
674    elemdescFunc As ELEMDESC
675    wFuncFlags As Word
676End Type
677
678TypeDef LPFUNCDESC = *FUNCDESC
679
680/* [v1_enum] */
681Const Enum VARKIND
682    VAR_PERINSTANCE = 0
683    VAR_STATIC = 1
684    VAR_CONST = 2
685    VAR_DISPATCH = 3
686End Enum
687
688Const IMPLTYPEFLAG_FDEFAULT = &h1
689Const IMPLTYPEFLAG_FSOURCE = &h2
690Const IMPLTYPEFLAG_FRESTRICTED = &h4
691Const IMPLTYPEFLAG_FDEFAULTVTABLE = &h8
692
693Type /*Class*/ VARDESC
694'Public
695    memid As MEMBERID
696    lpstrSchema As LPOLESTR
697'   /* [switch_is][switch_type] */ Union
698'       /* [case()] */ oInst As DWord
699        /* [case()] */ lpvarValue As *VARIANT
700'   End Union
701    elemdescVar As ELEMDESC
702    wVarFlags As Word
703    varkind As VARKIND
704/*
705    Function oInst() As DWord
706        Return lpvarValue As ULONG_PTR As DWord
707    End Function
708
709    Sub oInst(o As DWord)
710        lpvarValue = o As ULONG_PTR As *VARIANT
711    End Sub
712*/
713End Type 'Class
714
715TypeDef LPVARDESC = VARDESC
716
717Const Enum TYPEFLAGS
718    TYPEFLAG_FAPPOBJECT = &h1
719    TYPEFLAG_FCANCREATE = &h2
720    TYPEFLAG_FLICENSED = &h4
721    TYPEFLAG_FPREDECLID = &h8
722    TYPEFLAG_FHIDDEN = &h10
723    TYPEFLAG_FCONTROL = &h20
724    TYPEFLAG_FDUAL = &h40
725    TYPEFLAG_FNONEXTENSIBLE = &h80
726    TYPEFLAG_FOLEAUTOMATION = &h100
727    TYPEFLAG_FRESTRICTED = &h200
728    TYPEFLAG_FAGGREGATABLE = &h400
729    TYPEFLAG_FREPLACEABLE = &h800
730    TYPEFLAG_FDISPATCHABLE = &h1000
731    TYPEFLAG_FREVERSEBIND = &h2000
732    TYPEFLAG_FPROXY = &h4000
733End Enum
734
735Enum FUNCFLAGS
736    FUNCFLAG_FRESTRICTED = &h1
737    FUNCFLAG_FSOURCE = &h2
738    FUNCFLAG_FBINDABLE = &h4
739    FUNCFLAG_FREQUESTEDIT = &h8
740    FUNCFLAG_FDISPLAYBIND = &h10
741    FUNCFLAG_FDEFAULTBIND = &h20
742    FUNCFLAG_FHIDDEN = &h40
743    FUNCFLAG_FUSESGETLASTERROR = &h80
744    FUNCFLAG_FDEFAULTCOLLELEM = &h100
745    FUNCFLAG_FUIDEFAULT = &h200
746    FUNCFLAG_FNONBROWSABLE = &h400
747    FUNCFLAG_FREPLACEABLE = &h800
748    FUNCFLAG_FIMMEDIATEBIND = &h1000
749End Enum
750
751Const Enum VARFLAGS
752    VARFLAG_FREADONLY = &h1
753    VARFLAG_FSOURCE = &h2
754    VARFLAG_FBINDABLE = &h4
755    VARFLAG_FREQUESTEDIT = &h8
756    VARFLAG_FDISPLAYBIND = &h10
757    VARFLAG_FDEFAULTBIND = &h20
758    VARFLAG_FHIDDEN = &h40
759    VARFLAG_FRESTRICTED = &h80
760    VARFLAG_FDEFAULTCOLLELEM = &h100
761    VARFLAG_FUIDEFAULT = &h200
762    VARFLAG_FNONBROWSABLE = &h400
763    VARFLAG_FREPLACEABLE = &h800
764    VARFLAG_FIMMEDIATEBIND = &h1000
765End Enum
766
767Type /* [wire_marshal] */ CLEANLOCALSTORAGE
768    pInterface As IUnknown
769    pStorage As VoidPtr
770    flags As DWord
771End Type
772
773Type CUSTDATAITEM
774    guid As GUID
775    varValue As VARIANTARG
776End Type
777
778TypeDef LPCUSTDATAITEM = *CUSTDATAITEM
779
780Type CUSTDATA
781    cCustData As DWord
782    /* [size_is] */ prgCustData As *CUSTDATAITEM
783End Type
784
785TypeDef LPCUSTDATA = *CUSTDATA
786
787/* interface ICreateTypeInfo */
788/* [local][unique][uuid][object] */
789
790Dim IID_ICreateTypeInfo = [&h00020405, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID
791
792Interface ICreateTypeInfo
793    Inherits IUnknown
794
795    Function SetGuid(
796        /* [in] */ ByRef guid As GUID) As HRESULT
797    Function SetTypeFlags(
798        /* [in] */ uTypeFlags As DWord) As HRESULT
799    Function SetDocString(
800        /* [in] */ pStrDoc As LPOLESTR) As HRESULT
801    Function SetHelpContext(
802        /* [in] */ dwHelpContext As DWord) As HRESULT
803    Function SetVersion(
804        /* [in] */ wMajorVerNum As Word,
805        /* [in] */ wMinorVerNum As Word) As HRESULT
806    Function AddRefTypeInfo(
807        /* [in] */ TInfo As ITypeInfo,
808        /* [in] */ByRef hRefType As HREFTYPE) As HRESULT
809    Function AddFuncDesc(
810        /* [in] */ index As DWord,
811        /* [in] */ ByRef FuncDesc As FUNCDESC) As HRESULT
812    Function AddImplType(
813        /* [in] */ index As DWord,
814        /* [in] */ hRefType As HREFTYPE) As HRESULT
815    Function SetImplTypeFlags(
816        /* [in] */ index As DWord,
817        /* [in] */ implTypeFlags As Long) As HRESULT
818    Function SetAlignment(
819        /* [in] */ cbAlignment As Long) As HRESULT
820    Function SetSchema(
821        /* [in] */ pStrSchema As LPOLESTR) As HRESULT
822    Function AddVarDesc(
823        /* [in] */ index As DWord,
824        /* [in] */ ByRef VarDesc As VARDESC) As HRESULT
825    Function SetFuncAndParamNames(
826        /* [in] */ index As DWord,
827        /* [in][size_is][in] */ rgszNames As *LPOLESTR,
828        /* [in] */ cNames As DWord) As HRESULT
829    Function SetVarName(
830        /* [in] */ index As DWord,
831        /* [in] */ szName As LPOLESTR) As HRESULT
832    Function SetTypeDescAlias(
833        /* [in] */ ByRef TDescAlias As TYPEDESC) As HRESULT
834    Function DefineFuncAsDllEntry(
835        /* [in] */ index As DWord,
836        /* [in] */ szDllName As LPOLESTR,
837        /* [in] */ zProcName As LPOLESTR) As HRESULT
838    Function SetFuncDocString(
839        /* [in] */ index As DWord,
840        /* [in] */ szDocString As LPOLESTR) As HRESULT
841    Function SetVarDocString(
842        /* [in] */ index As DWord,
843        /* [in] */ szDocString As LPOLESTR) As HRESULT
844    Function SetFuncHelpContext(
845        /* [in] */ index As DWord,
846        /* [in] */ dwHelpContext As DWord) As HRESULT
847    Function SetVarHelpContext(
848        /* [in] */ index As DWord,
849        /* [in] */ dwHelpContext As DWord) As HRESULT
850    Function SetMops(
851        /* [in] */ index As DWord,
852        /* [in] */ bstrMops As BSTR) As HRESULT
853    Function SetTypeIdldesc(
854        /* [in] */ ByRef IdlDesc As IDLDESC) As HRESULT
855    Function LayOut() As HRESULT
856End Interface
857
858/* interface ICreateTypeInfo2 */
859/* [local][unique][uuid][object] */
860
861Dim IID_ICreateTypeInfo2 = [&h0002040E, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID
862
863Interface ICreateTypeInfo2
864    Inherits ICreateTypeInfo
865
866    Function DeleteFuncDesc(
867        /* [in] */ index As DWord) As HRESULT
868    Function DeleteFuncDescByMemId(
869        /* [in] */ memid As *MEMBERID,
870        /* [in] */ invKind As *INVOKEKIND) As HRESULT
871    Function DeleteVarDesc(
872        /* [in] */ index As DWord) As HRESULT
873    Function DeleteVarDescByMemId(
874        /* [in] */ memid As *MEMBERID) As HRESULT
875    Function DeleteImplType(
876        /* [in] */ index As DWord) As HRESULT
877    Function SetCustData(
878        /* [in] */ ByRef guid As GUID,
879        /* [in] */ ByRef VarVal As VARIANT) As HRESULT
880    Function SetFuncCustData(
881        /* [in] */ index As DWord,
882        /* [in] */ ByRef guid As GUID,
883        /* [in] */ ByRef VarVal As VARIANT) As HRESULT
884    Function SetParamCustData(
885        /* [in] */ indexFunc As DWord,
886        /* [in] */ indexParam As DWord,
887        /* [in] */ ByRef guid As GUID,
888        /* [in] */ ByRef VarVal As VARIANT) As HRESULT
889    Function SetVarCustData(
890        /* [in] */ index As DWord,
891        /* [in] */ ByRef guid As GUID,
892        /* [in] */ ByRef VarVal As VARIANT) As HRESULT
893    Function SetImplTypeCustData(
894        /* [in] */ index As DWord,
895        /* [in] */ ByRef guid As GUID,
896        /* [in] */ ByRef VarVal As VARIANT) As HRESULT
897    Function SetHelpStringContext(
898        /* [in] */ dwHelpStringContext As DWord) As HRESULT
899    Function SetFuncHelpStringContext(
900        /* [in] */ index As DWord,
901        /* [in] */ dwHelpStringContext As DWord) As HRESULT
902    Function SetVarHelpStringContext(
903        /* [in] */ index As DWord,
904        /* [in] */ dwHelpStringContext As DWord) As HRESULT
905    Function Invalidate() As HRESULT
906    Function SetName(
907        /* [in] */ szName As LPOLESTR) As HRESULT
908End Interface
909
910/* interface ICreateTypeLib */
911/* [local][unique][uuid][object] */
912
913Dim IID_ICreateTypeLib = [&h00020406, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID
914Interface ICreateTypeLib
915    Inherits IUnknown
916
917    Function CreateTypeInfo(
918        /* [in] */ szName As LPOLESTR,
919        /* [in] */ tkind As *TYPEKIND,
920        /* [out] */ ByRef CTInfo As ICreateTypeInfo) As HRESULT
921    Function SetName(
922        /* [in] */ szName As LPOLESTR) As HRESULT
923    Function SetVersion(
924        /* [in] */ wMajorVerNum As Word,
925        /* [in] */ wMinorVerNum As Word) As HRESULT
926    Function SetGuid(
927        /* [in] */ ByRef guid As GUID) As HRESULT
928    Function SetDocString(
929        /* [in] */ szDoc As LPOLESTR) As HRESULT
930    Function SetHelpFileName(
931        /* [in] */ szHelpFileName As LPOLESTR) As HRESULT
932    Function SetHelpContext(
933        /* [in] */ dwHelpContext As DWord) As HRESULT
934    Function SetLcid(
935        /* [in] */ lcid As LCID) As HRESULT
936    Function SetLibFlags(
937        /* [in] */ uLibFlags As DWord) As HRESULT
938    Function SaveAllChanges() As HRESULT
939End Interface
940
941/* interface ICreateTypeLib2 */
942/* [local][unique][uuid][object] */
943
944Dim IID_ICreateTypeLib2 = [&h0002040F, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID
945
946Interface ICreateTypeLib2
947    Inherits ICreateTypeLib
948
949    Function DeleteTypeInfo(
950        /* [in] */ szName As LPOLESTR) As HRESULT
951    Function SetCustData(
952        /* [in] */ ByRef guid As GUID,
953        /* [in] */ ByRef VarVal As VARIANT) As HRESULT
954    Function SetHelpStringContext(
955        /* [in] */ dwHelpStringContext As DWord) As HRESULT
956    Function SetHelpStringDll(
957        /* [in] */ szFileName As LPOLESTR) As HRESULT
958End Interface
959
960/* interface IDispatch */
961/* [unique][uuid][object] */
962
963Const DISPID_UNKNOWN = -1
964Const DISPID_VALUE = 0
965Const DISPID_PROPERTYPUT = -3
966Const DISPID_NEWENUM = -4
967Const DISPID_EVALUATE = -5
968Const DISPID_CONSTRUCTOR = -6
969Const DISPID_DESTRUCTOR = -7
970Const DISPID_COLLECT = -8
971
972/* The range -500 through -999 is reserved for Controls */
973/* The range 0x80010000 through 0x8001FFFF is reserved for Controls */
974/* The range -5000 through -5499 is reserved for ActiveX Accessability */
975/* The range -2000 through -2499 is reserved for VB5 */
976/* The range -3900 through -3999 is reserved for Forms */
977/* The range -5500 through -5550 is reserved for Forms */
978/* The remainder of the negative DISPIDs are reserved for future use */
979
980Dim IID_IDispatch = [&h00020400, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID
981
982Interface IDispatch
983    Inherits IUnknown
984
985    Function GetTypeInfoCount(
986        /* [out] */ ByRef pctinfo As DWord) As HRESULT
987    Function GetTypeInfo(
988        /* [in] */ iTInfo As DWord,
989        /* [in] */ lcid As LCID,
990        /* [out] */ ByRef TInfo As ITypeInfo) As HRESULT
991    Function GetIDsOfNames(
992        /* [in] */ ByRef riid As IID,
993        /* [size_is][in] */ rgszNames As *LPOLESTR,
994        /* [in] */ cNames As DWord,
995        /* [in] */ lcid As LCID,
996        /* [size_is][out] */ rgDispId As *DISPID) As HRESULT
997    Function /* [local] */ Invoke(
998        /* [in] */ dispIdMember As DISPID,
999        /* [in] */ ByRef riid As IID,
1000        /* [in] */ lcid As LCID,
1001        /* [in] */ wFlags As Word,
1002        /* [out][in] */ ByRef pDispParams As DISPPARAMS,
1003        /* [out] */ ByRef pVarResult As VARIANT,
1004        /* [out] */ ByRef pExcepInfo As EXCEPINFO,
1005        /* [out] */ ByRef puArgErr As DWord) As HRESULT
1006End Interface
1007
1008/* interface IEnumVARIANT */
1009/* [unique][uuid][object] */
1010
1011Dim IID_IEnumVARIANT = [&h00020404, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID
1012
1013Interface IEnumVARIANT
1014    Inherits IUnknown
1015
1016    /* [local] */ Function Next(
1017        /* [in] */ celt As DWord,
1018        /* [length_is][size_is][out] */ rgVar As *VARIANT,
1019        /* [out] */ pCeltFetched As *DWord) As HRESULT
1020    Function Skip(
1021        /* [in] */ celt As DWord) As HRESULT
1022    Function Reset() As HRESULT
1023    Function Clone(
1024        /* [out] */ ByRef enum_ As IEnumVARIANT) As HRESULT
1025
1026End Interface
1027
1028/* interface ITypeComp */
1029/* [unique][uuid][object] */
1030
1031/* [v1_enum] */
1032Const Enum DESCKIND
1033    DESCKIND_NONE
1034    DESCKIND_FUNCDESC = DESCKIND_NONE
1035    DESCKIND_VARDESC = DESCKIND_FUNCDESC
1036    DESCKIND_TYPECOMP = DESCKIND_VARDESC
1037    DESCKIND_IMPLICITAPPOBJ = DESCKIND_TYPECOMP
1038    DESCKIND_MAX = DESCKIND_IMPLICITAPPOBJ
1039End Enum
1040/*
1041Union BINDPTR
1042    lpfuncdesc As *FUNCDESC
1043    lpvardesc As *VARDESC
1044    lptcomp As ITypeComp
1045End Union
1046*/
1047Type BINDPTR
1048    p As VoidPtr '暫定
1049End Type
1050
1051TypeDef LPBINDPTR = *BINDPTR
1052
1053Dim IID_ITypeComp = [&h00020403, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID
1054
1055Interface ITypeComp
1056    Inherits IUnknown
1057
1058    Function /* [local] */ Bind(
1059        /* [in] */ szName As LPOLESTR,
1060        /* [in] */ HashVal As DWord,
1061        /* [in] */ wFlags As Word,
1062        /* [out] */ ByRef TInfo As ITypeInfo,
1063        /* [out] */ ByRef DescKind As DESCKIND,
1064        /* [out] */ ByRef BindPtr As BINDPTR) As HRESULT
1065
1066    Function /* [local] */ BindType(
1067        /* [in] */ szName As LPOLESTR,
1068        /* [in] */ HashVal As DWord,
1069        /* [out] */ ByRef TInfo As ITypeInfo,
1070        /* [out] */ ByRef TComp As ITypeComp) As HRESULT
1071End Interface
1072
1073/* interface ITypeInfo */
1074/* [unique][uuid][object] */
1075
1076Dim IID_ITypeInfo = [&h00020401, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID
1077
1078Interface ITypeInfo
1079    Inherits IUnknown
1080
1081    Function /* [local] */ GetTypeAttr(
1082        /* [out] */ ByRef pTypeAttr As *TYPEATTR) As HRESULT
1083    Function GetTypeComp(
1084        /* [out] */ ByRef TComp As ITypeComp) As HRESULT
1085    Function /* [local] */ GetFuncDesc(
1086        /* [in] */ index As DWord,
1087        /* [out] */ ByRef pFuncDesc As *FUNCDESC) As HRESULT
1088    Function /* [local] */ GetVarDesc(
1089        /* [in] */ index As DWord,
1090        /* [out] */ ByRef pVarDesc As *VARDESC) As HRESULT
1091    Function /* [local] */ GetNames(
1092        /* [in] */ memid As MEMBERID,
1093        /* [length_is][size_is][out] */ rgBstrNames As *BSTR,
1094        /* [in] */ cMaxNames As DWord,
1095        /* [out] */ ByRef cNames As DWord) As HRESULT
1096    Function GetRefTypeOfImplType(
1097        /* [in] */ index As DWord,
1098        /* [out] */ ByRef RefType As HREFTYPE) As HRESULT
1099    Function GetImplTypeFlags(
1100        /* [in] */ index As DWord,
1101        /* [out] */ ByRef ImplTypeFlags As Long) As HRESULT
1102    Function /* [local] */ GetIDsOfNames(
1103        /* [size_is][in] */ rgszNames As *LPOLESTR,
1104        /* [in] */ cNames As DWord,
1105        /* [size_is][out] */ pMemId As *MEMBERID) As HRESULT
1106    Function /* [local] */ Invoke(
1107        /* [in] */ pvInstance As VoidPtr,
1108        /* [in] */ memid As MEMBERID,
1109        /* [in] */ wFlags As Word,
1110        /* [out][in] */ ByRef DispParams As DISPPARAMS,
1111        /* [out] */ ByRef VarResult As VARIANT,
1112        /* [out] */ ByRef ExcepInfo As EXCEPINFO,
1113        /* [out] */ ByRef uArgErr As DWord) As HRESULT
1114    Function /* [local] */ GetDocumentation(
1115        /* [in] */ memid As MEMBERID,
1116        /* [out] */ ByRef BstrName As BSTR,
1117        /* [out] */ ByRef BstrDocString As BSTR,
1118        /* [out] */ ByRef dwHelpContext As DWord,
1119        /* [out] */ ByRef BstrHelpFile As BSTR) As HRESULT
1120    Function /* [local] */ GetDllEntry(
1121        /* [in] */ memid As MEMBERID,
1122        /* [in] */ invKind As INVOKEKIND,
1123        /* [out] */ ByRef BstrDllName As BSTR,
1124        /* [out] */ ByRef BstrName As BSTR,
1125        /* [out] */ ByRef wOrdinal As Word) As HRESULT
1126    Function GetRefTypeInfo(
1127        /* [in] */ hRefType As HREFTYPE,
1128        /* [out] */ ByRef TInfo As ITypeInfo) As HRESULT
1129    Function /* [local] */ AddressOfMember(
1130        /* [in] */ memid As MEMBERID,
1131        /* [in] */ invKind As INVOKEKIND,
1132        /* [out] */ ByRef pv As VoidPtr) As HRESULT
1133    Function /* [local] */ CreateInstance(
1134        /* [in] */ pUnkOuter As IUnknown,
1135        /* [in] */ ByRef riid As IID,
1136        /* [iid_is][out] */ ByRef pvObj As Any) As HRESULT
1137    Function GetMops(
1138        /* [in] */ memid As MEMBERID,
1139        /* [out] */ ByRef BstrMops As BSTR) As HRESULT
1140    Function /* [local] */ GetContainingTypeLib(
1141        /* [out] */ ByRef TLib As ITypeLib,
1142        /* [out] */ ByRef Index As DWord) As HRESULT
1143    Sub /* [local] */ ReleaseTypeAttr(
1144        /* [in] */ pTypeAttr As *TYPEATTR)
1145    Sub /* [local] */ ReleaseFuncDesc(
1146        /* [in] */ pFuncDesc As *FUNCDESC)
1147    Sub /* [local] */ ReleaseVarDesc(
1148        /* [in] */ pVarDesc As *VARDESC)
1149End Interface
1150
1151/* interface ITypeInfo2 */
1152/* [unique][uuid][object] */
1153
1154Dim IID_ITypeInfo2 = [&h00020412, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID
1155
1156Interface ITypeInfo2
1157    Inherits ITypeInfo
1158
1159    Function GetTypeKind(
1160        /* [out] */ ByRef TypeKind As TYPEKIND) As HRESULT
1161    Function GetTypeFlags(
1162        /* [out] */ ByRef TypeFlags As DWord) As HRESULT
1163    Function GetFuncIndexOfMemId(
1164        /* [in] */ memid As MEMBERID,
1165        /* [in] */ invKind As INVOKEKIND,
1166        /* [out] */ ByRef FuncIndex As DWord) As HRESULT
1167    Function GetVarIndexOfMemId(
1168        /* [in] */ memid As MEMBERID,
1169        /* [out] */ ByRef pVarIndex As DWord) As HRESULT
1170    Function GetCustData(
1171        /* [in] */ ByRef guid As GUID,
1172        /* [out] */ ByRef VarVal As VARIANT) As HRESULT
1173    Function GetFuncCustData(
1174        /* [in] */ index As DWord,
1175        /* [in] */ ByRef guid As GUID,
1176        /* [out] */ ByRef VarVal As VARIANT) As HRESULT
1177    Function GetParamCustData(
1178        /* [in] */ indexFunc As DWord,
1179        /* [in] */ indexParam As DWord,
1180        /* [in] */ ByRef guid As GUID,
1181        /* [out] */ ByRef VarVal As VARIANT) As HRESULT
1182    Function GetVarCustData(
1183        /* [in] */ index As DWord,
1184        /* [in] */ ByRef guid As GUID,
1185        /* [out] */ ByRef VarVal As VARIANT) As HRESULT
1186    Function GetImplTypeCustData(
1187        /* [in] */ index As DWord,
1188        /* [in] */ ByRef guid As GUID,
1189        /* [out] */ ByRef VarVal As VARIANT) As HRESULT
1190    Function /* [local] */ GetDocumentation2(
1191        /* [in] */ memid As MEMBERID,
1192        /* [in] */ lcid As LCID,
1193        /* [out] */ ByRef bstrHelpString As BSTR,
1194        /* [out] */ ByRef dwHelpStringContext As DWord,
1195        /* [out] */ ByRef bstrHelpStringDll As BSTR) As HRESULT
1196    Function GetAllCustData(
1197        /* [out] */ ByRef CustData As CUSTDATA) As HRESULT
1198    Function GetAllFuncCustData(
1199        /* [in] */ index As DWord,
1200        /* [out] */ ByRef CustData As CUSTDATA) As HRESULT
1201    Function GetAllParamCustData(
1202        /* [in] */ indexFunc As DWord,
1203        /* [in] */ indexParam As DWord,
1204        /* [out] */ ByRef CustData As CUSTDATA) As HRESULT
1205    Function GetAllVarCustData(
1206        /* [in] */ index As DWord,
1207        /* [out] */ ByRef CustData As CUSTDATA) As HRESULT
1208    Function GetAllImplTypeCustData(
1209        /* [in] */ index As DWord,
1210        /* [out] */ ByRef CustData As CUSTDATA) As HRESULT
1211End Interface
1212
1213/* interface ITypeLib */
1214/* [unique][uuid][object] */
1215
1216/* [v1_enum] */
1217Const Enum SYSKIND
1218    SYS_WIN16 = 0
1219    SYS_WIN32 = 1
1220    SYS_MAC = 2
1221    SYS_WIN64 = 3
1222End Enum
1223
1224/* [v1_enum] */
1225Const Enum LIBFLAGS
1226    LIBFLAG_FRESTRICTED = &h1
1227    LIBFLAG_FCONTROL = &h2
1228    LIBFLAG_FHIDDEN = &h4
1229    LIBFLAG_FHASDISKIMAGE = &h8
1230End Enum
1231
1232TypeDef LPTYPELIB = /* [unique] */ *ITypeLib
1233
1234Type TLIBATTR
1235    guid As GUID
1236    lcid As LCID
1237    syskind As SYSKIND
1238    wMajorVerNum As Word
1239    wMinorVerNum As Word
1240    wLibFlags As Word
1241End Type
1242
1243TypeDef LPTLIBATTR = TLIBATTR
1244
1245Dim ITypeLib = [&h00020402, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID
1246
1247Interface ITypeLib
1248    Inherits IUnknown
1249
1250    Function /* [local] */ GetTypeInfoCount() As DWord
1251    Function GetTypeInfo(
1252        /* [in] */ index As DWord,
1253        /* [out] */ ByRef TInfo As ITypeInfo) As HRESULT
1254    Function GetTypeInfoType(
1255        /* [in] */ index As DWord,
1256        /* [out] */ ByRef TKind As TYPEKIND) As HRESULT
1257    Function GetTypeInfoOfGuid(
1258        /* [in] */ ByRef guid As GUID,
1259        /* [out] */ ByRef TInfo As ITypeInfo) As HRESULT
1260    Function /* [local] */ GetLibAttr(
1261        /* [out] */ ByRef TLibAttr As TLIBATTR) As HRESULT
1262    Function GetTypeComp(
1263        /* [out] */ ByRef TComp As ITypeComp) As HRESULT
1264    Function /* [local] */ GetDocumentation(
1265        /* [in] */ index As Long,
1266        /* [out] */ ByRef BstrName As BSTR,
1267        /* [out] */ ByRef BstrDocString As BSTR,
1268        /* [out] */ ByRef dwHelpContext As DWord,
1269        /* [out] */ ByRef BstrHelpFile As BSTR) As HRESULT
1270    Function /* [local] */ IsName(
1271        /* [out][in] */ szNameBuf As LPOLESTR,
1272        /* [in] */ lHashVal As DWord,
1273        /* [out] */ ByRef pfName As BOOL) As HRESULT
1274    Function /* [local] */ FindName(
1275        /* [out][in] */ szNameBuf As LPOLESTR,
1276        /* [in] */ lHashVal As DWord,
1277        /* [length_is][size_is][out] */ pTInfo As *ITypeInfo,
1278        /* [length_is][size_is][out] */ rgMemId As *MEMBERID,
1279        /* [out][in] */ ByRef cFound As Word) As HRESULT
1280    Sub /* [local] */ ReleaseTLibAttr(
1281        /* [in] */ ByRef TLibAttr As TLIBATTR)
1282End Interface
1283
1284/* interface ITypeLib2 */
1285/* [unique][uuid][object] */
1286
1287Dim IID_ITypeLib2 = [&h00020411, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID
1288
1289Interface ITypeLib2
1290    Inherits ITypeLib
1291
1292    Function GetCustData(
1293        /* [in] */ ByRef guid As GUID,
1294        /* [out] */ ByRef VarVal As VARIANT) As HRESULT
1295    /* [local] */ Function GetLibStatistics(
1296        /* [out] */ ByRef cUniqueNames As DWord,
1297        /* [out] */ ByRef chUniqueNames As DWord) As HRESULT
1298    /* [local] */ Function GetDocumentation2(
1299        /* [in] */ index As Long,
1300        /* [in] */ lcid As LCID,
1301        /* [out] */ ByRef bstrHelpString As BSTR,
1302        /* [out] */ ByRef dwHelpStringContext As DWord,
1303        /* [out] */ ByRef bstrHelpStringDll As BSTR) As HRESULT
1304    Function GetAllCustData(
1305        /* [out] */ ByRef CustData As CUSTDATA) As HRESULT
1306End Interface
1307
1308/* interface ITypeChangeEvents */
1309/* [local][unique][uuid][object] */
1310
1311Enum CHANGEKIND
1312    CHANGEKIND_ADDMEMBER = 0
1313    CHANGEKIND_DELETEMEMBER = 1
1314    CHANGEKIND_SETNAMES = 2
1315    CHANGEKIND_SETDOCUMENTATION = 3
1316    CHANGEKIND_GENERAL = 4
1317    CHANGEKIND_INVALIDATE = 5
1318    CHANGEKIND_CHANGEFAILED = 6
1319    CHANGEKIND_MAX = 7
1320End Enum
1321
1322Dim IID_ITypeChangeEvents = [&h00020410, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID
1323
1324Interface ITypeChangeEvents
1325    Inherits IUnknown
1326
1327    Function RequestTypeChange(
1328        /* [in] */ changeKind As CHANGEKIND,
1329        /* [in] */ TInfoBefore As ITypeInfo,
1330        /* [in] */ pStrName As LPOLESTR,
1331        /* [out] */ ByRef fCancel As Long) As HRESULT
1332    Function AfterTypeChange(
1333        /* [in] */ changeKind As CHANGEKIND,
1334        /* [in] */ TInfoAfter As ITypeInfo,
1335        /* [in] */ pStrName As LPOLESTR) As HRESULT
1336End Interface
1337
1338/* interface IErrorInfo */
1339/* [unique][uuid][object] */
1340
1341Dim IID_IErrorInfo = [&h1CF2B120, &h547D, &h101B, [&h8E, &h65, &h08, &h00, &h2B, &h2B, &hD1, &h19]] As IID
1342
1343Interface IErrorInfo
1344    Inherits IUnknown
1345
1346    Function GetGUID(
1347        /* [out] */ ByRef guid As GUID) As HRESULT
1348    Function GetSource(
1349        /* [out] */ ByRef BstrSource As BSTR) As HRESULT
1350    Function GetDescription(
1351        /* [out] */ ByRef BstrDescription As BSTR) As HRESULT
1352    Function GetHelpFile(
1353        /* [out] */ ByRef BstrHelpFile As BSTR) As HRESULT
1354    Function GetHelpContext(
1355        /* [out] */ ByRef dwHelpContext As DWord) As HRESULT
1356End Interface
1357
1358/* interface ICreateErrorInfo */
1359/* [unique][uuid][object] */
1360
1361TypeDef LPCREATEERRORINFO = /* [unique] */ *ICreateErrorInfo
1362
1363Dim IID_ICreateErrorInfo = [&h22F03340, &h547D, &h101B, [&h8E, &h65, &h08, &h00, &h2B, &h2B, &hD1, &h19]] As IID
1364
1365Interface ICreateErrorInfo
1366    Inherits IUnknown
1367
1368    Function SetGUID(
1369        /* [in] */ ByRef rguid As GUID) As HRESULT
1370    Function SetSource(
1371        /* [in] */ szSource As LPOLESTR) As HRESULT
1372    Function SetDescription(
1373        /* [in] */ szDescription As LPOLESTR) As HRESULT
1374    Function SetHelpFile(
1375        /* [in] */ szHelpFile As LPOLESTR) As HRESULT
1376    Function SetHelpContext(
1377        /* [in] */ dwHelpContext As DWord) As HRESULT
1378End Interface
1379
1380/* interface ISupportErrorInfo */
1381/* [unique][uuid][object] */
1382
1383Dim IID_ISupportErrorInfo = [&hDF0B3D60, &h548F, &h101B, [&h8E, &h65, &h08, &h00, &h2B, &h2B, &hD1, &h19]] As IID
1384
1385Interface ISupportErrorInfo
1386    Inherits IUnknown
1387
1388    Function InterfaceSupportsErrorInfo(
1389        /* [in] */ ByRef riid As IID) As HRESULT
1390End Interface
1391
1392/* interface ITypeFactory */
1393/* [uuid][object] */
1394
1395Dim IID_ITypeFactory = [&h0000002E, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID
1396
1397Interface ITypeFactory
1398    Inherits IUnknown
1399
1400    Function CreateFromTypeInfo(
1401        /* [in] */ TypeInfo As ITypeInfo,
1402        /* [in] */ ByRef riid As IID,
1403        /* [iid_is][out] */ ByRef pv As IUnknown) As HRESULT
1404End Interface
1405
1406/* interface ITypeMarshal */
1407/* [uuid][object][local] */
1408
1409Dim IID_ITypeMarshal = [&h0000002D, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID
1410
1411Interface ITypeMarshal
1412    Inherits IUnknown
1413
1414    Function Size(
1415        /* [in] */ pvType As VoidPtr,
1416        /* [in] */ dwDestContext As DWord,
1417        /* [in] */ pvDestContext As VoidPtr,
1418        /* [out] */ ByRef Size As DWord) As HRESULT
1419    Function Marshal(
1420        /* [in] */ pvType As VoidPtr,
1421        /* [in] */ dwDestContext As DWord,
1422        /* [in] */ pvDestContext As VoidPtr,
1423        /* [in] */ cbBufferLength As DWord,
1424        /* [out] */ pBuffer As *Byte,
1425        /* [out] */ ByRef cbWritten As DWord) As HRESULT
1426    Function Unmarshal(
1427        /* [out] */ pvType As VoidPtr,
1428        /* [in] */ dwFlags As DWord,
1429        /* [in] */ cbBufferLength As DWord,
1430        /* [in] */ pBuffer As *Byte,
1431        /* [out] */ ByRef cbRead As DWord) As HRESULT
1432    Function Free(
1433        /* [in] */ pvType As VoidPtr) As HRESULT
1434End Interface
1435
1436/* interface IRecordInfo */
1437/* [uuid][object][local] */
1438
1439Dim IID_IRecordInfo = [&h0000002F, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID
1440
1441Interface IRecordInfo
1442    Inherits IUnknown
1443
1444    Function RecordInit(
1445        /* [out] */ pvNew As VoidPtr) As HRESULT
1446    Function RecordClear(
1447        /* [in] */ pvExisting As VoidPtr) As HRESULT
1448    Function RecordCopy(
1449        /* [in] */ pvExisting As VoidPtr,
1450        /* [out] */ pvNew As VoidPtr) As HRESULT
1451    Function GetGuid(
1452        /* [out] */ ByRef guid As GUID) As HRESULT
1453    Function GetName(
1454        /* [out] */ ByRef bstrName As BSTR) As HRESULT
1455    Function GetSize(
1456        /* [out] */ ByRef cbSize As DWord) As HRESULT
1457    Function GetTypeInfo(
1458        /* [out] */ ByRef TypeInfo As ITypeInfo) As HRESULT
1459    Function GetField(
1460        /* [in] */ pvData As VoidPtr,
1461        /* [in] */ szFieldName As LPCOLESTR,
1462        /* [out] */ ByRef varField As VARIANT) As HRESULT
1463    Function GetFieldNoCopy(
1464        /* [in] */ pvData As VoidPtr,
1465        /* [in] */ szFieldName As LPCOLESTR,
1466        /* [out] */ ByRef varField As VARIANT,
1467        /* [out] */ ByRef pvDataCArray As VoidPtr) As HRESULT
1468    Function PutField(
1469        /* [in] */ wFlags As DWord,
1470        /* [out][in] */ pvData As VoidPtr,
1471        /* [in] */ szFieldName As LPCOLESTR,
1472        /* [in] */ ByRef varField As VARIANT) As HRESULT
1473    Function PutFieldNoCopy(
1474        /* [in] */ wFlags As DWord,
1475        /* [out][in] */ pvData As VoidPtr,
1476        /* [in] */ szFieldName As LPCOLESTR,
1477        /* [in] */ ByRef varField As VARIANT) As HRESULT
1478    Function GetFieldNames(
1479        /* [out][in] */ ByRef cNames As DWord,
1480        /* [length_is][size_is][out] */ rgBstrNames As *BSTR) As HRESULT
1481    Function IsMatchingType(
1482        /* [in] */ RecordInfo As IRecordInfo) As BOOL
1483    Function RecordCreate() As VoidPtr
1484    Function RecordCreateCopy(
1485        /* [in] */ pvSource As VoidPtr,
1486        /* [out] */ ByRef pvDest As VoidPtr) As HRESULT
1487    Function RecordDestroy(
1488        /* [in] */ pvRecord As VoidPtr) As HRESULT
1489End Interface
1490
1491/* interface IErrorLog */
1492/* [unique][uuid][object] */
1493
1494Dim IID_IErrorLog = [&h3127CA40, &h446E, &h11CE, [&h81, &h35, &h00, &hAA, &h00, &h4B, &hB8, &h51]] As IID
1495
1496Interface IErrorLog
1497    Inherits IUnknown
1498
1499    Function AddError(
1500        /* [in] */ pszPropName As LPCOLESTR,
1501        /* [in] */ ByRef pExcepInfo As EXCEPINFO) As HRESULT
1502End Interface
1503
1504/* interface IPropertyBag */
1505/* [unique][uuid][object] */
1506
1507Dim IID_IPropertyBag = [&h55272A00, &h42CB, &h11CE, [&h81, &h35, &h00, &hAA, &h00, &h4B, &hB8, &h51]] As IID
1508
1509Interface IPropertyBag
1510    Inherits IUnknown
1511
1512    /* [local] */ Function Read(
1513        /* [in] */ pszPropName As LPCOLESTR,
1514        /* [out][in] */ ByRef Var As VARIANT,
1515        /* [in] */ ErrorLog As IErrorLog) As HRESULT
1516
1517    Function Write(
1518        /* [in] */ pszPropName As LPCOLESTR,
1519        /* [in] */ ByRef Var As VARIANT) As HRESULT
1520End Interface
Note: See TracBrowser for help on using the repository browser.