[fpc-pascal] EOLESysError calling CreateOLEObject

Marco van de Voort marcov at stack.nl
Tue Jul 22 15:35:44 CEST 2008


> Thanks, but it didn't solve it. The same code (+coinitialize) works in
> Delphi 5. Maybe it's the dispinterfaces problem in fpc? Is it expected
> to work in 2.2.2 or in 2.3.1?

I suspect it is in the classid. (the clsid_ constant).

Apparantly when I converted the headers, I thought there only was one ID.
However it seems that classids, and the ids in interfaces are different.

I don't know enough from com to understand the difference, but when I copied and
pasted a value for clsid_ishelllink found on the web, the example worked,
with or without coinit*.\

So the value in the FPC headers is wrong, and the IID values in the headers.
So I grepped the SDK headers, and the shellink clsid is:

DEFINE_SHLGUID(CLSID_ShellLink,         0x00021401L, 0, 0); //
00021401-0000-0000-C000-000000000046

while the iid starts with 000214EE










More information about the fpc-pascal mailing list