Ru-Board.club
← Вернуться в раздел «Программы»

» VMware application virtualization (Thinstall)

Автор: AmonRaaa
Дата сообщения: 19.12.2007 10:48

Цитата:
В общем, "пошаманил" я с СПДС - удалось убрать окошко с ошибкой, НО... оно так и не заработало . Возможно, надо еще какие-то библиотеки подключать - узнать бы какие...


http://www.dependencywalker.com/
Автор: Sergey_AV
Дата сообщения: 19.12.2007 11:04
AmonRaaa
Можешь кратенько написать, что делать? А то я что-то нифига не понял .
Либу что-ли протрейсить?
Автор: AmonRaaa
Дата сообщения: 19.12.2007 11:17
Кто-то спрашивал как можно пересобрать пакет, если нету исходного Build а.
1. Песочница должна быть новой, чтобы не потянуть лишнего...

2. Вытаскиваем файлы...
vregtool <tvr файл из песочничы программы> ExportReg <имя временного reg файла>
В полученном reg файле интересен ключ HKEY_LOCAL_MACHINE\FS
там лежит описание местоположения всех файлов в виртуальной среде. Чтобы их вытащить нужно чтобы программа могла открыть любое стандартное диалоговое окно выбора файла. Те нужно получить доступ к виртуальной файловой среде. Чтобы перенести файлы из виртуальной в реальную среду воспользуйтесь каким нибудь копировальщиком (стандартное копировать вставить НЕ РАБОТАЕТ! - особенности explorer). Можете запустить Commander, KillCopy или подобное (подойдет также WinRar). Полученные файлы либо заберете из реальной среды, если папка в которую копировали Merged, или в противном случае из песочницы.

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

3. Вытаскиваем регистр
vregtool <tvr файл из песочничы программы> ExportTxt <папка для сохранения>
В указанной папке будет 3 файла
HKEY_CURRENT_USER.txt
HKEY_USERS.txt
HKEY_LOCAL_MACHINE.txt
Внутри файлов виртуальный регистр. Isolation mode и относительные пути сохраняются. Те эти файлы можно использовать в чистом виде для нового Build а.

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

4. Полученные файлы программы распихиваем по нужным папкам согласно
HKEY_LOCAL_MACHINE\FS из пункта 2.
Добавляем
##Attributes.ini (в нужные папки проекта)
package.ini
build.bat можно взять из любого другого проекта (он стандартный)

P.S: Пересобрал не один portable таким образом. В большинстве случаев проблем не возникает. Но тем не менее это гемморой, и я бы рекомендовал для своего софта хранить всегда build подготовленный для компиляции. Софт обновляется, Thinstall также...

Добавлено:

Для Sergey_AV

Цитата:
Можешь кратенько написать, что делать? А то я что-то нифига не понял .
Либу что-ли протрейсить


там можно скачать прогу depends для win.
http://www.dependencywalker.com/depends22_x86.zip
Запускаешь ее выбираешь нужную библиотеку или exe и она показывает все вызываемые dll. Вот там и надо искать что тебе еще нужно.
Программа показывает библиотеки которые указаны как static lib, те которые прописаны в загрузочной части exe, dll. Чтобы посмотреть dynamic lib, те которые подключаются run time (во время исполнения программы) нужно запустить Profile/Start Profiling (работает только с exe).
Все это проверять конечно нужно на "нормально" установленной программе.
Автор: sanb
Дата сообщения: 19.12.2007 11:48
AmonRaaa

Цитата:
Кто-то спрашивал как можно пересобрать пакет, если нету исходного Build а.

полезно, добавил в шапку
Автор: Sergey_AV
Дата сообщения: 19.12.2007 11:50
AmonRaaa

Я примерно так и предполагал . Вопрос в том, что конкретно трейсить: ведь непонятно, в чем затык. СПДС (точнее, его интегратор)? Там я не нахожу никакого криминала. Либу, с которй все началось? Тоже темный лес. Про сам автокад и говорить нечего - там объем просто "недеццкий" .
Надо все делать более осмыссленно, т.е. понимать, что ищется. А у меня, к сожалению, таких навыков нет . Ладно, сейчас попробую реализовать одну-две идеи (проклятый Автокад уж больно долго собирается), там посмотрим...
Автор: AmonRaaa
Дата сообщения: 19.12.2007 12:12
Sergey_AV

Цитата:
Я примерно так и предполагал . Вопрос в том, что конкретно трейсить: ведь непонятно, в чем затык. СПДС (точнее, его интегратор)? Там я не нахожу никакого криминала. Либу, с которй все началось? Тоже темный лес. Про сам автокад и говорить нечего - там объем просто "недеццкий" .
Надо все делать более осмыссленно, т.е. понимать, что ищется. А у меня, к сожалению, таких навыков нет . Ладно, сейчас попробую реализовать одну-две идеи (проклятый Автокад уж больно долго собирается), там посмотрим...


А кто сказал что будет просто. Быстро проблему могли бы решить люди написавшие Autocad. Пробовал делать анализ trace от log_monitor? Нужно пробовать найти место когда появляется окно с ошибкой и пробовать смотреть все что было до этого окна. В большинстве случаев ошибка будет вызвана либо реальным, либо "исскуственным" exception. С первым проще так как он будет относится к "реально проблемному" модулю.
Если это искуственный тут сложнее, тк exception генерится просто служебным модулем, который явного отношения к ошибке не имеет.

Кстати никто не пробовал встроить в portable реальный debugger чтобы сделать trace программы "изнутри". Если да то какой лучше.

Автор: android X
Дата сообщения: 19.12.2007 12:15
Sergey_AV
Я задолбался уже собирать комплект акад+спдс методом тыка. Окно с ошибкой и вправду исчезло, но легче от этого ничуть не стало. Попробовал добавить в список External DLLs все библиотеки которые идут вместе с прогой - шляпа, появляется затык с ошибкой в работе arx модуля. Стал методом тыка перебирать библиотеки которые "стоит" оставить\выкинуть из списка External, но это путь вникуда. Нашел что если оставить в списке все библиотеки кроме MechCtl.dll;MT.dll, то ошибка со сбоем в mcsLoader.arx не выскакивает, но и дельного ничего не происходит. Ерунда короче. Программы надо ковырять с пониманием того что мы хотим найти и добиться в конечном счете, а подобный моему дилетантский подход может привести к успеху в крайне редких случаях и при очень большом везении. Обидно, досадно, но без помощи знающих гуру никак не обойтись. Уровень поисков не тот.
Автор: Sergey_AV
Дата сообщения: 19.12.2007 12:34
AmonRaaa

Цитата:
А кто сказал что будет просто.

Никто . Но я имел ввиду не это - имелось виду время, которое компиляется Автокад. Дело в том, что даже изменение компрессии на "Фаст" существенно увеличивает время сборки проекта, а мне по ряду причин, не хотелось бы иметь "раздутое" (неупакованное) приложение.

Цитата:
Пробовал делать анализ trace от log_monitor?

Не-а, я не умею . Попробую еще поковырять...

Цитата:
Кстати никто не пробовал встроить в portable реальный debugger чтобы сделать trace программы "изнутри". Если да то какой лучше.

Хорошая мысль . К сожалению, я все представляю в "общих чертах" .

android X
Аналогичная ситуация. Целиком аналогичная. За исключением того, что воспользовавшись советом AmonRaaa, я использовал прогу Dependency Walker, и та дала несколько новое направление моим мыслям . Но... Пока ничего конкретного нет, увы.

Да, может я, конечно, чего-нибудь непонимаю (метод тыка - есть метод тыка ), на с помощью Dependency Walker я нашел в проекте некий завяз на msjava.dll, включение в проект которой (в список External DLLs), похоже победило проблему с неработающей активацией...
Автор: CrazyDeath
Дата сообщения: 19.12.2007 12:57

Цитата:
с учетом произведенных программой изменений в регистре

а без учета в хекс редакторе ищим 85 72 FF 8F ,
это начало Registry.rw.tvr. а конец куча нулей.
Registry.rw.tvr размером меньше 36кб мне не попадался.
Автор: AmonRaaa
Дата сообщения: 19.12.2007 17:53
CrazyDeath

Цитата:
а без учета в хекс редакторе ищим 85 72 FF 8F ,
это начало Registry.rw.tvr. а конец куча нулей.
Registry.rw.tvr размером меньше 36кб мне не попадался.


Да если порытся в exe portable то можно выдернуть и виртуальный регистр, и файлововую систему. Так как сам портайбл это загрузчик и два контейнера внутри .tvr и .thfd.
Хорошо было бы иметь конечный продукт для этого, но... я такового не видел. Поэтому пришлось найти альтернативу.
Никто не пробовал работать с vftool тхинсталла. Импортирует файлы в проект он отлично, а вот экспортировать через него я так и смог. И описания толкового я на него не нашел.
Автор: CrazyDeath
Дата сообщения: 19.12.2007 19:32

Цитата:
а вот экспортировать через него я так и смог

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


Альтернативный запуск Тхинстала
Для начала необходимо снять дамп виртуальной длл
или в терминах тхинсталл os_exe.dat(внутреннее имя os_exe)
я использывал ollydbg.

00401034 |. E8 B70A0000 call 010_Edit.00401AF0;распаковка
00401039 |. 80FB D8 cmp bl, 0D8;ставим брейкпоинт

в регистре esi адрес распакованой os_exe.(Follow in dump)
Переходим в хекс дамп и копирум(binary->binary copy)
Вставляем в любой хекс редактор.
Коректируем выравнивание секций.
к примеру секция кода начинается с 0x1000,
а должна начинатся 0x400.
Размер ехе до коректировки секций 1,4мб после 930кб.
ну а дальше создаем батник и внего пишим.
Перед запуском батника обезательно сохраните
необходимые документы и закройте ненужные проги,
если просто запустить os_exe.exe без батника
есть шанс зависнуть.


Код: set TS_OPTIONS=%CD%\sum_prog.exe
set TS_SOURCE=%CD%\sum_prog.exe
set THINSTALL_SANDBOX_DIR=%CD%
os_exe.exe
Автор: Kurunir
Дата сообщения: 20.12.2007 02:43
Ну а мои успехи в портировании автокад 2006 rus .. проще сказать никаких. так и не справился с активационным окном. те же самые ошибки, что с writecopy, merged .. :'(
Автор: Sergey_AV
Дата сообщения: 20.12.2007 06:49
Kurunir

Цитата:
Ну а мои успехи в портировании автокад 2006 rus .. проще сказать никаких.

У меня все получилось . Но... без СПДС-графикс автокад для меня малоинтересен, нужно именно с СПДС.
Автор: android X
Дата сообщения: 20.12.2007 09:54
Sergey_AV, Kurunir
Сами по себе акад 2006, 2007, 2008, акад меп 2008 лично для меня это уже давно пройденный этап. причем и с активацией дело нормально обстояло на ранних версиях тинсталла. начиная с версий за 3.2, а может более поздних вижу строго 1 картину - при попытке активации акад 2008 и акад меп 2008 стабильно гадит на 32м секторе дисков, причем как правило гадит не на системном диске, а на внешних съемных хардах, а после того как там нагадит активация все равно не срабатывает. еще более удивительно то, что в некоторых случаях на поздних сборках тинсталла активацию выполнить все таки удавалось, но обнаружить какую-то закономерность в этом я так и не смог.
мне как и Sergey_AV интересны больше акад или акад меп в связке с различными приблудами (лично меня интересуют приблуды по части ОВК и оформительские прибамбасы). большинство мелких и даже довольно таки увесистых приблуд встраиваются и работают в thinstalled исполнении неплохо, но вот СПДС не хочет ни в какую. единственный вариант - это поставить либо сам СПДС, либо Object Enabler и использовать только ту часть функций, которая поддается редактированию через окно Properties объекта, но честно говоря это такой минимум что мириться с ним никак неохота. о редактировании таблиц и сложных элементов речь уже идти не может, о создании новых объектов - тоже. вообще такое желание возникает либо отдельную ветку по данной проблеме выделить, либо как то объединить усилия заинтересованных и уже систематизировать подход с целью решить эту проблему. по большому счету нужен грамотный человек-кодер, которому обрисуется ситуация, поставится акад в связке с спдсом и либо готовый акад в thinstalled исполнении с тем же спдсом, либо уже сграбленный проект на котором можно было бы проводить эксперименты и анализ. по идее знающему человеку не составит труда обнаружить место где затык происходит и вынести вердикт - решаема ли заморочка или нет.

прошу прощения у тех форумчан которые не работают ни в акаде ни тем более в спдс за эти узкоспециализированные посты, но пока больше нет места где можно хоть каким-то опытом делиться и пытаться решить озвученную проблему.
Автор: ShIvanS
Дата сообщения: 20.12.2007 10:03
Народ помогите пожалуста!
Проблема в сплывающем окошке "Launching ***.exe"!
Что я только не делал чтобы от него избавиться нечего не получилось!
Нашел только одно упоминание об этом:
"
Цитата:
тут дело корявом патче
ThinstallPatch.rar на FileShare.in.ua
а вот нормальный
Patch (v3.043).rar на FileShare.in.ua

но желательно иметь оба
вторым патчить чтобы просто запускалась
в вот первым
Sergey_AV
можно убирать окошко Launching ***.exe, появляющийся в трее
",но ссылочка не рабочая!
Автор: Sergey_AV
Дата сообщения: 20.12.2007 11:05
ShIvanS

Смени версию (возьми из последних), там эта проблема давно решена. А v3.043 - это уже, извините, мезозой . Вообще-то вся информация об этом есть в шапке.
Автор: andkh1
Дата сообщения: 20.12.2007 11:07
ShIvanS
http://forum.ru-board.com/topic.cgi?forum=35&bm=1&topic=7917 - тут посматри новые версии...
Автор: dj_Diesel
Дата сообщения: 20.12.2007 16:05
andkh1
CrazyDeath
Вопрос это у меня такое у одного да
вообщем есть программа Melomania 1.8.0.4
при попытке build.bat
bin\Melomania.exe:
The file %ProgramFilesDir%\Melomania\Melomania.exe is not an executable image, c
annot build.
Press any key to continue...

это с новой версией 3.300 от CrazyDeath
кстати мож дело в кряке там вообщем exe заменяется для реги
но, по идее прога работает
Автор: andkh1
Дата сообщения: 20.12.2007 16:21
dj_Diesel
У меня такое было с Help&Manual... А попробуй с другой версией 3,330 или 3,207... Или даже 3,146... Это может быть глюк версии Thinstall, у них в каждой версии ошибки одни исправляются, другие появляются (как в прочем и везде)...
Автор: dj_Diesel
Дата сообщения: 20.12.2007 17:00
andkh1
ок
Автор: CrazyDeath
Дата сообщения: 20.12.2007 18:23
Попробуй компильнуть с таким ключем
Код: -Exact
Автор: gyfhgyfh
Дата сообщения: 20.12.2007 18:28
[Melomania.exe] ASProtect 2.1x SKE -> Alexey Solodovnikov

Thinstall.VS not support some packed APP .

But you can unpack it for use Thinstall.VS .
Автор: CrazyDeath
Дата сообщения: 20.12.2007 18:32
Ага ищи распакованую версию ,
тхинстал с асром не дружит.

Добавлено:
а вот и очередной абдейт подоспел 3.332
ченж лога даже в хелпе не нашол.
надеюсь скоро выложу.
Автор: Kurunir
Дата сообщения: 21.12.2007 05:03
Бросил работать с autocad 2006 не добил активацию, сделал зато 2007. Но там другая проблема - все файлы с которыми работаем сохраняются в папку Thinstall на флэшке.. а не на жестком диске. как решить эту проблему?
Автор: igorkk
Дата сообщения: 21.12.2007 07:49
А у меня Акад МЕР 2008 так и не хочет собираться. Ни русский, ни импортный. В версии 3.300 стабильно затык получался в одном месте, в версии 3.330 с аналогичной стабильностью - в другом. Но по смыслу аналогичном (в обоих случаях на библиотеках).
Не пойму, в чем проблема..............
Автор: ShIvanS
Дата сообщения: 21.12.2007 13:38

Цитата:
ShIvanS

Смени версию (возьми из последних), там эта проблема давно решена. А v3.043 - это уже, извините, мезозой . Вообще-то вся информация об этом есть в шапке.


Спасибо!Ток у меня версия 3.3 так что я не совсем отстал от жизни!)))Не помню от куда кочал,попробую по вашей сылочки!
Автор: sanb
Дата сообщения: 21.12.2007 15:28
dj_Diesel

Цитата:
Thinstall.VS not support some packed APP .

он обламывается на этапе извлечения иконки из закриптованного файла, может поможет если в Package.ini исключить параметр "Icon=" и т.п.

2 Акад Team
может вы лучше переместитесь в Тестирование сборок Portable софта ?
Автор: gyfhgyfh
Дата сообщения: 21.12.2007 18:03
Thinstall.VS Logo Patch (Not for UnPacKed ver)

http://rapidshare.com/files/78118092/Thinstall.Logo.Patch.rar

Release "Thinstall" to your Thinstall.VS folder , rebuild your project and take efect .
Автор: sanb
Дата сообщения: 21.12.2007 18:17
gyfhgyfh
thanks!
are you have ThinManager from ProjectPortables? please share them
Автор: MIHMIH007
Дата сообщения: 22.12.2007 03:40
Я ещё дней 10 назад поднимал вопрос о привязке СПДС к автокаду.....помучался дня 3 и бросил....Сделал сборку из 2008 автокада навесил на него Геоникс + Проджект студио + китокс + тулпак. НО МЛИН СПДС навесить так и не получилось.... Кстати автокад 2008 в портабл версии активацией удобнее так как в активатор не нужно копировать 2 раза как в 2007 версии. В 2008 версии выскакивает одна строка тем самым облегчая процесс регистрации. Тестировал что 2008 быстрее запускается на компе чем 2007. Кстати на офф сайте уже есть к 2008 первый сервис пак и хот фиксы. Глюков обнаружено не было. Работает всё просто супер.

Добавлено:
P.S. Lingvo12 и Nero 6 удалось кому нить собрать??? Lingvo выдаёт ошибку после сборки а Nero не видит локальных дисков((((

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980

Предыдущая тема: Программа для поднятия трубки модемом


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.