IStorage* vs. LPSTORAGE vs. winapi_check

Marcus Meissner marcus at
Tue Aug 16 23:39:00 CDT 2005

On Wed, Aug 17, 2005 at 12:31:36AM +0200, Francois Gouget wrote:
> On Tue, 16 Aug 2005, Marcus Meissner wrote:
> [...]
> >The LPSTORAGE layout is definitely not the same.
> What do you mean? I just replaced 'IStoreage *' with 'LPSTORAGE' and 
> since the LPSTORAGE declaration is 'typedef IStorage *LPSTORAGE;' the 
> layout should be the same. Now if the original prototype was wrong for 
> some other reason that's another issue.

For the 32bit functions use of "LPSTORAGE" is fine.

For the 16bit functions I do not know. The interface itself is the same,
but the calling conventions really are not. 

So this is more of a programming detail.
> >So LPSTORAGE16 would be more fitting I think.
> You mean in the documentation?
In the documentation I guess it is ok.

> >Also when not using "SEGPTR" I get conversion warnings and it clarifies
> >a bit what exactly the type of the argument is.
> Do you mean it would be better not to use 'SEGPTR' in the prototypes?

No, I meant that I did switch to SEGPTR because of it.

Anyway, its fine as is. :)

Ciao, Marcus

More information about the wine-devel mailing list