3/14/2008 6.0 Major Updated and revised the technical content. 5/16/2008 7.0 Updated and revised the technical content. 6/20/2008 8.0 Major Updated and revised the technical content. 7/25/2008 8.1 Minor Clarified the meaning of the technical content. 8/29/2008 8.1.1 Editorial Changed language and formatting in the technical content. 10/24/2008 8.2 Clarified the meaning of the technical content. 12/5/2008 8.3 Minor Added Windows 7 Applicability. 1/16/2009 8.3.1 Editorial Changed language and formatting in the technical content. 2/27/2009 8.4 Minor Clarified the meaning of the technical content. 4/10/2009 8.4.1 Editorial Changed language and formatting in the
technical content. 5/22/2009 8.4.2 Editorial Changed language and formatting in the technical content. 7/2/2009 9.0 Major Updated and revised the technical content. 8/14/2009 9.0.1 Editorial Changed language and formatting in the technical content. 9/25/2009 9.1 Minor Clarified the meaning of the technical content. 11/6/2009 10.0 Updated and revised the technical content. 12/18/2009 11.0 Major Updated and revised the technical content. 1/29/2010 11.0.1 Editorial Changed language and formatting in the technical content. 3/12/2010 12.0 Major Updated and revised the technical content. 4/23/2010 12.0.1 Editorial Changed language and formatting in the
technical content. 6/4/2010 12.0.2 Editorial Changed language and formatting in the technical content. 7/16/2010 12.0.2 None No changes to the meaning, language, or formatting of the technical content. 8/27/2010 12.0.2 None No changes to the meaning, language, or formatting of the technical content. 10/8/2010 12.0.2 None No changes to the meaning, language, or formatting of the technical content. 11/19/2010 12.0.2 None No changes to the meaning, language, or formatting of the technical content. 1/7/2011 13.0 Major Updated and revised the technical content. 2/11/2011 13.0 None No changes to the meaning, language, or formatting of the technical content.
3/25/2011 13.0 None No changes to the meaning, language, or formatting of the technical content. 5/6/2011 13.0 None No changes to the meaning, language, or formatting of the technical content. 6/17/2011 13.1 Minor Clarified the meaning of the technical content. 9/23/2011 13.1 None No changes to the meaning, language, or formatting of the technical content. 12/16/2011 14.0 Updated and revised the technical content. 3/30/2012 14.0 None No changes to the meaning, language, or formatting of the technical content. 7/12/2012 14.0 None No changes to the meaning, language, or formatting of the technical content. 10/25/2012 14.0 None No changes to the meaning, language, or formatting
of the technical content. 1/31/2013 14.0 None No changes to the meaning, language, or formatting of the technical content. 8/8/2013 15.0 Major Updated and revised the technical content. 11/14/2013 15.0 None No changes to the meaning, language, or formatting of the technical content. 2/13/2014 15.0 None No changes to the meaning, language, or formatting of the technical content. 5/15/2014 15.0 None No changes to the meaning, language, or formatting of the technical content. 6/30/2015 16.0 Major Significantly changed the technical content. 10/16/2015 16.0 None No changes to the meaning, language, or formatting of the technical content. 7/14/2016 16.0 None No changes to the
meaning, language, or formatting of the technical content. 6/1/2017 16.0 None No changes to the meaning, language, or formatting of the technical content. 9/15/2017 17.0 Major Significantly changed the technical content.
assignment. This flag is valid only when the property accepts a reference to an . DISPATCH_zeroVarResult 0x00020000 MUST specify that the client is not interested in the actual pVarResult [out] argument. On return the pVarResult argument MUST to a VT_EMPTY variant, with all reserved fields set to 0. DISPATCH_zeroExcepInfo 0x00040000 MUST specify that the client is not interested in the actual pExcepInfo [out] argument. On return pExcepInfo MUST point to an EXCEPINFO structure, with all scalar fields set to 0 and all BSTR fields set to NULL. DISPATCH_zeroArgErr 0x00080000 MUST specify that the client is not interested in the actual pArgErr
The name of the type. A value that specifies the type that the automation type description describes, as specified in section 2.2.17. A or structure that specifies the attributes declared with the type in the , as specified in section . A that specifies the size, in bytes, of an instance of the type. A reference to the that contains the automation type description in its type information table. A reference to an whose binding context (see section ) is specified by the members of the automation type description. A set of implementation-specific documentation values.<58> An automation type description can include the following tables of member elements, as specified in the remainder of this topic. A method table specifies the methods that are defined by an interface. Each element of a method table includes the following: The name of the method. The of the method. A value or structure that specifies the attributes declared with the method in the IDL (as specified in section 2.2.49) and other method information, as specified in section . An that specifies the return type of the method. A parameter table (see below) that specifies the parameters declared with the method in the IDL, as specified in section . A data member table describes data-only members of the type. Each element of a data member table includes the following: The name of the data member. The MEMBERID of the data member. A value or structure that specifies the attributes declared with the data member in the IDL (as specified in section 2.2.49.5) and other data member information, as specified in section . An ELEMDESC that specifies the type of the data member. An interface table contains references to interfaces and . Each element of an interface table includes the following: The HREFTYPE of the referenced interface or dispinterface. A reference to the automation type description of the interface or dispinterface. A value or structure that specifies the attributes declared with the interface reference in the IDL (as specified in section ) and other information, as specified in section . A parameter table contains references to method parameters. The order of the elements in the parameter table follows the parameter ordering criteria specified in section . Each element of a parameter table includes the following: The name of the parameter.
The GetTypeInfoOfGuid method retrieves the automation type description with the specified from the type information Opnum: 6 The GetLibAttr method retrieves a structure that contains the attributes that are declared with the type library. Opnum: 7 The GetTypeComp method retrieves a reference to the instance that is associated with the . Opnum: 8 The GetDocumentation method retrieves the documentation resources that are associated with the . Opnum: 9 The IsName method indicates whether the specified string matches the name of a type or type member that is contained in the automation type library or its binding context. 10 The FindName method retrieves references to types or type members that are contained in the automation type library and whose names match a specified string. 11
Index A 181 Abstract data model 95 88 client ( 95, 99, 105, 119, 131, 140, 144) 99 96 105 100 119 ITypeInfo server 106 105 107 131 120 140 132 144 141 server ( 88, 96, 100, 105, 120, 132, 141) 28 63 72 AIDL-ODL equivalence examples 146 146 146 146 18 94 94 53 Automation 77 68 69 72 64 Automation client 95 95 96 95 95 95 95 88 Automation server 88 88 94 89 88 89 94 88 103 Automation type description elements 106 107 102 Automation-compatible 68 66 B 101 70 63 Binding context - ITypeComp::Bind 103 102 102 104 181 Bound elements - types returned with ITypeComp::Bind 104 103 103 40 37 149 46 C 29 149 149 18 187 Client abstract data ( 95, 99, 105, 119, 131, 140, 144) 99 initialization ( 95, 99, 105, 119, 131, 140, 144) local events ( 96, 100, 105, 120, 132, 141, 145) message processing ( 105, 119, 131, 140, 144) 99 sequencing rules ( 105, 119, 131, 140, 144) timer events ( 95, 100, 105, 119, 131, 141, 145) timers ( 95, 99, 105, 119, 131, 140, 144) Client - automation 95 95 96 95 95 95 95 Client - IEnumVARIANT 99 99 100
99 99 99 100 99 Client - ITypeComp 105 105 105 105 105 105 105 Client - ITypeInfo 119 119 120 119 119 119 119 Client - ITypeInfo2 131 131 132 131 131 131 131 Client - ITypeLib 140 140 141 140 140 141 140 Client - ITypeLib2 144 144 145 144 144 145 144 98 18 73 63 20 77 78 63 93 117 38 59 59 D Data model - abstract 95 88 client ( 95, 99, 105, 119, 131, 140, 144) 99 96 105 100 119 ITypeInfo server 106 105 107 131 120 140 132 144 141 server ( 88, 96, 100, 105, 120, 132, 141) Data types 20 20 40 85 39 94 36 50 50 50 50 50 69 71 51 69 46 E 54 Equivalence 73 73 Events local - client ( 96, 100, 105, 120, 132, 141, 145) - server ( 94, 99, 105, 119, 131, 140, 144) timer - client ( 95, 100, 105, 119, 131, 141, 145) timer - server ( 94, 99, 105, 119, 131, 140, 144) Examples 146 146 149 149 149 147 147 153 150 151 150 153 152 146
146 154 148 148 51 F 18 139 37 181 181 161 54 29 30 G GetAllCustData method ( 128, 144) 128 130 129 130 118 GetCustData method ( 124, 142) 115 GetDocumentation method ( 114, 137) GetDocumentation2 method ( 127, 143) 124 110 122 90 126 114 136 142 118 112 125 117 113 147 110 GetTypeComp method ( 110, 137) 122 GetTypeInfo method ( 89, 135) GetTypeInfoCount method ( 89, 134) 136 135 122 126 111 123 76 11 H 47 I 90 89 89 91 161 64 60 IEnumVARIANT client 99 99 100 99 99 99 100 99 150 150 ienumvariant interface ( 96, 99) IEnumVARIANT server 96 96 99 96 96 96 99 96 18 18 18 18 18 18 18 18 18 18 160 30 160 14 Initialization 95 88 client ( 95, 99, 105, 119, 131, 140, 144) 99 96 105 100 119 108 131 120 140 133 144 141 server ( 88, 96, 100, 108, 120, 133, 141) Interfaces - client 99 Interfaces - server 88 96 100 105
120 132 141 69 11 146 91 31 138 ITypeComp client 105 105 105 105 105 105 105 100 ITypeComp server 100 100 105 100 100 100 105 100 101 104 ITypeInfo client 119 119 120 119 119 119 119 105 104 ITypeInfo server abstract data 106 105 107 108 119 108 105 108 119 108 117 118 115 114 110 114 118 112 117 113 110 110 111 ITypeInfo2 client 131 131 132 131 131 131 131 120 ITypeInfo2 server 120 120 131 120 120 120 131 120 128 128 130 129 130 124 127 124 122 126 125 122 122 126 123 ITypeLib client 140 140 141 140 140 141 140 132 103 ITypeLib server 132 133 140 133 132 133 140 133 139 137 136 137 135 134 136 135 138 ITypeLib2 client 144 144 145 144
O 72 94 15 15 P 54 54 160 32 18 18 81 176 73 Property example 147 148 88 88 R 154 Reading type information examples 158 158 156 155 155 155 154 154 157 49 14 14 14 76 18 98 S 45 44 44 45 44 45 43 47 43 46 Security 160 160 160 Sequencing 95 89 client ( 105, 119, 131, 140, 144) 99 96 105 100 119 108 131 120 140 133 144 141 server ( 89, 100, 108, 120, 133, 141) Server abstract data ( 88, 96, 100, 105, 120, 132, 141) 88 90 89 89 91 96 initialization ( 88, 96, 100, 108, 120, 133, 141) 100 101 104 105 117 118 115 114 110 114 118 112 117 113 110 110 111 120 128 128 130 129 130 124 127 124 122 126 125 122 122 126 123 132 139 137 136 137 135 134 136
135 138 141 144 142 143 142 local events ( 94, 99, 105, 119, 131, 140, 144) message processing ( 89, 100, 108, 120, 133, 141) overview ( 88, 96, 100, 105, 120, 132, 141) sequencing rules ( 89, 100, 108, 120, 133, 141) timer events ( 94, 99, 105, 119, 131, 140, 144) timers ( 88, 96, 100, 108, 120, 133, 141) Server - automation 88 88 94 89 88 89 94 88 Server - IEnumVARIANT 96 96 99 96 96 96 99 96 Server - ITypeComp 100 100 105 100 100 100 105 100 Server - ITypeInfo abstract data model 106 105 107 108 119 108 105 108 119 108 Server - ITypeInfo2 120 120 131 120 120 120 131 120 Server - ITypeLib 132 133 140 133 132 133 140 133 Server - ITypeLib2 141 141 144 141 141 144 141 148 26 98 18 76 76 36 T Timer events 95 94 client ( 95, 100, 105, 119, 131, 141, 145) 100 99 105 105 119 119 131 131 141 140 145 144 server ( 94, 99, 105, 119, 131, 140, 144) Timers 95 88 client ( 95, 99, 105, 119, 131, 140, 144) 99 96 105 100 119 108 131 120 140 133 144 141 server ( 88, 96, 100, 108, 120, 133, 141) 58 187 20 20