Dim r As Microsoft.Win32.RegistryKey
Dim WebBrowser32 As String = “SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION”
r = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(WebBrowser32, True)
r.Close()
有时候需要用到下面的方式来加载 32 位的 IE。
1.首先设置生成 -> 平台 选择 x86
2.定义出 32 位 WebBrowser 版本路径,这个路径可以在注册表中找到(cmd 中运行 regedit)
private const string WebBrowser32 = @“SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION”;//32位 WebBrowser 版本路径
private const string WebBrowser64 = @“SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION”;//64位 WebBrowser 版本路径
3.通过下面的内置方法去查找注册表中的项,如果存在就设置 WebBrowser 的版本号。
var registryKey = Registry.LocalMachine.OpenSubKey(WebBrowser32, true);//找到路径,并指定可以修改版本号
4.释放 registryKey
registryKey.Close();
就这样,我的 WinForm 就能调用到 32 位