Bei mir hats auch erst funktioniert nachdem ich eine Klasse erstellt habe:
Delphi-Quellcode:
type
IUPnPDeviceFinderCallback = interface(IUnknown)['{415A984A-88B3-49F3-92AF-0508BEDF0D6C}']
procedure DeviceAdded(iFindData: Integer; UPnPDevice: UPnPDevice); stdcall;
procedure DeviceRemoved(iFindData: Integer; wsUDN: WideString); stdcall;
procedure SearchComplete(iFindData: Integer); stdcall;
end;
type
TUPnPDeviceFinderCallback = class(TInterfacedObject, IUPnPDeviceFinderCallback)
protected
procedure DeviceAdded(iFindData: Integer; UPnPDevice: UPnPDevice); stdcall;
procedure DeviceRemoved(iFindData: Integer; wsUDN: WideString); stdcall;
procedure SearchComplete(iFindData: Integer); stdcall;
public
constructor Create;
end;