Ich schreibe ein Add-on für Internet Explorer 11.Warum meine Add-ons im Internet Explorer "Add-ons verwalten" -Menü anzeigen?
Ich habe bereits guid Variablen hinzugefügt:
[ComVisible(true), Guid("86524891-49EB-4F46-BAE3-C5545B81A671"), ClassInterface(ClassInterfaceType.None)]
Und bereits hinzugefügt Verweise auf MSHTML und SHDocVw Und schon schreiben ComRegister Funktion austragen Funktion
[ComRegisterFunction]
public static void RegisterBHO(Type type)
{
RegistryKey registryKey = Registry.LocalMachine.OpenSubKey(BHOKEYNAME, true);
if (registryKey == null)
{
registryKey = Registry.LocalMachine.CreateSubKey(BHOKEYNAME);
}
string guid = type.GUID.ToString("B");
RegistryKey ourKey = registryKey.OpenSubKey(guid);
if (ourKey == null)
{
ourKey = registryKey.CreateSubKey(guid);
}
ourKey.SetValue("Alright", 1);
registryKey.Close();
ourKey.Close();
}
[ComUnregisterFunction]
public static void UnregisterBHO(Type type)
{
RegistryKey registryKey = Registry.LocalMachine.OpenSubKey(BHOKEYNAME, true);
string guid = type.GUID.ToString("B");
if (registryKey != null)
{
registryKey.DeleteSubKey(guid, false);
}
}
Und ich habe schon/get-Website Funktionen einstellen:
public int SetSite([MarshalAs(UnmanagedType.IUnknown)] object site)
{
if (site != null)
{
webBrowser = (SHDocVw.WebBrowser)site;
webBrowser.DocumentComplete += new DWebBrowserEvents2_DocumentCompleteEventHandler(this.OnDocumentComplete);
webBrowser.BeforeNavigate2 += new DWebBrowserEvents2_BeforeNavigate2EventHandler(this.OnBeforeNavigate2);
webBrowser.NavigateComplete2 += WebBrowser_NavigateComplete2;
}
else
{
webBrowser.DocumentComplete -= new DWebBrowserEvents2_DocumentCompleteEventHandler(this.OnDocumentComplete);
webBrowser.BeforeNavigate2 -= new DWebBrowserEvents2_BeforeNavigate2EventHandler(this.OnBeforeNavigate2);
webBrowser.NavigateComplete2 -= WebBrowser_NavigateComplete2;
webBrowser = null;
}
return 0;
}
private void WebBrowser_NavigateComplete2(object pDisp, ref object URL)
{
}
public int GetSite(ref Guid guid, out IntPtr ppvSite)
{ IntPtr punk = Marshal.GetIUnknownForObject (WebBrowser); int hr = Marshal.QueryInterface (punk, ref guid, aus ppvSite); Marshal.Release (Punk); Rückkehr hr; }
Dann habe ich ein Setup-Projekt:
Also, wenn ich ein Setup das Projekt, kann ich nicht sehen, meine "add-on" im Internet Explorer. Irgendwelche Vorschläge?
Geänderter Fragetext für Klarheit und Codeformatierung – ManoDestra