如何为程序找到IE的GUID?

时间:2013-11-20 10:09:22

标签: c# internet-explorer

我正在开发BHO(Browser helper object)以便为IE制作插件。

在该程序中,我需要为该程序编写GUID IE。我不知道在哪里找到它。

我正在使用windows7和IE version 10.0.9200.16540

我现在正在使用此GUID

//GUID reference of IF

[
ComVisible(true),
InterfaceType(ComInterfaceType.InterfaceIsIUnknown),
Guid("FC4801A3-2BA9-11CF-A229-00AA003D7352")
]

我正在关注这些链接 http://www.codeproject.com/Articles/19971/How-to-attach-to-Browser-Helper-Object-BHO-with-C

http://www.codeproject.com/Articles/350432/BHO-Development-using-managed-code

1 个答案:

答案 0 :(得分:0)

您使用的GUID不适用于IE。它用于接口IObjectWithSite。 IE的版本无关紧要。只要您使用GUID IObjectWithSite实现接口,无论您使用哪个版本的IE都应该能够使用您的BHO。

如果要查找此类接口的GUID,快速方法是扫描注册表。例如,要查找IObjectWithSite的GUID:

C:\Users\kinjal.dixit>reg query HKLM  /s /f IObjectWithSite /d

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{FC4801A3-2BA9-11CF-A229-00AA003D7352}
(Default)    REG_SZ    IObjectWithSite

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Wow6432Node\Interface\{FC4801A3-2BA9-11CF-A229-00AA003D7352}
(Default)    REG_SZ    IObjectWithSite

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Classes\Interface\{FC4801A3-2BA9-11CF-A229-00AA003D7352}
(Default)    REG_SZ    IObjectWithSite

End of search: 3 match(es) found.

您的输出可能会有所不同,但此界面的GUID(IObjectWithSite)位于{}内的键中。

command line指定在HKEY_LOCAL_MACHINE键(HKLM)下以递归方式(/s)搜索模式' IObjectWithSite' (/f),仅限数据(/d)(即不匹配键或值)。

或者,如果您想了解GUID所引用的接口,您可以在注册表中搜索该模式,并查看数据中的字符串。