Browse Source

* TPropVariant must be packed record, its size should match Variant (16 bytes)
* LPVERSIONEDSTREAM is a pointer type.

git-svn-id: trunk@17387 -

sergei 14 years ago
parent
commit
e3feef2126
1 changed files with 3 additions and 2 deletions
  1. 3 2
      packages/winunits-base/src/activex.pp

+ 3 - 2
packages/winunits-base/src/activex.pp

@@ -1686,7 +1686,7 @@ TYPE
      end;
      end;
    VERSIONEDSTREAM = tagVersionedStream;
    VERSIONEDSTREAM = tagVersionedStream;
    TVERSIONEDSTREAM = tagVersionedStream;
    TVERSIONEDSTREAM = tagVersionedStream;
-   LPVERSIONEDSTREAM = tagVersionedStream;
+   LPVERSIONEDSTREAM = ^tagVersionedStream;
    PVERSIONEDSTREAM = ^TagVersionedStream;
    PVERSIONEDSTREAM = ^TagVersionedStream;
 
 
 
 
@@ -1856,7 +1856,8 @@ TYPE
    IPropertyStorage    = Interface;
    IPropertyStorage    = Interface;
    IEnumSTATPROPSETSTG = interface;
    IEnumSTATPROPSETSTG = interface;
 
 
-   TPROPVARIANT = record
+   { size of this record must be 16, i.e. match Variant }
+   TPROPVARIANT = packed record
           vt : VARTYPE;
           vt : VARTYPE;
           wReserved1 : PROPVAR_PAD1;
           wReserved1 : PROPVAR_PAD1;
           wReserved2 : PROPVAR_PAD2;
           wReserved2 : PROPVAR_PAD2;