Internet Explorer 9 (IE9) зависает после закрытия формы activex, например, обычного диалога (comdlg32.ocx) - PullRequest
0 голосов
/ 18 апреля 2011

мое приложение для внутренней сети позволяет пользователям просматривать и печатать с помощью элемента управления ActiveX CommonDialog (comdlg32.ocx).Это хорошо работало IE6-IE8.

На клиентских машинах IE9 общее диалоговое окно отображается как обычно, однако при нажатии кнопки «ОК» или «Отмена» и закрытии диалогового окна браузер зависает.Как будто браузер думает, что общий диалог все еще открыт.Это не ограничивается comdlg32 и влияет на другие компоненты ActiveX, которые мы тоже используем.

Однако, если я вызываю Alert ();после вызова commondialog браузер не зависает (немного грязно, если пользователь нажал «отмена»).

Диалоги HTML работают нормально, например, document.execCommand ('SaveAs', '1', 'fileName.txt'), но они не предлагают нужную мне функциональность (например, для поиска папки).

Чтобы прояснить эту проблему, я создал простой файл HTML с тегом объекта для commondialog и кнопку html, которая вызывала следующую функцию javascript:

function saveFile () {dialog.ShowSave();}

Действительно надеюсь, что кто-то может помочь здесь, поскольку я потратил неделю, пытаясь решить это!

PS Использование Windows 7 (пробовал Vista) IE9 на различных клиентских машинах.

Спасибо

Ник

1 Ответ

0 голосов
/ 21 апреля 2011

См. Выше редактировать. Это известная ошибка MS в IE9. Они говорят, что выпустят правильный патч в течение двух месяцев, но показанный выше взломщик работает как удовольствие.

...