(проблема edit исправлена, решение в конце)
У меня есть приложение Delphi 2006 (32-битное), использующее WebBrowser OCX. Я пишу значение реестра FEATURE_BROWSER_EMULATION/myapp.exe = 0, чтобы иметь самый высокий режим рендеринга IE. Работал нормально через WinXP-Win7-Win8-Win10(до последних патчей). Последние патчи где-то внесли изменения, теперь холст веб-браузера пуст, но нигде нет ошибок.
Он все еще вызывает http-запрос, поэтому не полностью сломан, просто ничего не отображает на экране. Запрос Myapp использует спартанский пользовательский агент (Edge/12), который имеет смысл, я запрашивал эмуляцию максимальной функции.
Это список агентов пользователя из автономных браузеров и myapp до/после патча Win10 10074->10131.
IE Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0), например Gecko
Spartan Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.9600
myapp.exe (исправление 10074) Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/39.0.2171.71 Safari/537.36 Edge/ 12,0
myapp.exe (исправление 10131) Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/ 12.9200
Среда Win10_patch_10074 работала нормально, но patch_10131 отображается пустым, но вызывает первоначальный HTTP-запрос. Он не вызывает никаких ссылок на HTML-странице ответа. Мое приложение не изменено.
Мне нужно проверить снижение значения реестра, если это поможет, но, к сожалению, ограничить уровень эмуляции IE ниже доступного.
ps: Мой Delphi2006 действительно старый, но я больше не собираюсь его обновлять, и он будет создавать 32-битные приложения. Устаревшие проблемы, но это реальность программного обеспечения.
Это блог содержит дополнительную информацию о feature_browser_emulation
изменить Я взял самое высокое значение IE11 из эта предоставленная Microsoft таблица и теперь все работает. Я установил значение реестра 11001 (0x2AF9).
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION
myapp.exe = 11001(0x2AF9)
myapp (патч 10131, реестр 11001): Mozilla/5.0 (Windows NT 6.2; WOW64; Trident/7.0; rv:11.0), как Gecko
person
Whome
schedule
22.05.2015