typelib: add some info about the import table

Huw D M Davies h.davies1 at physics.ox.ac.uk
Tue Jun 28 07:32:18 CDT 2005


        Huw Davies <huw at codeweavers.com>
        Add comments describing the first DWORD in an import table entry.
-- 
Huw Davies
huw at codeweavers.com
Index: tools/widl/typelib_struct.h
===================================================================
RCS file: /home/wine/wine/tools/widl/typelib_struct.h,v
retrieving revision 1.7
diff -u -p -r1.7 typelib_struct.h
--- tools/widl/typelib_struct.h	30 Mar 2005 17:08:31 -0000	1.7
+++ tools/widl/typelib_struct.h	28 Jun 2005 12:29:51 -0000
@@ -157,9 +157,12 @@ typedef struct tagMSFT_TypeInfoBase {
 
 /* layout of an entry with information on imported types */
 typedef struct tagMSFT_ImpInfo {
-    INT     res0;           /* unknown */
-    INT     oImpFile;       /* offset inthe Import File table */
-    INT     oGuid;          /* offset in Guid table */
+    INT     res0;           /* bits 0 - 15:  count */
+                            /* bit  16:      if set oGuid is an offset to Guid */
+                            /*               if clear oGuid is a typeinfo index in the specified typelib */
+                            /* bits 24 - 31: TKIND of reference */
+    INT     oImpFile;       /* offset in the Import File table */
+    INT     oGuid;          /* offset in Guid table or typeinfo index (see bit 16 of res0) */
     } MSFT_ImpInfo;
 
 /* function description data */
Index: dlls/oleaut32/typelib.h
===================================================================
RCS file: /home/wine/wine/dlls/oleaut32/typelib.h,v
retrieving revision 1.19
diff -u -p -r1.19 typelib.h
--- dlls/oleaut32/typelib.h	30 Mar 2005 17:08:32 -0000	1.19
+++ dlls/oleaut32/typelib.h	28 Jun 2005 12:29:51 -0000
@@ -161,9 +161,12 @@ typedef struct tagMSFT_TypeInfoBase {
 
 /* layout of an entry with information on imported types */
 typedef struct tagMSFT_ImpInfo {
-    INT     res0;           /* unknown */
-    INT     oImpFile;       /* offset inthe Import File table */
-    INT     oGuid;          /* offset in Guid table */
+    INT     res0;           /* bits 0 - 15:  count */
+                            /* bit  16:      if set oGuid is an offset to Guid */
+                            /*               if clear oGuid is a typeinfo index in the specified typelib */
+                            /* bits 24 - 31: TKIND of reference */
+    INT     oImpFile;       /* offset in the Import File table */
+    INT     oGuid;          /* offset in Guid table or typeinfo index (see bit 16 of res0) */
     } MSFT_ImpInfo;
 
 /* function description data */



More information about the wine-patches mailing list