c# 重写IDispatch接口,有答案时继续加分。
哨子 2011-02-20 12:36:19 [code=C] [InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIDispatch)]
public interface IMyInterface2
{
[PreserveSig]
int Invoke(int dispIdMember, [In] ref Guid riid, [In, MarshalAs(UnmanagedType.U4)] int lcid, [In, MarshalAs(UnmanagedType.U4)] int dwFlags, [In, Out] NativeMethods.tagDISPPARAMS pDispParams, [Out, MarshalAs(UnmanagedType.LPArray)] object[] pVarResult, [In, Out] NativeMethods.tagEXCEPINFO pExcepInfo, [Out, MarshalAs(UnmanagedType.LPArray)] IntPtr[] pArgErr);
[PreserveSig]
int GetIDsOfNames([In] ref Guid riid, [In, MarshalAs(UnmanagedType.LPArray)] string[] rgszNames, [In, MarshalAs(UnmanagedType.U4)] int cNames, [In, MarshalAs(UnmanagedType.U4)] int lcid, [Out, MarshalAs(UnmanagedType.LPArray)] int[] rgDispId);
[return: MarshalAs(UnmanagedType.Interface)]
UnsafeNativeMethods.ITypeInfo GetTypeInfo([In, MarshalAs(UnmanagedType.U4)] int iTInfo, [In, MarshalAs(UnmanagedType.U4)] int lcid);
int GetTypeInfoCount();
}[/code]
在网上找了一下资料,并从Reflector中查了一下IDispatch代码,这样写了一下,但总报错。。
不知道哪位有经验或有重写的资料或代码,发一下。