8

У меня есть флешка с PortableApps, которую я ношу с собой в разных местах.

Но меня раздражает одна вещь: когда я открываю файл (например, *.flv или *.html), либо Windows говорит, что он не поддерживается, либо открывает программу, которую я не хочу использовать (например, Win.MP), хотя у меня есть "правильная" программа (которую я хочу использовать) на моем USB-накопителе.

Есть ли переносимая программа, которая может связывать мои "неподдерживаемые" файлы, когда я выполняю только одну / несколько программ?

(Я собирался использовать ftype и assoc в командном файле, но для этого требуются права администратора, так что это не лучшее решение.)

6 ответов6

6

Я использую много портативных приложений, и я использую две программы, специально предназначенные для этого. Они оба делают одно и то же, но по-разному.

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

Portable File Associator (созданный с использованием AutoIt) создает записи ассоциации файлов в кусте реестра HKCU, для которых не требуются права администратора, и его можно настроить для удаления их при выходе из программы. Я предпочитаю этот, так как он также может быть сделан, чтобы сделать записи и затем выйти без удаления ассоциаций, что полезно на моих собственных компьютерах (инструкции для более расширенного использования находятся в файле где-то в папке программы). То, как это работает, также позволяет определять значки для типов файлов. Когда вы загружаете эту программу, пароль для файла архива находится в имени файла.

Программы, созданные с использованием AutoIt и AutoHotkey, иногда могут быть помечены антивирусами как вирусы, поскольку с их помощью были созданы вирусы, но эти программы абсолютно безопасны.

5

Вот что я использую, что может быть слишком сложным:

  • Создайте пакетный файл на USB-накопителе, который сопоставляет его папку с буквой Q: или другой буквой диска (в основном, с subst Q: "%~dp0" )
  • Используйте переносной проводник с пользовательскими ассоциациями файлов. Я использую FreeCommander; В разделе «Дополнения, Настройки, Программы» вы можете настроить собственные программы, которые будут открываться при нажатии F4 на ваших файлах, в зависимости от их расширения. Я нанес на карту 7z, zip, tar и т.д. к 7zip-портативный например. Итак, все, что вам нужно сделать, это установить редактор в Q:\7z-portable\7zportable.exe и все.
3

Я предполагаю, что вы используете программное обеспечение, упакованное PortableApps.com. Пока мы ожидаем реализации сопоставления файлов , Xenon Portable может оказаться самым простым решением.

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

настройки

редактор

или вы можете отредактировать файл конфигурации XenonPortable\Data\settings\assoc.ini .

Формат выглядит следующим образом:

[<extension>]
icon=<image>.ico
exe=|XEDIR|\<path>

Где <path> относится к XenonPortable .

3

Вы можете использовать стандартную команду assoc в пакетном скрипте (.bat) для сохранения, установки и сброса ассоциаций файлов.

Команда assoc может отображаться и связываться, например, в командной строке (cmd):

image1

Команда также может установить файловую ассоциацию:

image2

Вы можете создать следующие два файла .bat в корневой папке на USB-диске (или в другом месте). Эти пакетные файлы требуют наличия в той же папке файла с именем prefix, который вы создаете только один раз, используя блокнот и вводя строку "assoc", без кавычек и с завершающим пробелом и (очень важно), не нажимая Enter (так что это не нет конца строки).

Первый файл .bat мы назовем myapps.bat, и его целью будет назначение новой ассоциации файлов после создания другого файла restore.bat, который вы будете использовать перед извлечением USB-диска для восстановления старых ассоциаций файлов.

Пример myapps.bat, чтобы установить ассоциации файлов html, abab и htm для myprog1.exe и т. Д .:

@echo off
echo @echo off >restore.bat
cmd /q /c doassoc html "%cd%\myprog1.exe"
cmd /q /c doassoc abab "%cd%\myprog2.exe"
cmd /q /c doassoc htm "%cd%\myprog3.exe"
del ftemp1
del ftemp

Переменная %cd% обозначает текущий каталог, но вы также можете использовать %cd:~0,2% который даст вам текущий диск (например, G:) вместе с любой другой относительной спецификацией файла на диске.

Файл doassoc.bat, который выполняет работу для одной ассоциации файлов, будет содержать:

echo assoc .%1= >ftemp1
assoc .%1 >nul
IF %ERRORLEVEL% NEQ 0 goto notfound
assoc .%1 >ftemp
copy /b /y prefix+ftemp ftemp1 >nul
:notfound
copy /b /y restore.bat+ftemp1 restore.bat >nul
assoc .%1=%2

Пример результата при запуске myapps.bat, за которым следует restore.bat:

image3

2

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

Его переносимые ассоциации файлов могут связывать расширения файлов с приложениями и даже с пользовательскими сценариями:

образ

1

Как уже упоминалось в paradroid, ранее вы могли использовать такие приложения, как (теперь уже не существующий) eXpresso или PortableFileAssociator, чтобы решить эту проблему. К сожалению, в Windows 8 больше невозможно временно установить ассоциации файлов.

Как объяснил Джон Т. Халлер - создатель PortableApps.com

Windows 8, 8.1 и 10 не позволяют приложениям настраивать ассоциации файлов, а затем возвращать их обратно, как мы планировали при разработке для Windows XP/Vista/7. Ассоциации должны проходить через ОС, когда пользователю предлагается изменить их. Это сделано так, что приложения не могут украсть ассоциации, такие как установка себя в качестве браузера по умолчанию без вашего разрешения.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .