TWebBrowser navegando com a versão 11 do IE.

Hoje vou compartilhar uma dica interessante:

Como fazer o componente TWebBrowser do Delphi usar a versão 11 do Internet Explorer

Introdução:
TWebBrowser prove acesso a funcionalidades do “Microsoft’s Shell Doc Object and Control Library” (SHDOCVW.DLL), ou seja é um componente para exibição de paginas hml.

Problema:
Essa dll por padrão usa a versão 4 ou 7 do Internet Explorer, mesmo que o usuário atualize o navegador para o o IE 11, ele continuará a usar essa configuração antiga.

Solução:
Configura o registro para usar a versão instalada do IE
no windows 10, abra o regedit e navegue para a chave:

jhneabnjngeiakje
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION

Crie dentro de FEATURE_BROWSER_EMULATION uma nova chave REG_DWORD com o nome do executável que esta usando o TWebBroser.
no meu exemplo estou usando o internet explorer 11 então devo criar a chave com o nome onix.exe e valores hexadecimal 2af9 ou decimal 11001

miofpmpoadiapjep
para outras versões usar:

Value Description
11001 (0x2AF9 Internet Explorer 11. Webpages are displayed in IE11 edge mode, regardless of the declared !DOCTYPE directive. Failing to declare a !DOCTYPE directive causes the page to load in Quirks.
11000 (0x2AF8) IE11. Webpages containing standards-based !DOCTYPE directives are displayed in IE11 edge mode. Default value for IE11.
10001 (0x2711) Internet Explorer 10. Webpages are displayed in IE10 Standards mode, regardless of the !DOCTYPE directive.
10000 (0x02710) Internet Explorer 10. Webpages containing standards-based !DOCTYPE directives are displayed in IE10 Standards mode. Default value for Internet Explorer 10.
9999 (0x270F) Windows Internet Explorer 9. Webpages are displayed in IE9 Standards mode, regardless of the declared !DOCTYPE directive. Failing todeclare a !DOCTYPE directive causes the page to load in Quirks.
9000 (0x2328) Internet Explorer 9. Webpages containing standards-based !DOCTYPE directives are displayed in IE9 mode. Default value for Internet Explorer 9.

Important  In Internet Explorer 10, Webpages containing standards-based !DOCTYPE directives are displayed in IE10 Standards mode.
8888 (0x22B8) Webpages are displayed in IE8 Standards mode, regardless of the declared !DOCTYPE directive. Failing to declare a !DOCTYPE directivecauses the page to load in Quirks.
8000 (0x1F40) Webpages containing standards-based !DOCTYPE directives are displayed in IE8 mode. Default value for Internet Explorer 8

Important  In Internet Explorer 10, Webpages containing standards-based !DOCTYPE directives are displayed in IE10 Standards mode.
7000 (0x1B58) Webpages containing standards-based !DOCTYPE directives are displayed in IE7 Standards mode. Default value for applications hosting the WebBrowser Control.

feche o registro e abra o sistema:

Abaixo como estava antes de mudar a configuração
Antes de mudar a configuração:

Abraços
Marcos Nielsen

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s