我不太喜欢 COM 接口,所以我有一个小问题,假设我有这段代码:
[Guid("148BD528-A2AB-11CE-B11F-00AA00530503"),
InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
internal interface IEnumWorkItems {
[PreserveSig()]
int Next([In] uint RequestCount, [Out] out System.IntPtr Names,
[Out] out uint Fetched);
void Skip([In] uint Count);
void Reset();
void Clone([Out, MarshalAs(UnmanagedType.Interface)]
out IEnumWorkItems EnumWorkItems);
}
我怎么知道“148BD528-A2AB-11CE-B11F-00AA00530503”对应于 IEnumWorkItems :http://msdn.microsoft.com/en-us/library/aa380706(VS.85).aspx http://msdn.microsoft.com/en-us/library/aa380706(VS.85).aspx
就像我想知道这个接口的 GUID 一样:http://msdn.microsoft.com/en-us/library/aa381811(VS.85).aspx http://msdn.microsoft.com/en-us/library/aa381811(VS.85).aspx我在哪里可以找到它?
我从未遇到过正式的文档 - 但是,有几种方法可以查找它:
- 在 OLE 查看器(包含在 Visual Studio 工具中)中打开类型库(通常是服务器 DLL 本身)
- 在 SDK .idl's / .h's 中查找
- 编写简短的 VC++ 程序并使用 __uuidof(IInterface)
- 在 HKCR\Interface 下查找(尽管并非所有接口都需要在那里注册)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)