Es wäre noch anzumerken, dass in anderen Sprachen, wie bspw. C++, die Definition von der Erzeuger-Funktion SkinMagnetic Probleme verursachen kann.
...besser umändern zu:
Delphi-Quellcode:
function SkinMagnetic(
out ASkinMagnetic: ISkinMagnetic): HRESULT;
stdcall;
begin
Result := S_FALSE;
try
if MagneticWnd =
nil then
MagneticWnd := TMagnetic.Create;
ASkinMagnetic := MagneticWnd
as ISkinMagnetic;
if Assigned(ASkinMagnetic)
then
begin
Result := S_OK;
end;
except
on E:
Exception do
Result := E_NOINTERFACE;
end;
end;
Hast Du wohl recht aber da wir das System im Moment nur mit Delphi benutzen funktioniert es für uns