1
有一個dll方法導出用delphi寫成: DllGetClassObject:function(const CLSID,IID:TGUID; var Obj):HResult; STDCALL;如何將DllGetClassObject作爲C#委託書寫?
我需要在C#中編寫等同的方法作爲委託。它應該如何?
有一個dll方法導出用delphi寫成: DllGetClassObject:function(const CLSID,IID:TGUID; var Obj):HResult; STDCALL;如何將DllGetClassObject作爲C#委託書寫?
我需要在C#中編寫等同的方法作爲委託。它應該如何?
像這樣:
[UnmanagedFunctionPointer(CallingConvention.StdCall)]
public delegate uint DllGetClassObjectDelegate(
[MarshalAs(UnmanagedType.LPStruct)]
Guid rclsid,
[MarshalAs(UnmanagedType.LPStruct)]
Guid riid,
[MarshalAs(UnmanagedType.IUnknown, IidParameterIndex=1)]
out object ppv
);
來源:http://blog.kutulu.org/2012/01/com-interop-part-9-custom-activations.html?m=1