Руководство от OliverK

Punch.at.ua2«Создание приложений PortableApp: Руководство/Справочник партизана»

Данная статья содержит свободный перевод с английского только тех абзацев из авторского текста «Creating A Portable App: A Guerilla Field Guide», которые относятся непосредственно к теме создания портативных программ (приложений) в формате PAF (PortableApps.com Format). Абзацы не по теме — пропущены.

Итак, рекомендации от автора и создателя PAF (PortableApps.com Format):

Ознакомьтесь с устройством Лаунчеров/Launcher’ов (программ для запуска портативного ПО), на примере следующих Portable-программ с сайта PortableApps:

* Notepad++Portable (отличная замена стандартному блокноту Windows)
* PNotes Portable (создаёт заметки-стикеры на рабочем столе)
* 7-Zip Portable (мощный архиватор с высокой степенью сжатия файлов)

Дополнение авторского текста (Подсказка по ходу перевода):

Скачайте и распакуйте программу (начните изучение устройства Лаунчера по самым простейшим PAF-программам). Чем приложение проще по функциональности и меньше в нём настроек, тем проще создать его portable-версию и легче начинать изучение устройства его исходников…
— Исходники скриптов для Launcher’а (файла запуска) находится в папке Source по адресу: …ИмяПапкиСПрограммойPortableOtherSourceИмяПрограммыPortableU.nsi (исходник).
(Например, C:PNotesPortable_8.5.106.pafPNotesPortableOtherSourcePNotesPortableU.nsi ).
— Откройте файл с расширением .nsi, смотрите устройство Launcher’а и учитесь…
— Открыть файл .nsi можно при помощи программ Nullsoft NSIS или HM NIS Edit.
— Ещё одна простенькая программа для примера: FileZilla Portable (отличный FTP-менеджер)
— Здесь вы можете скачать эти же 9 файлов с исходниками кодов (55,8 кБ) — уже скопированные в  файлы блокнота Window. Скрипты там хорошие…

Определите язык программирования. Зачем? Вам надо быть внимательным в выборе языка программирования. Будете ли и сможете ли вы работать с:
* .Net? Возможно, вам и всё равно, но многие его презирают, поскольку он установлен не на всех компьютерах. Можете прочитать обсуждение .Net.
* Java? Насколько я знаю, существует Java Portablizer, но пока что не существует Open Source JRE. Значит, использование Java всё-таки ограничено.

Подберите и соберите все необходимые инструменты для работы.
* Лично от себя советую использовать HM NIS Edit (Portable). Загрузить его можно с установленным NSIS или без него — программа будет работать в любом варианте.
* Если вы предпочитаете использовать иной редактор, скачайте Portable версию программы NSIS.
* Regshot, который будет нужен для отслеживания изменений, производимых в реестре программой при установке.
* Можно использовать Process Monitor, чтобы узнать, к каким записям программа при работе обращается в реестре.
* NirSoft RegfromApp — эта маленькая бесплатная утилита позволит определить, за какими специфическими процессами надо наблюдать. С её помощью эти процессы можно запускать и отслеживать. Она прекрасно демонстрирует все изменения в реестре, производимые программой.

Проведите исследование темы создания портативного приложения. Почитайте форумы.
Спецификация PAF : The PortableApps.com Format Specifications
PortableApps Инсталлятор: The Official Installer
Форум на английском языке: Portable App Development

Загрузите программу, которую вы будете переделывать. Отключите все программы, которые отслеживают изменения в реестре (килогеры, антивирусы и т.п.) прежде чем начнёте исследовать изменения, создаваемые вашей программой. Запустите Regshot на обследование диска С, а сами уйдите хлебнуть чего-нибудь освежительного, и упаси вас бог касаться компьютера во время работы программы — иначе получите ошибочные записи в реестре.

Установите свою программу и погоняйте её некоторое время. Делайте это на чистой установке, иначе ваши результаты будут искажены, и не включайте в это время никакие другие программы.

Сделайте второй снимок реестра, сравните результаты и сохраните их в HTML, сделайте распечатку в ТХТ.

Определите где программа сохраняет свои файлы. Проверьте C:/Documents and Settings/UserName/Application Data для %appdata%. Если вы сканировали весь диск C при помощи regshot, то все изменения будут у вас отображены.

Что делать с записями в реестре:
* HKCU: программа Regshot покажет изменения HCKU как HKURandom Numberswhatever [содержание]. Найдите эти записи в HKCUSoftware и передайте их в NSIS как HKEY_CURRENT_USERSoftwareWhatever [содержание].
** Полезная запись: HKUS-1-5-21-1060284298-823518204-725345543-1003SoftwareTexas InstrumentsTI ConnectStartUp.
** Бесполезная: HKUS-1-5-21-1060284298-823518204-725345543-1003SoftwareMicrosoftWindowsShellNoRoamMUICache
* HKLM: HKLM — это ветвь реестра, которую можно изменить только под учётной записью Администратор. Передайте эти записи в NSIS и твёрдо помните, что они очень важны. Записи типа InstallDir: whatever [содержание] можно игнорировать. Если же эти записи важны, проверьте, сможет ли Launcher (лаунчер — программа запуска) выполнить их, а потом запускайте программу. Если у вас не будет на это прав, вы получите предупреждение об этом и предложение закрыть программу запуска. Передайте эти записи реестра в NSIS как HKEY_LOCAL_MACHINESoftwarewhatever [содержание]
* HKU: Это можно игнорировать.

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

Настройте программу запуска в соответствии с требованиями.

Скомпилируйте, протестируйте и настройте.

Перевод взят с punsh.at.ua

ОБСУДИТЬ НА ФОРУМЕ

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Нет комментариев.

Добавить комментарий

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: