Kako koristiti prilagođene Kontekstni izbornik programa Internet Explorer da biste otvorili sliku u novoj kartici


UVOD


Uzorak demonstrira kako otvoriti sliku u novoj kartici pomoću prilagođene Kontekstni izbornik programa Internet Explorer. Ovaj uzorak obuhvaća sljedeće značajke:
  • Dodaje stavke standardni Kontekstni izbornik programa Internet Explorer.
  • Nadjačava uInternet Explorer standardni Kontekstni izbornik korištenjem pomoćnih objekata preglednika.
  • Uvodi prilagođene Kontekstni izbornik za Internet Explorer


Bilješke
  • Internet Explorer 8 omogućuje novi pristup zove ubrzivač ili aktivnost da biste dodali stavku Kontekstni izbornik programa Internet Explorer. Novi pristup je lakše korištenje ubrzivača za kopiranje informacija iz jedne web-stranice na drugu. Međutim, dodavanje stavke Internet Explorer standardni Kontekstni izbornik je još uvijek dobar način rada lokalno.
  • Ako nadjačati standardni Kontekstni izbornik Internet Explorer u objekt preglednika preglednika (BHO) koristite jednu aplikaciju za dodavanje u istovremeno nadjača sučelje IDocHostUIHandler . Ako koristite više aplikacija za dodatak, dodatak aplikacije možete jednostavno sukobu s jedna drugu. Možete stvoriti i korisnički definirana web-preglednik da biste postavili sučelje IDocHostUIHandler .
  • Prema zadanim postavkama na Windows Server 2008 ili Windows Server 2008 R2 je omogućena postavka Internet Explorer poboljšanu konfiguraciju sigurnosti (IE ESC). Stoga, Internet Explorer ne može učitati proširenja.

    Napomena Morate ručno onemogućite postavku IE ESC.

Na kojoj razini težine


Preuzimanje informacija o

Da biste preuzeli ovaj uzorak koda, kliknite jednu od sljedećih veza:

Pregled tehničkih informacija

Za korištenje prilagođene Kontekstni izbornik programa Internet Explorer da biste otvorili sliku u novoj kartici, slijedite ove korake:
  1. Dodajte stavke standardni Kontekstni izbornik programa Internet Explorer.
    Da biste dodali stavku standardni Kontekstni izbornik programa Internet Explorer, morate dodati ključ pod sljedeće stavke registra: HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt\
    Napomena Zadana vrijednost ključa je put do html datoteke koja obrađuje događaj.

    Klasa OpenImageMenuExt pruža dva načina za dodavanje i uklanjanje stavke registra. Također, možete koristiti Resource.htm ili OpenImage.htm html stranice i otvoriti sliku u novoj kartici:
    private const string IEMenuExtRegistryKey =
    "Software\\Microsoft\\Internet Explorer\\MenuExt";

    public static void RegisterMenuExt()
    {

    // If the key exists, CreateSubKey will open it.
    RegistryKey ieMenuExtKey = Registry.CurrentUser.CreateSubKey(
    IEMenuExtRegistryKey + "\\Open image in new tab");


    // Get the path of Resource\OpenImage.htm.
    FileInfo fileIofo = new FileInfo(Assembly.GetExecutingAssembly().Location);
    string path = fileIofo.Directory.FullName + "\\Resource\\OpenImage.htm";

    // Set the default value of the key to the path.
    ieMenuExtKey.SetValue(string.Empty, path);

    // Set the value of Name.
    ieMenuExtKey.SetValue("Name", "Open_Image");

    // Set the value of Contexts to indicate which contexts your entry should
    // appear in the standard context menu by using a bit mask consisting of
    // the logical OR of the following values:
    // Default 0x1
    // Images 0x2
    // Controls 0x4
    // Tables 0x8
    // Text selection 0x10
    // Anchor 0x20
    ieMenuExtKey.SetValue("Contexts", 0x2);

    ieMenuExtKey.Close();
    }
  2. Nadjačati standardni Kontekstni izbornik Internet Explorer korištenjem pomoćnih objekata preglednika.
    Klasa OpenImageHandler implementira sučelje IDocHostUIHandler i OpenImageHandler klase nadjačava i zadani Kontekstni izbornik. Klasa OpenImageBHO je pomoćni objekt preglednika procesna koji postavlja penImageHandler klase UIHandler klase html dokument. Dodatne informacije o stvaranju i uvodite BHO pogledajte uzorak CS VBBrowserHelperObject u Microsoft sve-u-jednom kod Framework.
    InternetExplorer explorer = pDisp as InternetExplorer;

    // Set the handler of the document in InternetExplorer.
    if (explorer != null)
    {
    NativeMethods.ICustomDoc customDoc = (NativeMethods.ICustomDoc)explorer.Document;
    customDoc.SetUIHandler(openImageDocHostUIHandler);
    }
  3. Uvođenje prilagođene Kontekstni izbornik s projekt instalacije.
    Uvođenje prilagođene Kontekstni izbornik s projekt instalacije, slijedite ove korake:
    1. Dodavanje programa klase installer (poznatom kao CustomIEContextMenuInstaller u uzorak koda) definirati prilagođene akcije u projektu Postava CSCustomIEContextMenu . Instalacijski program klase izvedena iz klase System.Configuration.Install.Installer . Uzorak koda koristi prilagođene akcije za dodavanje i uklanjanje Internet Explorer Kontekstni izbornik stavke registra. Zatim, uzorak koda registrira ili unregisters COM vidljive klase trenutni upravljanih sklop kada korisnik instalira ili deinstalira komponente.
      [RunInstaller(true), ComVisible(false)]
      public partial class CustomIEContextMenuInstaller : System.Configuration.Install.Installer
      {
      public CustomIEContextMenuInstaller()
      {
      InitializeComponent();
      }

      public override void Install(System.Collections.IDictionary stateSaver)
      {
      base.Install(stateSaver);

      OpenImageMenuExt.RegisterMenuExt();

      RegistrationServices regsrv = new RegistrationServices();
      if (!regsrv.RegisterAssembly(this.GetType().Assembly,
      AssemblyRegistrationFlags.SetCodeBase))
      {
      throw new InstallException("Failed To Register for COM");
      }
      }

      public override void Uninstall(System.Collections.IDictionary savedState)
      {
      base.Uninstall(savedState);

      OpenImageMenuExt.UnRegisterMenuExt();

      RegistrationServices regsrv = new RegistrationServices();
      if (!regsrv.UnregisterAssembly(this.GetType().Assembly))
      {
      throw new InstallException("Failed To Unregister for COM");
      }
      }
      }
    2. Stvaranje projekta Postava uvođenje Kontekstni izbornik programa Internet Explorer.
Napomena Dodatne informacije o tome kako stvarati i implementirati probna aplikacija potražite u datoteci Readme.txt u paketu za preuzimanje.

Tehnologija kategorija

Osnova za Windows

Jezici

Ovaj uzorak koda je dostupna u sljedeći programski jezici:

JezikNaziv projekta
Visual C#CSCustomIEContextMenu
Vizualna Basic.NETVBCustomIEContextMenu

Reference

Dodatne informacije o tome kako dodati stavke standardni Kontekstni izbornik posjetite sljedeće web-mjestu MSDN:Dodatne informacije o kontekstu izbornike i proširenja, posjetite sljedeće web-mjestu MSDN:Dodatne informacije o pomoćnih objekata preglednika, posjetite sljedeće web-mjestu MSDN:

Više informacija


Što je sve-u-jednom kod Framework?

Sve-u-jednom kod Framework prikazuje većina Microsoft razvojnih tehnika pomoću uzoraka koda u različitim jezicima programiranje. Svaki primjer pažljivo je odabrana, sastoji i dokumentirani Pokaži jedan uobičajeni scenarij šifru. Dodatne informacije o sve-u-jednom kod Framework, posjetite sljedeće Microsoftovo web-mjesto:

Kako pronaći više uzoraka sve-u-jednom kod Framework

Da biste pronašli više uzoraka sve-u-jednom Framework kod pretraživanja za "kbcodefx" s povezane ključne riječi na Microsoft podržava Web-mjesta. Ili, posjetite sljedeće Microsoftovo web-mjesto:
Rapid objavljivanje Izjava o odricanju odgovornosti
Microsoft corporation i/ili njegovi dobavljači odgovaraće provjerite nikakva jamstva o prikladnosti, pouzdanost ili točnost informacija i povezane grafike sadržavao spominju u ovom dokumentu. Takve informacije i povezane grafike su daje "kakav je" bez jamstava. Microsoft i/ili njegovi dobavljači odgovaraće Ovime se disclaim svih JAMSTAVA i uvjete s obzirom na ove informacije i povezane grafike, uključujući i sve implicitna jamstva i uvjete utrživosti, prikladnosti za određenu svrhu, Isključujemo trud, naslov i ne-povrede prava. Posebno prihvaćate da nijedan događaj bit Microsoft i/ili njegovi dobavljači će je obavezan za sve direktne, indirektne, KAZNENE, slučajne, posebne, posljedične štete ili štete neće uključujući, bez ograničenja, štete gubitak korištenje podataka ili dobit proizašle iz odsutnosti ili na bilo koji način povezan s korištenje ili Nemogućnost korištenja informacija i povezane grafike sadržavao spominju u ovom dokumentu, bez obzira na temelju ugovora, povreda, objektivne odgovornosti, uže odgovornosti ili drukčije, čak i ako je Microsoft ili bilo koji od njegovih dobavljača Svakako mogućnost štete.