You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently all works fine, but I need more flexible things like here #2
How we can play with current versions:
// the working half-declaration of original interface:[Guid("23170F69-40C1-278A-0000-000600600000")][InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]internalinterface IInArchive
{voida();voidb();0x02:uintGetNumberOfArchiveProperties();// <-- uint GetNumberOfItems();|voidc();voidd();voide();voidf();voidg();||0x08:uintGetNumberOfItems();//uint GetNumberOfArchiveProperties(); // <-/ moreover, it can be like MySPecial001() for calling from our side.}
...IInArchivear;// DLR for STDAPI CreateObject(const GUID *clsid, const GUID *iid, void **outObject)
l.DLR.CreateObject<int>(ref cid, ref iid, out ar);
ar.GetNumberOfItems()<--> GetNumberOfArchiveProperties()// ok
How about of Inheritance:
In COM it does not mean code reuse, it means only that contract associated with an interface is inherited.
The coreclr could have better support for all IUnknown interfaces like a COW. I mean we already have contract for all this, why not to wrap this via optional allocation of new required records and remap pointers for new slot. But anyway, it requires any modifications of this, so... my time -_-
[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)][Guid("23170F69-40C1-278A-0000-000300010000")]publicinterfaceISequentialInStream{voidRead(...);}[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)][Guid("23170F69-40C1-278A-0000-000300030000")]publicinterfaceIInStream:ISequentialInStream{voidm(...);// only as offset of position like above. The Read() from base we still can't usevoidSeek(...);// ok }
just to think
The text was updated successfully, but these errors were encountered:
Currently all works fine, but I need more flexible things like here #2
How we can play with current versions:
How about of Inheritance:
In COM it does not mean code reuse, it means only that contract associated with an interface is inherited.
The coreclr could have better support for all IUnknown interfaces like a COW. I mean we already have contract for all this, why not to wrap this via optional allocation of new required records and remap pointers for new slot. But anyway, it requires any modifications of this, so... my time -_-
just to think
The text was updated successfully, but these errors were encountered: