Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » VMware ThinApp | Thinstall (Часть 4)

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69

Открыть новую тему     Написать ответ в эту тему

Geroy4ek

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Предыдущие части темы: 1, 2, 3
Смежный топик в Варезнике
 
VMware ThinApp 2312 Build 23148499 Release Date    2024-01-23  
 
Официальный сайт | Описание | Download | Список изменений | ThinApp Docs
 
ThinApp (ex Thinstall) используется для виртуализации приложений, позволяет заключить приложения в виртуальный контейнер и использовать их как готовые пакеты, не требующие установки. Внутри контейнера создается виртуальная среда для реестра и файлов.  
Поддерживаемые ОС:    
x32: Windоws 2000/XP/XPE/Server 2003/2008/2012/2012 R2/Vista/7/8/8.1/10  
x64: Windоws  Server 2003/2008/2008R2/Vista/7/8/8.1/10

Полезные утилиты
 
FAQ, статьи, обзоры
 
Полезные ресурсы

Если при запуске готового приложения выскакивает окошко в трее, читайте шапку топика в Варезнике.
 
VMware ThinApp - обсуждение перевода
 
Русский перевод мануала по VMware ThinApp версии 5.1.0 + перевод справочника по параметрам Package.ini от pavlaf
 
Ближайший аналог: Turbo Studio (бывшая Spoon Studio, Xenocode Virtual Appliance Studio)

Всего записей: 1 | Зарегистр. 24-04-2015 | Отправлено: 17:26 24-04-2015 | Исправлено: Luber, 10:56 24-01-2024
Proshaa

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
coherent
а разве  4.7.3 умеет 7х64? насколько помню - нет. собирайте в чём-нибудь поновей (снимок можно делать и в 4.7.3)

Всего записей: 3079 | Зарегистр. 10-01-2011 | Отправлено: 00:06 21-06-2019
insorg



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Proshaa
Всё верно, 4.73 умеет нормально только 32-битки заворачивать. Но работают они на х32 и х64 ХР/Vista/7, иногда на 8.х и почти никогда на 10.

Всего записей: 16430 | Зарегистр. 04-11-2010 | Отправлено: 01:37 21-06-2019
coherent

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AVanti473, Proshaa, insorg
Извиняюсь, что не уточнил. 32-битная Maple на 7х86 - снимок и сборка с использованием 4.7.3, а 64-битная Maple на 7х64 - снимок и сборка с использованием 5.2.4.
 
AVanti473

Цитата:
Если в пути о котором я писал не заполз <user_name>, который был на машине снапшота.

<user_name> на всех машинах, включая виртуальные, один и тот же.
Плюс к этому, 32-битная сборка Maple, снимок которой делался на 7х86, без проблем работает на ХР.
Пока нет возможности проверить, как она же будет вести себя на 32-битной семерке.

Всего записей: 3881 | Зарегистр. 20-02-2007 | Отправлено: 12:55 21-06-2019
AVanti473



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
coherent
А портабельная программа корректно завершает работу на семёрке? Просто одним из случаев у меня был совсем недавний прецедент, когда прогу приходится завершать аварийно, скриптом, и она просто не успевает изменить свой инишник, чтобы сохранить настройки. Странно то, что данные изменения сохраняются в программе лишь после закрытия, а в течении работы с ней, применяются, но не записываются сразу в инишник. Возможно, хранятся в оперативной памяти... Вроде бы, больше вариантов описываемой вами ситуации, увы, не встречал. Ещё, можно, наверное, этот инишник попробовать вынести в реальную среду песочницы скриптом. Мало ли, может не хватает каких-то прав для корректной работы с ним. И, остаётся, разве что банальнейшее предложение - собрать в спуне, чисто для теста... Может кто-нибудь ещё что-то дельное подскажет...

Всего записей: 1179 | Зарегистр. 05-04-2011 | Отправлено: 16:31 21-06-2019 | Исправлено: AVanti473, 16:32 21-06-2019
coherent

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AVanti473

Цитата:
А портабельная программа корректно завершает работу на семёрке?

Да. По крайней мере все процессы закрываются сами, как положено.
 

Цитата:
Ещё, можно, наверное, этот инишник попробовать вынести в реальную среду песочницы скриптом.

Это я пробовал. Не помогает.
 

Цитата:
собрать в спуне, чисто для теста

Спуном, как-то, не пользовался. Мне проще либо X-Launcher, либо просто запуск скриптом. Поскольку такой псевдопортабл: распакованная папка Maple + ini в AppData... + пару записей в реестр работает без проблем. Сразу подхватываются настройки из ini и туда же без проблем сохраняются.

Всего записей: 3881 | Зарегистр. 20-02-2007 | Отправлено: 19:53 21-06-2019
Proshaa

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
coherent
ну выложите установщик, может гляну на досуге

Всего записей: 3079 | Зарегистр. 10-01-2011 | Отправлено: 04:16 22-06-2019
Sheleh

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ребята. Подскажите пожалуйста, какой переменной типа %% я могу обозначить текущую папку - папку из которой запускается основной .exe (что то вроде %Current_dir% или %exe_directory%)
Охота изолировать не всю программу, а только один exe без привязки к конкретному пути.

Всего записей: 37 | Зарегистр. 12-06-2009 | Отправлено: 09:20 04-07-2019 | Исправлено: Sheleh, 09:32 04-07-2019
Proshaa

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sheleh
лыжи не едут...
создайте проект, в котором будет только папка с нужной вам программой, например C:/My program/My_program.exe, соберите и запускайте откуда душе угодно.
если же вы хотите менять файл программы, то самое простое - воспользоваться любым портабельным коммандером.
или объясните подробнее - что именно вы хотите.

Всего записей: 3079 | Зарегистр. 10-01-2011 | Отправлено: 09:46 04-07-2019
insorg



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Завернуть штатный cmd.exe без явного задания файла.
 
Package.ini
Подробнее...
 
Положить в папку с прогой и запускать из него.
Отличать имя контейнера от cmd.exe принципиально!
Чтобы руками не писать буквы, нужный ехе можно TABом натыкать.

Всего записей: 16430 | Зарегистр. 04-11-2010 | Отправлено: 10:37 04-07-2019 | Исправлено: insorg, 10:44 04-07-2019
Sheleh

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Если я изолирую только один ЕХЕшник, то я буду вынужден положить его в виртуальное местоположение. Типа %Program_files%\MyProgram или %Drive_C%\MyProgram
 
Но этот exeшник использует для своей работы кучу файлов/библиотек и.т.д которые он будет искать по указанному выше пути. И естественно не найдет, потому что я не хочу все это засовывать в контейнер. Хочу что бы все это лежало рядом с песочницей, а не в песочнице.

Всего записей: 37 | Зарегистр. 12-06-2009 | Отправлено: 10:42 04-07-2019
insorg



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sheleh
1. Если явно не задавать изоляцию WriteCopy, ничего в песочницу не попадёт.
2. К путям привязки нет.
 
p.s.
Я так старые игры запускаю (из iscmd.exe), чтобы они в реестр не гадили (есть такие), либо закрываю в песочницу папку с сохранёнками, чтобы удобно сохранить/перенести.

Всего записей: 16430 | Зарегистр. 04-11-2010 | Отправлено: 10:50 04-07-2019 | Исправлено: insorg, 10:51 04-07-2019
Proshaa

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sheleh
ну и зачем весь этот геморр? какой в нём тайный смысл? если библиотеки будут лежать рядом, а не в контейнере - велика вероятность вывалиться в реал. и тогда теряется весь смысл портабелизации - просто возьмите прогу и юзайте без контейнера. немало софта спокойно работает без установки (после распаковки) оттуда, куда вы его в данный момент положили. правда - бывает пишут в реестр и системные папки.
 
у ТА закрытый контейнер: всё, что внутри контейнера использует пути, сохранённые при создании снимка. в зависимости от настроек "из контейнера" может быть видно (или не видно) реальное окружение. теоритически вашу задачу можно решить с помощью скрипта. практически - в этом нет смысла, т.к. проще поместить всё нужное в контейнер.
 
так что главный вопрос остаётся: зачем.

Всего записей: 3079 | Зарегистр. 10-01-2011 | Отправлено: 11:38 04-07-2019
Sheleh

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Речь идет от GstarCAD2019. У него триальный период 30 дней. Просто не хотелось бы его весь засовывать в контейнер. У него есть папочки, которые могут понадобиться для какой-либо модификации дистрибутива. Скрипты или фонты закинуть например.
 
Я могу закинуть только основной ЕХЕшник в контейнер, но надо что бы вся его остальная требуха также находилась по такому же пути. Это работает, пока пути совпадают.  
 
Вот и спрашивается, не уже ли этот основной путь должен все время жестко задан, почему он не может меняться в зависимости от места его запуска?
 
Даже переменная типа %sandbox% очень бы помогла спасти ситуацию. Но это не работает.
 

Цитата:
Я так старые игры запускаю (из iscmd.exe), чтобы они в реестр не гадили (есть такие), либо закрываю в песочницу папку с сохранёнками, чтобы удобно сохранить/перенести.  

Гениально! Это же можно реализовать что бы в контекстном меню проводника появились пункты:
"Запустить в песочнице с изоляцией full"
"Запустить в песочнице с изоляцией WriteCopy"
 
Надо подумать

Всего записей: 37 | Зарегистр. 12-06-2009 | Отправлено: 13:07 04-07-2019 | Исправлено: Sheleh, 13:10 04-07-2019
insorg



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sheleh
Для разных доступов собрать разные iscmd, будет счастье.
У меня три:
1. Изоляция реестр, системные папки, системный диск. Открыт прямой доступ к "Рабочий стол" и локальные диски кроме С:.
2. Изоляция реестра, изоляция всех дисков, папок и прочего, кроме рабочего стола.
3. То же, что и 2, только с зачисткой всей песочницы перед стартом и после работы программы.

Всего записей: 16430 | Зарегистр. 04-11-2010 | Отправлено: 13:52 04-07-2019
Proshaa

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sheleh
для доступа к папочкам внутри контейнера есть несколько способов: попроще и для "армянских комсомольцев".
1. делаете сборку вместе с привычным вам коммандером. в этом случае всё, что внутри контейнера видно в этом коммандере и любые изменения "работают" и для основной программы. все изменённые/добавленные файлы попадают в песочницу.
2. создаёте/модифицируете нужные вам папки/файлы в программе. после этого они попадают в песочницу и уже там, в песочнице можно их модифицировать не из сборки. т.е. если вы просто добавите свои файлы в песочницу - сборка их не увидит. но если вы измените имеющиеся там файлы - сборка будет работать с ними, как с родными.
 
для любителей острых извращений, которым
Цитата:
не хотелось бы его весь засовывать в контейнер
(хз, почему) можно предложить написать скрипт, который при запуске контейнера будет копировать то, что лежит рядом по путям, прописанным внутри контейнера.
 
это всё "народные" способы. официальный же способ добавления/изменения файлов оригинальной сборки - система плагинов: раскомментируете в основном контейнере строчку OptionalAppLinks=plugins\*.exe; создаёте рядом со сборкой папку "plugins" и кладёте в неё контейнер, содержащий файлы модификации. всё, что лежит в этой папке будет иметь приоритет над основным контейнером.
и не надо выдумывать, как почесать левое ухо правой ногой
 
P.S. описанный insorg способ, с запуском cmd.exe в контейнере - это всё тот же вариант с запуском коммандера - только менее удобный, т.к. командная строка всё же требует больше телодвижений. и, кстати,
Цитата:
Отличать имя контейнера от cmd.exe принципиально!  
актуально только для ХР. в следующих ОС имя может не отличаться - всё равно будет запущен cmd из контейнера (в ХР, если не сменить имя - запускается cmd из реала)

Всего записей: 3079 | Зарегистр. 10-01-2011 | Отправлено: 14:25 04-07-2019
Sheleh

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
На самом деле все очень просто заработало. Странно что не допер сразу.
 
Как изолировать отдельный exe-шник.
 
Повторюсь, что не всегда удобно запаковывать всю программу в единый контейнер. Например Delphi. Туда постоянно приходится подкидывать какие либо пакеты, исходники, библы.  
 
1. Что бы exe-шник не привязывался к конкретному пути, в проекте он не должен лежать в какой либо папке. Т.е. только рядом с файлами Package.ini и build.bat. Остальные файлы программы я просто положил в папку bin. Т.е. они не попадают в контейнер.  
 
2. Точка входа в Package.ini должна ссылаться на этот файл по относительному пути: Source=Delphi32.exe
 
3. Так, как предполагается нахождение основного ехе-шника и ехе-thinapp у них должны быть разные имена! Например:
[Delphi32_Ldr.exe]
ReadOnlyData=bin\Package.ro.tvr
Source=Delphi32.exe
 
Внимание, оригинальный файл, в нашем случае Delphi32.exe, так же должен присутствовать в этой папке. Т.е. он будет и в контейнере и снаружи. Казалось бы он уже есть в контейнере, и незачем его дублировать в его рабочей папке, но почему-то так не работает.
 
В итоге запуск Delphi32.exe приводит к обычному запуску вне песочнице, а запуск Delphi32.exe_Ldr уже внутри песочницы.  
 
В общем именного этого я и добивался.  
 
Всем здравия!

Всего записей: 37 | Зарегистр. 12-06-2009 | Отправлено: 17:18 04-07-2019
piladus1700

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
 Казалось бы он уже есть в контейнере, и незачем его дублировать в его рабочей папке, но почему-то так не работает.  

положи пустой ... .exe  и переименуй в Delphi32.exe (Source=Delphi32.exe)

Всего записей: 1358 | Зарегистр. 06-05-2018 | Отправлено: 17:34 04-07-2019 | Исправлено: piladus1700, 17:45 04-07-2019
warezo

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Такой вопрос, не по теме немного. Хочу портабелизировать портабельную прогу. Т.е. у проги есть свой INI файл, в реестр она ничего не пишет, но у неё хренова туча файлов, которые в распакованном виде весят в 10 раз больше, чем в запакованном. Существует ли какая-то тулза, которая позволяет запаковать прогу в архив, а потом монтировать этот архив для чтения-записи? Либо только для чтения, а запись чтоб шла, скажем, в папку рядом с архивом - так даже лучше, если архив непрерывный. Знаю, что есть WIM, но у него реально слабое сжатие, у ThinApp тоже не айс. Подскажите, есть ли такое в природе?

Всего записей: 381 | Зарегистр. 16-11-2005 | Отправлено: 10:35 13-07-2019
insorg



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
warezo
олдскул 7z sfx в %temp%

Всего записей: 16430 | Зарегистр. 04-11-2010 | Отправлено: 12:09 13-07-2019
warezo

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
insorg
По пойдёт. Мне распаковку нескольких тысяч файлов на винт минут пять ждать придётся.
Про рамдиск я уже думал, но он память жрёт, да и сборка такая нифига не портабельная.
 
Добавлено:
Нашёл Pismo File Mount, он lzma-zip архивы маунтит, но изменений не сохраняет и требует установки. WinMount с WinArchiver тоже не катят, т.к. маунтят на виртуальные приводы.

Всего записей: 381 | Зарегистр. 16-11-2005 | Отправлено: 12:12 13-07-2019 | Исправлено: warezo, 12:36 13-07-2019
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69

Компьютерный форум Ru.Board » Компьютеры » Программы » VMware ThinApp | Thinstall (Часть 4)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru