Как устроены portable-приложения

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

Всем известно, что установка любой программы не ограничивается копированием необходимых файлов в папку Program Files – в зависимости от «сложности» самого продукта, также добавляются записи в определенные ветки реестра Windows, специальные файлы в системные каталоги или инсталлируются необходимые драйверы и библиотеки. В случае, если просто скопировать файлы приложения на другой ПК, то с большой вероятностью оно не запустится или будет работать некорректно, ввиду отсутствия одного или нескольких вышеперечисленных компонентов (исключая, разве что, игры и неприхотливые программки, у которых просто «собьются» настройки). Так как же перенести программу с одного компьютера на другой, сохранив ее «боеспособность»? Ответ очень прост: нужно воспользоваться переносной (иначе называемой «portable») версией этой программы.

Суть использования portable-приложений не только в том, чтобы запускать их с чего угодно и на какой угодно машине, но и что бы не оставлять следов использования подобного софта по определенным причинам (например, из-за корпоративной политики относительно стороннего ПО). Есть и третья причина: возможность запускать версии standalone и portable одного приложения параллельно, а также хранить профили, создаваемые в них, раздельно (хороший пример – Google Chrome).

Существует два способа получить переносную версию приложения:

  • Скачать уже готовую;
  • Сделать ее самому с помощью программной виртуализации.

Мы детально рассмотрим каждый из них.

Готовая переносная версия

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

Лончер (или оболочка) – это аналог классического меню «Пуск», вот только вместо обычных приложений, установленных на ПК, здесь отображаются переносные, которые находятся на внешнем накопителе (там же, где и сама оболочка). Мы рассмотрим только оболочки с магазином, поскольку функционал обычных «запускалок» настолько скуден, что на оных даже не стоит тратить время. В состав первых входят две небольшие утилиты, одна из которых играет роль клиента для магазина приложений, а вторая занимается автообновлением уже установленных программ.

PortableApps.com  

На самом деле это гораздо больше, чем просто самая популярная оболочка, это целая платформа, ведь с ее помощью можно организовать не только приложения, но еще и документы с медиафайлами. В главном окне PortableApps можно разложить программы по категориям, есть ссылки на папки для документов, музыки, видео, настроить бекап нужных вам данных, установить новые приложения с помощью фирменного загрузчика или вручную, удалить софтину или проверить наличие обновлений, а также безопасно извлечь накопитель.

По заявлению разработчиков на официальном сайте, в каталоге PortableApps содержится более 300 бесплатных переносных приложений (а это около 9 Гб софта): как с закрытым кодом, так и OpenSource. В принципе, в пару кликов можно сформировать привычный набор программ и всегда носить его с собой. Оболочка работает шустро, но стоит отметить, что приложения устанавливаются из магазина не в тихом режиме, потому придется кликать «Далее» для каждого из них.

Плюсы: очень много софта, удобная оболочка.

Минусы: нет.

Оценка: 5/5

LiberKey 

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

Каталог программ намного меньший, нежели у PortableApps (около 2 Гб против 9). Французы, делавшие LiberKey, видимо, вдохновлялись схемой запуска Battlefield  – тут из главного меню можно установить только пакет переносных приложений (Basic, Standart и Ultimate, отличия в количестве входящего в набор софта). Отдельные же программы можно добавить из каталога только через браузер, ссылки на установку из которого будет перехватывать LiberKey. Схема странноватая, но у нее есть преимущество - приложения загружаются и устанавливаются в тихом режиме. Есть возможность выставить временные ассоциации файлов с переносными приложениями (автоматически или вручную).

Плюсы: приемлемое количество софта.

Минусы: система запуска и организации приложений.

Оценка: 4/5

Ceedo 

Отличительной особенностью Ceedo является то, что устанавливается она только на съемный накопитель. Визуально главное окно выполнено в стиле Windows 7.

В магазине Ceedo насчитывается около двух сотен приложений всех категорий – от браузеров и плееров до сред программирования и рекавери-утилит. Установка, как и в Liber Key, производится через веб-страницу. Местами, приложения не очень «свежие», ну да ладно. Гораздо более неприятным был тот момент, что Ceedo некорректно «влазит» в explorer.exe (зачем-то вешает свой значек возле кнопок управления окном), в результате моя Windows 8.1 зависла «намертво».

Плюсы: особых – нет

Минусы: несвежие приложения, нарушение работы Проводника, установка только на внешний накопитель

Spoon.net 

Spoon.net полностью «перезагружает» концепцию portable-приложений, приближая ее к chrome OS – для работы теперь нужен только браузер. Фишка «Ложки» в том, что после регистрации в сервисе нам предложат скачать не обычную оболочку, а универсальный плагин, который подходит к любому браузеру. А дальше нужно из своего кабинета перейти в магазин приложений и кликнуть на нужном – оно будет буферизовано плагином и тут же запущено. Все! Количество программ точно не указано, но самых популярных сотня точно наберется.

Кроме того, Spoon.net позволяет загружать в свой аккаунт файлы любого типа или создавать документы, презентации и электронные таблицы «на месте» (хотя для этого на ваш ПК будут загружены соответствующие программы из пакета LibreOffice). «Бесплатным» пользователям предоставляют 5 Гб места и возможность запуска не более 5 приложений, а начиная от $12 в месяц (тариф «Personal») количество приложений будет не лимитировано, а доступная память и количество опций (вроде эмуляции железа, песочницы или привилегий администратора) будут увеличиваться пропорционально стоимости.

Плюсы: оригинальная система приложений.

Минусы: ограничения бесплатного тарифа, количество приложений не «срывает башню».

Оценка: 3/5

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

Создание собственных переносных приложений

Так, с готовыми portable-приложениями разобрались. А что же делать, если необходимой вам программы нет в каталогах выше упомянутых сервисов (да и вообще на просторах интернета)? Придется воспользоваться специальными программами, которые помогут сделать из обычного приложения portable-версию. Суть работы этих программ состоит в том, что они модифицируют код главных исполняемых файлов приложения (или создают собственные «екзешники») таким образом, чтобы все необходимы файлы (временные, профили, дополнения, шрифты и т.д.) находились в одной папке с самой программой.

Проверку работы «виртуализаторов» мы будем производить, пытаясь сделать переносной Nightly—сборку браузера Mozilla Firefox. Это будет намного быстрее и проще, нежели мучать описанные ниже утилиты «тяжеловесами» наподобие программных пакетов Adobe (хотя умельцы, делающие их переносными, есть). В общем, существует два метода создания переносного приложения: из уже установленного, или путем сканирования системы до и после установки ПО. В каких-то виртуализаторах доступны оба, в каких-то только один. В любом случае мы протестируем все варианты.

Evalaze 

Сразу начну с того, что Evalaze существует в двух версиях: бесплатной и коммерческой. Последняя официально недоступна частным пользователям.

Работа с free-версией начинается с мастера создания портабельного приложения, где нас попросят ввести название виртуализируемого приложения и куда будут сохранены измененные файлы (есть только метод сканирования системы). Область сканирования выставить нельзя. Далее будет произведен предварительный анализ всего системного логического диска, а также реестра Windows. Процесс это достаточно быстрый, мои 49 ГБ Evalaze «пробежал» за 15 минут. Следом за этим необходимо будет выбрать exe-шник установщика нашего приложения (которое мы хотим сделать переносным), после чего запустится, собственно установка, за которой последует повторное сканирование. Пока идет сканирование, можно сделать вывод, что ставить софт для «портабелизации» нужно только на системный диск, ввиду того, что сканируется только он, что может создавать определенные неудобства.

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

Несмотря на ошибки (вызванные, скорее всего, тем, что последняя версия Evalazer вышла год назад), переносная версия Firefox Nightly была собрана, нормально распаковывается во временную папку и работает отдельно от моего основного профиля.

Плюсы: каких-то особых нет.

Минусы: ограничения бесплатной версии, ошибки. Да и вообще, похоже что коммерческая версия Evalazer тоже заброшена и проект умер.

Оценка: 2/5

VMWare ThinApp 

«Серьезный» виртуализатор от серьезной VMWare. ThinApp считается самым популярным средством для создания переносных приложений, ведь соперничать с ребятами из VMWare в сфере виртуализации очень сложно.

Итак, сначала нам необходимо будет выполнить привычный уже «захват» текущего состояния системы  (можно выбрать диски и ветки реестра для сканирования), на что потребуется не более 10 минут. Далее устанавливаем наше приложение, после чего последует повторное сканирование. Следом нам предложат выбрать точку входа в переносное приложение (то бишь главный exe-шник), режим изоляции файловой системы, место расположения песочницы, а также добавить готовый portable в онлайн-каталог VMWare Workspace Portal. Эксклюзивной опцией ThinApp является возможность установки групп пользователей с определенными правами (администраторы, пользователи, гости), для которых запуск портабельника будет разрешен.

Из дополнительных функций стоит отметить возможность сгенерировать MSI-пакет и установить степень сжатия файлов. Firefox Nightly «собрался» и нормально запустился.

Плюсы: профессиональное решение, множество настроек, большое сообщество.

Минусы: практически нет.

Оценка: 5/5

JauntePE 

Несмотря на то, что последний релиз JauntePE датирован «аж» 2011 годом, она не просто хорошо работает, а еще и просто изобилует количеством разнообразных настроек в мастере создания приложений.

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

Firefox Nightly моментально стал переносным, без проблем и ошибок. Хорошая софтина.

Плюсы: много опций, быстрая и корректная работа.

Минусы: разработка JauntePE прекращена

Оценка: 4/5

Cameyo 

Cameyo вообще особый герой нашего обзора, потому что он обладает не только средствами для виртуализации приложений, но и собственным «облачным» каталогом приложений по типу Spoon.net. «Because software should be used, not installed» - говорят разработчики Cameyo, и оправдывают это слова на 100%.

В каталоге Cameyo на момент написания статьи находилось 492 приложения:как платных, так и freeware. Они разделены на десяток категорий. И есть настолько узкоспециализированные (вроде WireShark’а, сервера FileZilla и HD Tune), что могут «перебить» даже PortableApps.com. Присутствует удобный поиск, а также собственная библиотека приложений (после регистрации туда одним кликом мыши можно добавлять избранные программы, есть даже опция автоматического скачивания всей библиотеки при запуске Cameyo на новом ПК). На официальном сайте существует даже html5-версия Cameyo, вот только у меня она не запустилась, ссылаясь на ошибку сервера.

Создание переносного приложения возможно только способом сканирования системы «до» и «после», и ничего особо интересного в нем нет - Nightly нормально стал переносным. Гораздо больший интерес притягивает функция «Online Packager». Суть ее в том, что вы загружаете на сайт инсталлятор необходимого приложения (или указываете ссылку на него), а система сама пытается сделать из него переносное приложение. Но это если установщик поддерживает ключи «тихой инсталляции». Если же нет, то нам будет предложено либо ввести их, либо установить приложение прямо в браузере (обыкновенным кликаньем по «Далее» и расстановкой галочек). Packaging производится в среде Windows XP SP3, но зато можно выбрать разрядность. Хоть эта схема и немного медленная, но выглядит и работает просто шикарно.

Но и это еще не все! После того, как наше приложение будет собрано, его можно либо скачать, либо запустить прямо в браузере (помните, я выше писал, что у Cameyo есть html5-версия?).

http://2ip.ru говорит, что у нас Windows 8 и мы находимся в Канаде. Как и в случае со сканированием, тут Firefox тоже собрался просто отлично. Ну и плюс, у Cameyo есть функция редактирования уже готового переносного приложения.

Плюсы: полноценная веб-версия, создание переносных приложений онлайн, «облачный» магазин, огромное количество доступного софта.

Минусы: практически нет.

Оценка: 5/5

Выводы

Лично я пользуюсь PortableApps.com уже более 5 лет, еще ни разу не подвела (ни сама оболочка, ни переносной софт их производства). Из второй части обзора внимание, как на хорошее комплексное решение, стоит обратить на Cameyo. Если же вам нужен хороший виртуализатор, воспользуйтесь профессиональным VMWare ThinApp или бесплатным «опенсорсным» JauntePE.

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

Андрей Земский

Версия для печатиВерсия для печати

Рубрики: 

  • 1
  • 2
  • 3
  • 4
  • 5
Всего голосов: 0
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!

Комментарии

Аватар пользователя mike

Отличная статья, спасибо, автор. Кое-чем я уже пользовался, но тут неплохо систематизировано. Побольше бы таких статей, без них "Вести" ИМХО просто умрут.

P.S. Иногда исходный софт имеет защиту от портабелизации. Выражается это в том, что со временем портабельная версия перестаёт работать или начинает работать некорректно. В таком случае может помочь повторная портабелизация.

Аватар пользователя Elmos


mike: Отличная статья, спасибо, автор. 

Weblancer.net, Андрей Земский: Быстро и качественно делаю рерайты...

Побольше бы таких статей, без них "Вести" ИМХО просто умрут

:-)