Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
540 views
in Technique[技术] by (71.8m points)

internet explorer 8 - How to set FEATURE_BROWSER_EMULATION to IE8 mode?

We are using an embedded SWT Browser in a Java application. The SWT Browser wraps an IE8 WebBrowser Control object. I am running into the well-known issue that by default, the WebBrowser Control uses IE7 mode instead of IE8 mode. (See http://blogs.msdn.com/b/ie/archive/2009/03/10/more-ie8-extensibility-improvements.aspx)

Per this and other articles, I am trying to set the FEATURE_BROWSER_EMULATION registry value for my application so that the Browser defaults to IE8 mode, but I am having mixed success. Setting it to IE8 Standards Mode using the value 8000 does not work, butsetting it to "Forced" IE8 Standards Mode using value 8888 does.

I am testing this by loading the page in the SWT Browser and then executing the javascript

browser.execute("alert(document.documentMode);");

The result is 7 if the key value does not exist or is 8000. The result is 8 if the key value is 8888. The URL I am testing against is http://stackoverflow.com, which includes the following

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

Does anyone know what I am doing wrong?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Check this Solution First :

Regarding IE9 WebBrowser control

if it does not meet your need, here is the registry solution


To run a WebBrowser control in IE11 Standards Mode, use the following new value into the registry:

32 bits: [(HKEY_CURRENT_USER or HKEY_LOCAL_MACHINE)SoftwareMicrosoftInternet ExplorerMainFeatureControlFEATURE_BROWSER_EMULATION]

64 bits: [(HKEY_CURRENT_USER or HKEY_LOCAL_MACHINE)Softwarewow6432nodeMicrosoftInternet ExplorerMainFeatureControlFEATURE_BROWSER_EMULATION]
 "DesignU.exe" = dword 11000 (Hex: 0x2af8)

To run a WebBrowser control in IE10 Standards Mode, use the following new value into the registry:

32 bits: [(HKEY_CURRENT_USER or HKEY_LOCAL_MACHINE)SoftwareMicrosoftInternet ExplorerMainFeatureControlFEATURE_BROWSER_EMULATION]

64 bits: [(HKEY_CURRENT_USER or HKEY_LOCAL_MACHINE)Softwarewow6432nodeMicrosoftInternet ExplorerMainFeatureControlFEATURE_BROWSER_EMULATION]
 "DesignU.exe" = dword 10000 (Hex: 0x2710)

To run a WebBrowser control in IE9 Standards Mode, use the following new value into the registry:

32 bits: [(HKEY_CURRENT_USER or HKEY_LOCAL_MACHINE)SoftwareMicrosoftInternet ExplorerMainFeatureControlFEATURE_BROWSER_EMULATION]

64 bits: [(HKEY_CURRENT_USER or HKEY_LOCAL_MACHINE)Softwarewow6432nodeMicrosoftInternet ExplorerMainFeatureControlFEATURE_BROWSER_EMULATION]
 "DesignU.exe" = dword 9000 (Hex: 0x2328)

To run a WebBrowser control in IE8 Standards Mode, use the following new value into the registry:

32 bits: [(HKEY_CURRENT_USER or HKEY_LOCAL_MACHINE)SoftwareMicrosoftInternet ExplorerMainFeatureControlFEATURE_BROWSER_EMULATION]

64 bits: [(HKEY_CURRENT_USER or HKEY_LOCAL_MACHINE)Softwarewow6432nodeMicrosoftInternet ExplorerMainFeatureControlFEATURE_BROWSER_EMULATION]
 "DesignU.exe" = dword 8000 (Hex: 0x1F40)

To run in IE7 Standards Mode, use the following registry value:

32 bits: [(HKEY_CURRENT_USER or HKEY_LOCAL_MACHINE)SoftwareMicrosoftInternet ExplorerMainFeatureControlFEATURE_BROWSER_EMULATION]

64 bits: [(HKEY_CURRENT_USER or HKEY_LOCAL_MACHINE)Softwarewow6432nodeMicrosoftInternet ExplorerMainFeatureControlFEATURE_BROWSER_EMULATION]
 "DesignU.exe" = dword 7000 (Hex: 0x1B58)

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...