Отключите опцию «Открыть с помощью» в загрузках Firefox (заставьте Firefox всегда сохранять все файлы)

12

Симптомы

  • Пользователи открывают свои учетные записи веб-почты, нажимают на некоторые вложения и нажимают «Открыть с помощью Word».
  • Пользователи редактируют свои драгоценные документы часами. Пользователи сохраняют слово doc и выходят.
  • Пользователи не могут найти файл.
  • Пользователи берут факелы и вилы (последний шаг необязательно) .

введите описание изображения здесь

Причина проблемы

Диалог загрузки для Firefox показывает две опции: « Сохранить файл » и « Открыть с помощью ».

введите описание изображения здесь

Выбрав «Открыть с помощью», Firefox загрузит файл во временную папку и откроет соответствующее приложение. Я хочу предотвратить это поведение .

Что я пробовал

Я сделал домашнее задание и произвел поиск в MozillaZine и в Базе знаний (как здесь , здесь или здесь ), и если я правильно понял, диалоговое окно загрузки будет зависеть не от расширения файла, а скорее от его типа пантомимы.

Я знаю, что могу установить поведение, перейдя в Настройки> Приложения, например:

введите описание изображения здесь

Однако:

  • Firefox использует тип mime, сообщаемый сервером . Но он может быть неверным, опущенным или избыточным (один тип файла может иметь несколько типов MIME или наоборот).
  • Firefox запоминает флажок «Делать это автоматически для файлов, подобных этому с настоящего момента», для каждого типа миме. Если я хочу применить определенное поведение, я должен вручную установить его для каждого типа пантомимы.
  • Я не могу создавать новые записи в списке приложений. Заполняется только тогда, когда новая загрузка сделана из незарегистрированного типа пантомимы. Только тогда я могу изменить поведение в списке.
  • Я могу отредактировать файл mimetypes.rdf , применив поведение «сохранить файл», но не смог найти способ применить это ко всем файлам.

Мне нужен способ (предпочтительно) сделать невозможным открытие с помощью внешнего приложения или, по крайней мере, принудительно сохранить файл.

Я знаю , что могу установить browser.altClickSaveв about:configиметь его сохранить файл , когда я нажимаю , нажав ALT, но мне нужно какое - то решение , которое не требует взаимодействия с пользователем.

Этот бразильский парень
источник
Просто автоматизируйте эти операции ... Попробуйте это: addons.mozilla.org/en-US/firefox/addon/imacros-for-firefox/…
climenole
Автоматизировать какие операции? Это просто щелчок, чтобы загрузить. Мой вопрос был длинным, потому что я хотел предоставить достаточно информации. Кроме того, если пользователи не могут быть обеспокоены (или не могут понять, что происходит), нажимая «загрузить» вместо того, чтобы открывать, то, конечно, более сложное решение не будет работать. Мне нужно то, что не требует взаимодействия с пользователем
Этот бразильский парень
Итак, вам нужен компьютер без пользователя компьютера ... ОК. :)
Climenole
Я только что узнал , Linux имеет /usr/share/mime-info/gnome-vfs.mimeи /usr/share/mime/globsпапки. Я не уверен, что это повлияет на поведение Firefox; и, очевидно, его нет в Windows.
Этот бразильский парень
1
Вы можете просто изменить входящий тип MIME с одним из нескольких расширений. Установите для него тип MIME, который всегда загружается. Извините, сейчас не хватает времени для полного ответа, но вы достаточно умен, чтобы понять идею.
RockPaperLizard

Ответы:

5

Создание главного файла mimeTypes.rdf, который вы развертываете для пользователей, является лучшим решением.

Откройте mimeTypes.rdf в редакторе, который хорошо обрабатывает документы в стиле XML (например, Notepad ++)

Найдите и замените первую строку второй:

NC:saveToDisk="false"
NC:saveToDisk="true"
  and
NC:alwaysAsk="true"
NC:alwaysAsk="false"  

Я бы также "засеял" ваш мастер mimeTypes.rdf экзотикой, накопленной вашими пользователями:

  1. Скопируйте mimeTypes.rdf от 2-3 пользователей с самым интенсивным использованием вложений веб-почты
  2. Сравните типы пользователей с вашим мастером:

cmd.exe

find "<RDF:li RDF:resource=" Master_mimeTypes.rdf > MasterMimes.txt   #generate list of mimetypes
find "<RDF:li RDF:resource=" User1_mimeTypes.rdf > User1Mimes.txt     #generate list of mimetypes
fc MasterMimes.txt User1Mimes.txt                                     #compare lists of mimetypes

Если вы найдете какие-либо новые типы, возьмите всю строфу из файла пользователя и добавьте в мастер.

retriever123
источник
2
К сожалению, это не практично. Я понятия не имею, какие типы я буду загружать в будущем. Кроме того, некоторые типы файлов (например, exes) вообще не работают.
Synetech
0

ПРИМЕЧАНИЕ . Инструкции относятся только к Windows, но будут работать для других ОС. Это решение не будет работать для PDF-файлов без отключения PDF.js и / или других плагинов для просмотра PDF . Он также не будет работать с файлами, которые Firefox может открывать напрямую (например, файлы MP3, изображения, видео, text/plainфайлы и т. Д.)


Что ж, это решение не так свободно от взаимодействия с пользователем, как хотелось бы, но если у вас есть возможность предоставлять настроенные версии Firefox или вы можете запускать пакетные сценарии на компьютере каждого пользователя, вы можете попробовать это:

  1. Установите последнюю бета-версию автоматического сохранения папки (ASF)

  2. Создайте фильтр, подходящий для любого типа файла из любого домена, подобного этому.
    Также убедитесь, что вы прочитали 1-е руководство по установке ASF фильтр

  3. Настройте ASF для автоматического выбора Save Fileиз диалогового окна «Сохранить» Выберите автосохранение

  4. Установите FEBE и сделайте резервную копию профиля браузера (включая настройки) и восстановите их на отдельных компьютерах

Или, если вы можете запускать пакетные сценарии на компьютере пользователя, запустите следующий сценарий (после установки ASF):

Имя файла: настроить ASF.bat
@ECHO OFF
:: Убейте Firefox, если он запущен, иначе prefs.js не будет обновлен
START "" / WAIT / B "taskkill" / F / IM firefox.exe

:: Найдите каталог профиля пользователя Firefox и перейдите к нему
SET ProfileDir =% APPDATA% \ Mozilla \ Firefox \ Profiles
CD / D% ProfileDir%
FOR / F "tokens = * USEBACKQ" %% F IN (`dir / A: D / B ^ | найти" по умолчанию "`) DO (
SET "ProfileDir =% ProfileDir% \ %% F"
)
CD / D% ProfileDir%

:: Считать настройки ASF из файла extpref.txt и добавить их в файл настроек Firefox
TYPE% ~ dp0% \ extpref.txt >> prefs.js

:: Так как имя пользователя для каждого пользователя обязательно изменится, узнайте путь к «Загрузкам»
:: Папка и добавить его в prefs.js
SET DownloadsDir =% USERPROFILE% \ Загрузки
ECHO user_pref ("extensions.asf.filters0.folder", "% DownloadsDir: \ = \\%"); >> prefs.js
ECHO user_pref ("extensions.asf.lastpath", "% DownloadsDir: \ = \\%"); >> prefs.js

ПАУЗА
Имя файла: extpref.txt
user_pref ("extensions.asf.dialogForceRadio", true);
user_pref ("extensions.asf.dialogaccept", true);
user_pref ("extensions.asf.filters0.active", true);
user_pref ("extensions.asf.filters0.domain", "*");
user_pref ("extensions.asf.filters0.domain_regexp", false);
user_pref ("extensions.asf.filters0.filename", "*");
user_pref ("extensions.asf.filters0.filename_regexp", false);
user_pref ("extensions.asf.filtersNumber", 1);
user_pref ("extensions.asf.tempdomain", "http://chrisblattman.com");
user_pref ("extensions.asf.useDownloadDir", true);
user_pref ("extensions.asf.version", "1.0.5bRev128");
user_pref ("extensions.asf.viewdloption", true);
user_pref ("extensions.asf.viewpathselect", true);
user_pref ("extensions.asf@mangaheart.org.install-event-fired", правда);

Сценарий принимает входные данные, extpref.txtкоторые должны присутствовать в той же папке, что и сам сценарий, и должны содержать настройки для ASF, которые будут обновлены в файле настроек Firefox (prefs.js).

Вы можете прочитать настройки из- about:configпод extensions.asf.*или просто получить их, prefs.jsкоторые обычно находятся в папке:

% APPDATA% \ Mozilla \ Firefox \ Profiles \ ????????. По умолчанию \

При создании extpref.txtубедитесь, что вы не включили, extensions.asf.filters0.folderи extensions.asf.lastpathтак как они будут отличаться для каждого пользователя.

Винаяк
источник