0
Я использую этот код, чтобы разрешить эмуляцию функций браузера в моем МОФ применения:FEATURE_BROWSER_EMULATION Windows XP
string executablePath = Environment.GetCommandLineArgs()[0];
MessageBox.Show(executablePath);
string executableName = System.IO.Path.GetFileName(executablePath);
MessageBox.Show(executableName);
MessageBox.Show("Is64BitOperatingSystem : " + Environment.Is64BitOperatingSystem);
string key = string.Empty;
if (Environment.Is64BitOperatingSystem)
key = @"SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION";
else
key = @"SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION";
RegistryKey registrybrowser = Registry.CurrentUser.OpenSubKey(key, true);
MessageBox.Show(registrybrowser.ToString());
if (registrybrowser == null)
{
RegistryKey registryFolder = Registry.CurrentUser.OpenSubKey
(@"SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl", true);
MessageBox.Show(registryFolder.ToString());
registrybrowser = registryFolder.CreateSubKey("FEATURE_BROWSER_EMULATION");
}
registrybrowser.SetValue(executableName, 0x02710, RegistryValueKind.DWord);
registrybrowser.Close();
Когда я пытаюсь запустить мое приложение на Windows XP (SP2, FW 4), объект registrybrowser является null, потому что ключ не найден. Как настроить эмуляцию этой функции в Windows XP?
32-разрядная операционная система не имеет ключа Wow6432Node. Просто удалите тест Is64BitOperatingSystem. –
Вы правы. И у меня не было ключа FeatureControl на моем Windows XP. Мне пришлось добавить его по коду. – Ben