VC 用微软插件或CHtmlView 开发浏览器时如何指定使用的IE内核版本

用VC开发自己的浏览器时,我们一般用浏览器插件或CHtmlView,但是开发完后,你会发现其内核用的是IE6的,那么要如何指定要使用的内核版本呢?

可以在注册表添加应用程序使用的内核版本

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION

"MyApplication.exe" = dword 9000
MyApplication.exe改成你自己的程序名称。


参考代码如下:

void AdaptIeVersion()
{
TCHAR szVersion[64] = {0};   
DWORD dwSize = 64;   
HKEY hKey = NULL;  

// 先获取IE版本
if (ERROR_SUCCESS == RegOpenKeyEx(HKEY_LOCAL_MACHINE, TEXT("SOFTWARE\\Microsoft\\Internet Explorer"), 0, KEY_READ, &hKey))
{
RegQueryValueEx(hKey, TEXT("Version"), 0, NULL, (LPBYTE)szVersion, &dwSize);
RegCloseKey(hKey);
}


TCHAR *pos = _tcschr(szVersion, TEXT('.'));
if (NULL == pos)
return;


*pos = 0;


DWORD dwIeKenel = _ttoi(szVersion) * 1000;

// 设置应用程序使用的IE版本
if (ERROR_SUCCESS == RegOpenKeyEx(
HKEY_LOCAL_MACHINE
, TEXT("SOFTWARE\\Microsoft\\Internet Explorer\\MAIN\\FeatureControl\\FEATURE_BROWSER_EMULATION")
, 0
, KEY_WRITE
, &hKey))
{
dwSize = sizeof(dwIeKenel);
RegSetValueEx(hKey, ExeName, 0, REG_DWORD, (LPBYTE)&dwIeKenel, dwSize);
RegCloseKey(hKey);
}
}

你可能感兴趣的:(internet,VC,explorer)