Question

Je voudrais ouvrir un nouvel onglet depuis mon BHO fait en C #.Process.Start (u) ouvre une nouvelle fenêtre, pas un onglet, et appelle les navigateurs par défaut, qui peuvent ne pas être IE.

Je souhaite ouvrir le nouvel onglet pour inviter l'utilisateur à télécharger et installer la dernière version du BHO.

Était-ce utile?

La solution

La bonne façon de procéder à partir d'un BHO est d'utiliser IWebBrowser2::Navigate2() ( doc link ) et transmettez navOpenInNewTab ( lien doc ).

L'interopérabilité existe sur pinvoke.net , vous pouvez donc probablement commencer parça.

Vous pouvez obtenir le pointeur IWebBrowser2 de votre site en suivant ces étapes:

  1. QueryInterface () votre site pour IID_IServiceProvider.
  2. QueryService () le IServiceProvider pour SID_STopLevelBrowser, IID_IServiceProvider.
  3. QueryService (), le IServiceProvider de niveau supérieur pour SID_SWebBrowserApp, IID_IWebBrowser2.

... mais je ne sais pas comment le faire en C #.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top