On Wednesday, 13 July 2016 at 20:47:21 UTC, John wrote:
On Wednesday, 13 July 2016 at 20:28:40 UTC, Adam Sansier wrote:
On Wednesday, 13 July 2016 at 19:22:44 UTC, Kagamin wrote:
On Wednesday, 13 July 2016 at 16:48:53 UTC, Adam Sansier
wrote:
There's a lot of misinformation on the net.
Nope, it's just you. COM support in D and in general works
fine for everyone else.
For anyone else having similar problems please ignore. COM
doesn't work perfectly regardless of what some nobody says and
I'm not the only one having problems. There are others and a
search shows this.
http://forum.dlang.org/thread/[email protected]
I notice you are the last one to say "COM uses stdcall
convention. Everything else is not COM." Spreading your lies
and disinformation. People like you are a source of problems,
not a solution. Please learn that you don't know everything
and your generalization about how everything works is simply
wrong.
http://www.digitalmars.com/d/archives/digitalmars/D/learn/thiscall_calling_convention_4943.html
Regardless of why the problems exist, or if they are subtle or
only in certain scenarios, they exist and some imbecile
claiming they don't just makes more trouble for those trying
to solve their problems.
If you don't like my attitude, stop acting like the world is
perfect and when someone has a problem that it just might be
legitimate. If you don't actually feel like helping, simply
don't reply, it's that easy.
The problem is that ASIO deviates from the standard way of
implementing COM. Other languages like Delphi expect COM to use
stdcall too, so the problem is not unique to D. Putting
"extern(C++):" before the interface method declarations should
allow it to work...
interface IASIO : IUnknown {
extern(C++):
HRESULT SomeMethod();
}
NO! If you do that then it's not COM! Put extern(Windows)! It's
the only way it can work!
Yes! your right, If you were only around to tell me that in the
first place! ;) Now we know. Again, as I said before, the problem
is informational. Maybe because come works 99% of the time
doesn't help us in the 1% if some think 99%=100%(that new math
shit that's causing so many problems). I've created a big enough
stink about it that anyone in the future having similar issues
might be able to resolve them much quicker.
Thanks.