Maison > développement back-end > C++ > Comment puis-je utiliser la dernière version Internet Explorer avec le contrôle C # WebBrowser?

Comment puis-je utiliser la dernière version Internet Explorer avec le contrôle C # WebBrowser?

Mary-Kate Olsen
Libérer: 2025-01-30 14:41:11
original
928 Les gens l'ont consulté

How Can I Use the Latest Internet Explorer Version with the C# WebBrowser Control?

La dernière version d'Internet Explorer

Le contrôle WebBrowser dans l'application

C # Windows Forms utilise Internet Explorer 7 par défaut. Bien qu'il puisse être modifié à 9 via la technologie "Simulation du navigateur", cela ne peut pas accéder à la dernière version Internet Explorer.

Définissez l'élément de registre IE pour le contrôle WebBrowser

Pour permettre au contrôle WebBrowser d'utiliser la dernière version Internet Explorer, vous devez configurer un élément de registre. Ce qui suit est un fragment de code:

La valeur de registre de différentes versions IE

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

private void SetIEKeyForWebBrowserControl(string appName, int ieVersion)

{

    try

    {

        string keyPath = Environment.Is64BitOperatingSystem ?

            @"SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION" :

            @"SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION";

 

        Microsoft.Win32.RegistryKey registryKey = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(keyPath, true);

 

        string appKeyName = string.Format("{0}.exe", appName);

        if (registryKey.GetValue(appKeyName) == null)

        {

            registryKey.SetValue(appKeyName, ieVersion, Microsoft.Win32.RegistryValueKind.DWord);

            MessageBox.Show("应用程序设置已成功应用");

        }

        else

        {

            MessageBox.Show("应用程序设置已存在");

        }

    }

    catch (Exception ex)

    {

        MessageBox.Show("应用程序设置失败", ex.Message);

    }

}

Copier après la connexion

Les valeurs de clés suivantes correspondent à la version spécifique de l'explorateur Internet:

11001 (0x2af9) -Tact

11000 (0x2af8) -Tact
    10001 (0x2711) -Teternnet Explorer 10 (ie10 Mode standard)
  • 10000 (0x2710) -Teternnet Explorer 10 (IE10 Mode standard -default)
  • 9999 (0x270f) -ternet Explorer 9 (Mode standard IE9)
  • 9000 (0x2328) -TYSNET Explorer 9 (Mode IE9 -Default)
  • 8888 (0x22b8) -ternet Explorer 8 (Mode standard IE8)
  • 8000 (0x1f40) -ternet Explorer 8 (mode IE8 -Default)
  • <定> Déterminez la dernière version IE
  • Pour obtenir la dernière version IE qui a été installée, veuillez utiliser le code suivant:

<为> Définissez automatiquement l'élément de registre pour la dernière version IE

Ce qui suit est un exemple de code, qui est utilisé pour déterminer et définir automatiquement l'élément de registre pour la dernière version IE:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

using mshtml;

 

public static int GetLatestIEVersion()

{

    int version = 0;

    try

    {

        object versionObject = InternetExplorerManager.GetActiveVersion();

        if (versionObject == null) throw new Exception("无法确定最新的IE版本。");

        version = (int)versionObject;

    }

    catch { version = 7; }

    return version;

}

Copier après la connexion

<提> Autres conseils

Pour les systèmes d'exploitation 64-bits, assurez-vous que les autorisations nécessaires ont été accordées dans le registre, par exemple, en utilisant la propriété "DevideDexecutionLevel" en utilisant la "demande d'emploi" demandedExecutionLeve "dans la liste des applications.

1

2

3

4

5

private void Form1_Load(object sender, EventArgs e)

{

    int latestVersion = GetLatestIEVersion();

    SetIEKeyForWebBrowserControl("MyApplication", latestVersion);

}

Copier après la connexion
Si des problèmes de compatibilité se produisent, envisagez d'ajouter

Meta Marks à votre page Web.

Cette réponse révisée simplifie le code, supprime la vérification inutile de
    (car le définition de la valeur se remplacera s'il existe) et clarifie les explications.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal