How to COM interfaces work
StarGrazer via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Sat Mar 18 20:19:25 PDT 2017
On Sunday, 19 March 2017 at 02:45:48 UTC, evilrat wrote:
> On Sunday, 19 March 2017 at 02:04:53 UTC, StarGrazer wrote:
>> I have a COM interface that is dynamically created using
>> invoke and such.
>>
>> One of the functions returns an interface. It is just a value
>> of IUnknown or whatever.
>>
>> If I use it as a pointer in to the the D interface equivalent,
>> it crashes as the value is not pointing to anything valid.
>>
>> What do these values represent? I tried to use QueryInterface
>> from the class who's function provides the "COM interface" but
>> it returns interface not supported.
>>
>> So, I have one dynamic COM interface that I initialize
>> properly and can call it's functions and all the ones I tested
>> work fine. Some of those functions returns interfaces. If I
>> try to call the functions on those interfaces, the app crashes.
>>
>> How to I get the interfaces the return values represent? Or
>> for that matter, the functions that ask for an interface, what
>> do I pass? Passing or using the generated D interfaces does
>> not work.
>
> I'm sorry, but probably you should read something like this[1]
> first, this tech(COM) is beyond D, so you must understand how
> it works before trying it in D.
>
> [1]
> https://www.codeproject.com/Articles/633/Introduction-to-COM-What-It-Is-and-How-to-Use-It
Reading that tells me nothing about how to get a dynamic COM
interface of a dynamic COM interface... but I guess you knew
that, didn't you? I'm sorry, but you are an ____.
More information about the Digitalmars-d-learn
mailing list