Что я не могу использовать, когда UseSafeSubset имеет значение true?
Когда я использую MSScriptControl
в VB6 и установить UseSafeSubset = True
что я не могу сделать? Я имею в виду, какие элементы управления я не могу использовать? Или, может быть, некоторые основные объекты не могут быть созданы или использованы? Может я не могу CRUD файлы? Мне нужен окончательный список, пожалуйста.
Этот поток сообщает о специальном флаге в реестре, который устанавливает, какие элементы управления блокируются при UseSafeSubset = True
, но это не уточняет это. Там написано, что поиск должен быть простым, но два дня поиска в Google ничего не нашли.
1 ответ
В VBScript были удалены все небезопасные команды из VBA. Так что нет доступа к файлу или реестру. Только CreateObject/GetObject может повлиять на систему.
Из справки (MsScript.hlp в C:\Windows\System32)
замечания
Используемый механизм сценариев определяет, когда и когда установлено свойство UseSafeSubset. Если язык не указан (свойство Language), UseSafeSubset может быть установлен в любое время.
Объекты и процедуры, которые нельзя использовать, когда для UseSafeSubset установлено значение True, идентичны тем, которые ограничены самой высокой настройкой безопасности браузера.
Браузер использует это (и IOleSafety). От MSDN, октябрь 2001 г.
Как упоминалось ранее, Internet Explorer проверяет системный реестр, чтобы определить, является ли элемент управления безопасным для инициализации и / или создания сценариев. Internet Explorer проверяет реестр, вызывая метод ICatInformation::IsClassOfCategories, чтобы определить, поддерживает ли элемент управления указанную категорию (безопасно для инициализации или безопасно для сценариев).
Если элемент управления использует Диспетчер категорий компонентов, чтобы зарегистрировать себя как безопасный, запись реестра для этого элемента управления содержит ключ Реализованные категории, который содержит один или два подраздела. Один подраздел устанавливается, если элемент управления поддерживает безопасную инициализацию, а другой подраздел - если элемент управления поддерживает безопасные сценарии. Подраздел безопасной инициализации соответствует CATID_SafeForInitializing; подраздел безопасного скриптинга соответствует CATID_SafeForScripting. (В отличие от других подразделов для категорий компонентов, определенных в файле Comcat.h, подразделы для безопасной инициализации и сценариев определены в Objsafe.h.)
См. Зоны безопасности URL для того, что ограничено Это высокий шаблон (он же зона с ограниченным доступом)
URL action URL policy
URLACTION_ACTIVEX_OVERRIDE_OBJECT_SAFETY URLPOLICY_DISALLOW
URLACTION_ACTIVEX_RUN URLPOLICY_DISALLOW
URLACTION_CHANNEL_SOFTDIST_PERMISSIONS URLPOLICY_CHANNEL_SOFTDIST_PROHIBIT
URLACTION_COOKIES URLPOLICY_DISALLOW
URLACTION_COOKIES_SESSION URLPOLICY_DISALLOW
URLACTION_CREDENTIALS_USE URLPOLICY_CREDENTIALS_MUST_PROMPT_USER
URLACTION_CROSS_DOMAIN_DATA URLPOLICY_DISALLOW
URLACTION_DOWNLOAD_SIGNED_ACTIVEX URLPOLICY_DISALLOW
URLACTION_DOWNLOAD_UNSIGNED_ACTIVEX URLPOLICY_DISALLOW
URLACTION_HTML_FONT_DOWNLOAD URLPOLICY_QUERY
URLACTION_HTML_SUBFRAME_NAVIGATE URLPOLICY_DISALLOW
URLACTION_HTML_SUBMIT_FORMS URLPOLICY_QUERY
URLACTION_HTML_USERDATA_SAVE URLPOLICY_DISALLOW
URLACTION_JAVA_PERMISSIONS URLPOLICY_JAVA_HIGH
URLACTION_SCRIPT_JAVA_USE URLPOLICY_DISALLOW
URLACTION_SCRIPT_PASTE URLPOLICY_DISALLOW
URLACTION_SCRIPT_RUN URLPOLICY_ALLOW
URLACTION_SCRIPT_SAFE_ACTIVEX URLPOLICY_DISALLOW
URLACTION_SHELL_FILE_DOWNLOAD URLPOLICY_DISALLOW
URLACTION_SHELL_INSTALL_DTITEMS URLPOLICY_DISALLOW
URLACTION_SHELL_MOVE_OR_COPY URLPOLICY_QUERY
URLACTION_SHELL_VERB URLPOLICY_DISALLOW