Scripting.Filesystemobject filemove, запись файла не работает из JavaScript в браузере IE (обходные пути, документ?) - PullRequest
2 голосов
/ 26 января 2010

Я знаю, что это огромная дыра в безопасности, чтобы использовать Scripting.Filesystemobject из javascript в браузере.Я слышал слух, что MS закрывает эту дыру в последней версии Office.Это было бы плохой новостью для корпоративного веб-приложения, над которым я работаю, которое имеет несколько важных функций, которые зависят от доступа к объекту Scripting.Filesystem, например, выписывание XML-файлов или перемещение аудиофайлов.но мне не удалось найти «трудную» документацию по этому вопросу, и хотя мое локальное устройство разработки демонстрирует такое поведение, другие машины здесь (у которых нет последней версии чего-либо, кроме IE) не демонстрируют поведение.Если кто-то может указать мне на документацию, подтверждающую это, или на обходной путь, не связанный с созданием элемента управления ActiveX, я был бы очень признателен.

Спасибо!

Ответы [ 3 ]

1 голос
/ 26 января 2010

В этой статье kb240797 обсуждаются биты уничтожения IE. В реестре вы найдете этот ключ: -

HKEY_LOCAL_MACHINE \ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ \ Microsoft \ Internet Explorer \ ActiveX совместимость

, в котором вы найдете набор идентификаторов CLSID (идентификатор CLSID для FileSystemObject: {0D43FE01-F093-11CF-8940-00A0C9054228}). Если значение «Флаги совместимости» имеет бит 1024 (0x400) на (бит уничтожения), компонент activex блокируется.

Я также слышал, что MS имеет или планирует убить FileSystemObject, но я не видел этого официально, и это не так в моей нынешней системе. Однако может случиться так, что они могут внутренне заблокировать его так, что даже игра с битом уничтожения не поможет.

0 голосов
/ 26 января 2010

Я не знаю, помогает ли это, но я ничего не слышал по поводу того, что FileSystemObject не рекомендуется. Я хотел бы видеть ваши источники для этого. Следует также отметить, что последним «основным» элементом ActiveX, который был объявлен устаревшим из-за угрозы безопасности, был CAPICOM, но это было объявлено с выпуском Vista и окончательно удалено в Windows 7. Документация также была изменена, чтобы отразить это устаревание предложить альтернативы заранее.

Многие (МНОГИЕ!) Сценарии оболочки полагаются на FileSystemObject для файловых операций, поэтому мне трудно поверить, что это будет считаться устаревшим без предоставления альтернативы. Если это имеет значение, FileSystemObject по-прежнему доступен из гаджетов Windows Desktop, которые работают на движке IE.

0 голосов
/ 26 января 2010

Вы не должны, не должны когда-либо обращаться к файловой системе пользователей через браузер, по законным или незаконным причинам.

Самый, самый лучший пример доступа к локальному хранилищу делается через системы, подобные Google Gears, и даже эти системы часто оспариваются пуристами веб / тонких клиентов.

...