timka85
Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору NickOnToluca все с Вами ясно, коллега. Способ мой немногим отличается, опция "OptionalAppLinks=Plugins\*.*" в нем тоже присутствует и, кстати, не на последнем месте. "Мой адрес - не дом и не улица, мой адрес - Советский Союз!"© --> технология Portable Union Принцип: Сборка портативок в виде "сама по себе" и "вызов через хост для симбиоза" ! А теперь постараюсь подробно и доступно описать действия: 1. Для начала, собираем то, что будет у нас называться ХОСТом и будет иметь Песочницу с именем, которое будет потом использоваться и не однократно. Для удобства, хост может быть собран на основе какого-нибудь маленького файло-менеджера, ну или, на худой конец, просто с выбранным в пустом проекте cmd.exe. Назовем оба наших объекта так: хост - Dom.exe и его Песочница - Soviet Union. Логично! 2. Далее - самое неприятное в этом способе, но надеюсь у кого нибудь руки дотянуться как-то автоматизировать этот процесс. Дело в том, что с момента как мы решили идти по жизни с таким способом*, нам обязательно необходимо собирать портативки с дополнительным линком, имеющим графу "Source=", как и у основного файла, но а графа "Shortcut=" должна указывать на имя нашего хоста, тобишь Dom.exe. И конечно же имя этого линка должно отличаться от имени основного, вплане PortApp.exe и линк PortApp-Dom.exe, то есть запуск через хост. 3. Теперь хитрость с Песочницей для нашего портабла. У вас есть выбор: а) Или создаем все портаблы с идентичным именем песочницы, как у хоста (Soviet Union), и производим сборку только раз б) Или же собираем первый раз с именем песочницы портабла, извлекая потом из папки bin главный файл PortApp.exe, и второй раз (происходит просто быстрое копирование, без компрессии) - с именем песочницы хоста, извлекая только линк PortApp-Dom.exe . Примечание!!! Чтобы такой способ работал, нужно, как минимум, для ярлыка нашего портабла указать размещение Песочницы рядом в той же папке, т.е. не где-нибудь в файлах Пользователей. И еще! Если собираемая программа предоставляет дополнительные ярлыки к ее отдельным функциям/компонентам, как например QuickTime Player с его PictureViewer, то и для них тоже нужно создать их дубли ведущие к проге через хост. Но, к счастью, эти линки разработчики вытягивают лишний раз наружу просто для того, чтобы вам не приходилось запускать соответствующие функции/компоненты, заходя в саму программу (QuickTime). Так что дублировать такие линки совсем необязательно. 4. Итак, на руках у нас теперь, как минимум, 2 .exe файла которые мы используем каждый по-разному. Если нам нужно работать только с одним портаблом, то тот .exe , что у нас (по идее) самый большой, запускаем обычным образом. Ну а если же нам понадобилась его интеграция с другим портаблом, то мы берем наш хост, создаем около него папку Plugins, кладем в нее оба (или более) портабла, а вне этой папки - их линки. !!!Конечно же для симбиозного запуска и того и другого портабла нам нужны наши заветные линки, связывающие софт через хост!!! ЭФФЕКТ: Запуск отдельно-работающих портативок без утомительного лазания по окну виртуализированного файлового менеджера с их работой в связке, а также с сохранением их настроек в общей для всех Песочнице! * - поясняю, что я уже пробовал искусственно создать подобный линк без оригинального проекта сборки, путем подлаживания в пустой проект текстовика с измененным именем на то, что у источника. Не прокатило. Хотя пробовал один лишь вариант. Возможно с каким-нибудь другим, реальным файлом прокатило бы, но я не исключаю, что при своевременной сборке ThinApp прописывает общий алгоритм как у линка, так и у его ресурса. А жаль... Кстати! Не проблема "вытянуть" из портабла через диалоговое окно (или другим путем) нужный файл-источник и подставить его в ожидающий его пустой проект для изготовления линка-запуска через хост. Только что осинило !!! Добавлено: Ниже еще два способа по изготовлению такого линка... | Всего записей: 236 | Зарегистр. 19-07-2008 | Отправлено: 18:01 22-07-2009 | Исправлено: timka85, 11:56 24-07-2009 |
|