Re: Is it normal that the COM vtbl structure cannot be aligned between Windows and Wine
zhengxianwei <[email protected]> Wed, 11 Jun 2025 21:08:24 +0800
| Newsgroups | gmane.comp.emulators.wine.devel |
|---|---|
| Message-ID | <CABeGAqXp66XQhBuLPQeqmap9be+8L3_dVHO++xs=3Q7JA33XsQ@mail.gmail.com> |
Due to some reasons, I may not submit patches to Wine, but thank you for letting me know about this rule — I will follow it On Wed, Jun 11, 2025 at 8:57 PM Zhiyi Zhang <[email protected]> wrote: > > > On 6/11/25 20:16, zhengxianwei wrote: > > In wine, Visual2Vtbl > > > > ``` > > typedef struct IDCompositionVisual2Vtbl { > > BEGIN_INTERFACE > > > > /*** IUnknown methods ***/ > > HRESULT (STDMETHODCALLTYPE *QueryInterface)( > > IDCompositionVisual2 *This, > > REFIID riid, > > void **ppvObject); > > > > ULONG (STDMETHODCALLTYPE *AddRef)( > > IDCompositionVisual2 *This); > > > > ULONG (STDMETHODCALLTYPE *Release)( > > IDCompositionVisual2 *This); > > > > /*** IDCompositionVisual methods ***/ > > HRESULT (STDMETHODCALLTYPE *SetOffsetX)( > > IDCompositionVisual2 *This, > > float offset_x); > > > > HRESULT (STDMETHODCALLTYPE *SetOffsetXAnimation)( > > IDCompositionVisual2 *This, > > IDCompositionAnimation *animation); > > > > HRESULT (STDMETHODCALLTYPE *SetOffsetY)( > > IDCompositionVisual2 *This, > > float offset_y); > > ``` > > > > setOffsetX (float *) at offset 0x18 > > visual2vtbl.png > > But in windows 0x18 is setOffsetX (Animation *) > > > > This screenshot is from disassembling native dcomp.dll. You are not > allowed to do this if you want to > send your patches to Wine. > > > > Is this correct? > > > > > > > > > >