ShellUIHelper
IE7 では、ShellUIHelper に検索プロバイダの登録機能などを定義している IShellUIHelper2 が追加実装されているので SHDocVw が次のようになる。Guid は A7FE6EDA-1932-4281-B881-87B31B8BC52C である。
using System.Runtime.InteropServices; namespace SHDocVw { [Guid("A7FE6EDA-1932-4281-B881-87B31B8BC52C")] [CoClass(typeof(ShellUIHelperClass))] public interface ShellUIHelper : IShellUIHelper2 { } }
このインスタンスをIE6環境で生成しようとすると、IShellUIHelper2 がないため InvalidCastException で落ちる。そのため、個別に COM コクラスを定義する。以前のGuid は、64AB4BB7-111E-11D1-8F79-00C04FC2FBE1 である。
using System.Runtime.InteropServices; namespace net.tilfin { [ComImport(), Guid("64AB4BB7-111E-11D1-8F79-00C04FC2FBE1")] public class ShellUIHelper { } }