Включить Javascript для локальных файлов в VBA WebBrowser Control - PullRequest
0 голосов
/ 10 февраля 2011

Я несколько озадачен тем, что IE7 по умолчанию включает Javascript в зоне Интернета, но отключает его для локальных файлов HTML [Моя компьютерная зона] (Интернет теперь более безопасен, чем ваш локальный компьютер?), Но в любом случае ...

У меня есть приложение в VBA, использующее элемент управления WebBrowser для открытия локального файла HTML (скажем, file: /// C: \ somefile.html), в котором есть Javascript. Я хотел бы, чтобы этот Javascript был выполнен. Есть ли способ (из кода VBA) заставить браузер разрешить этот Javascript? (учитывая, что по умолчанию он отключен)

Было бы идеально, если бы мне не пришлось полагаться на какие-либо изменения в реестре или указывать пользователю приложения изменять настройки Internet Explorer. Я также попытался настроить локальный веб-сервер и обслуживать файл оттуда. Очевидно, что это прекрасно работает, поскольку IE считает это зоной Интернета, но мне бы хотелось, чтобы мне не пришлось также пытаться кодировать веб-сервер из VBA.

Система - Windows XP с IE7.

Спасибо

1 Ответ

0 голосов
/ 10 февраля 2011

Хорошо, возможно, это не "настоящее" решение, но этого достаточно для моих нужд.Можно использовать функцию WebBrowser.Document.parentWindow.execScript для добавления Javascript на страницу.Я полагаю, что здесь возможно реализовать что-то похожее на функцию прототипа evalScripts , чтобы она эффективно оценивала любые сценарии на странице.Может потребоваться перепроверить, что сценарии не были разрешены потенциально различными настройками безопасности.Я не знаю, как это влияет на связанные файлы сценариев.

(для моего собственного приложения я контролирую файл HTML, поэтому просто извлекаю весь Javascript в отдельный файл и выполняю его, используя вышеуказанный метод).1006 *

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...