對不起,但我不得不再次問。我正在尋找幾個星期和一個月的解決方案。 問題是,已經實現了一個COM接口的拋出只通過調用幾個方法一個InvalidCast異常E_NOINTERFACE,它告訴我,我必須實現IUnknown。 那麼我該怎麼做?C#Com E_NOINTERFACE查詢接口
我試過幾乎所有... 目前,我有這樣的事情
[ComImport,
Guid("279AFA85-4981-11CE-A521-0020AF0BE560"),
InterfaceType(ComInterfaceType.InterfaceIsIUnknown),
System.Security.SuppressUnmanagedCodeSecurity]
public interface IDirectSoundBuffer : IUnknown
{
...
[ComImport]
[Guid("00000000-0000-0000-C000-000000000046")]
[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
public interface IUnknown
{
void QueryInterface([In] ref Guid giid, [Out, MarshalAs(UnmanagedType.IUnknown, IidParameterIndex = 0)] out object ppvObject);
[PreserveSig]
uint AddRef();
[PreserveSig]
uint Release();
}
我真不知道有什麼我可以嘗試更多。我有許多不同的論壇話題討論這一點,但noboboy知道什麼:((請幫我
你叫所有從IUnknown接口的方法呢? – Botonomous 2012-07-13 21:36:02
你也可以說實現了這個接口的類? – dkackman 2012-07-14 14:00:53
我也想落實的QueryInterface我所以我可以爲它設置日誌記錄 - 是否讓它運行? – 2012-08-03 20:10:53