2

У меня есть старое веб-приложение VB6/ActiveX, которое плохо работает с IE9

В частности, когда приложение открывает модальное окно, оно блокирует родительские окна. Вроде хорошо работает под IE7 и IE8

Есть ли настройки, которые я могу изменить, чтобы сделать это вести себя лучше. Я попытался добавить сайт в настройки Comparability View в меню Tools, но безрезультатно.

Редактировать:

Я уже добавил веб-сайт на свои Trusted Sites и разрешил все параметры ActiveX (фактически все разрешено)

4 ответа4

2

Исправлено MS:http://support.microsoft.com/kb/2534409

0

Вы используете TabProcGrowth = 0 для отладки? Мой ActiveX/IE9 блокировался из-за этого. Мне пришлось сбросить это значение до 1, чтобы иметь возможность правильно запустить мой AX (но, конечно, без отладки)

0

Я хотел бы попробовать это для каждой зоны, в которой он может использоваться (я буду ссылаться на зону Интернета): Инструменты> Параметры Интернета> Безопасность> Пользовательский уровень и прокрутите вниз до области «Элементы управления ActiveX и плагины» и понизьте безопасность для всех их в качестве теста. Если это исправляет, поднимите их один за другим, пока они снова не сломаются, затем отключите эту настройку.

0

Похоже, что :

Поскольку VB6 не поддерживается, не гарантируется полная совместимость с IE9 на основе управления WebBrowser.

IE9 отключает родительские окна, когда отображается модальное диалоговое окно vb6, но не включает их снова, когда закрывается.

Вот обходной путь, который я добавил к своему коду после вызова, чтобы показать модальное диалоговое окно:

Me.Show vbModal
Call EnableParentWindows(Me.hwnd)
...

Private Declare Function EnableWindow& Lib "user32" (ByVal hwnd As Long, ByVal fEnable As Long)

Public Function EnableParentWindows(ByVal hwnd As Long) As Boolean
    ' This function is intended to fix the IE9 modal dialog freeze problem
    While hwnd <> 0
        EnableWindow hwnd, &O1
        hwnd = GetParent(hwnd)
    Wend
    EnableParentWindows = True
End Function

Это работает для меня.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .