What can I do to get the COM layout on interfaces that don't inherit IUnknown? Examples: IXAudio2Voice or any of the IXAudio2*Callback interfaces. I have already declared everything extern(Windows), but that does not fix it.
Wrong vtable for COM interfaces that don't inherit IUnknown
KytoDragon via Digitalmars-d-learn Mon, 15 Jul 2019 15:05:43 -0700
I am currently trying to write a XAudio2 backend and have come
across the problem, that some of the interfaces for XAudio2's COM
objects seem to be missing the first entry in their vtable. After
reading the iterface article in the spec
(https://dlang.org/spec/interface.html#com-interfaces) it seems
that only interfaces inheriting from
core.stdc.windows.com.IUnknown (or any interface named
"IUnknown") get the COM interface layout instead of the D layout.
- Wrong vtable for COM interfaces t... KytoDragon via Digitalmars-d-learn
- Re: Wrong vtable for COM int... Nicholas Wilson via Digitalmars-d-learn
- Re: Wrong vtable for COM int... evilrat via Digitalmars-d-learn
- Re: Wrong vtable for COM... KytoDragon via Digitalmars-d-learn
- Re: Wrong vtable for COM... Kagamin via Digitalmars-d-learn
- Re: Wrong vtable for... rikki cattermole via Digitalmars-d-learn
- Re: Wrong vtable... Kagamin via Digitalmars-d-learn