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

» VMware ThinApp (formerly Thinstall) 3

Автор: bumburbia
Дата сообщения: 27.09.2014 11:10
007Alex007
Какой смысл собирать x86-битную версию Duplicate Cleaner в ThinApp 5. . . ?
Какие плюсы, по вашему, могут быть, по сравнению со сборкой в ThinApp 4.7.3 ?

добавлено:
Ради интереса собрал Duplicate CleanerPro 3.2.5 в ThinApp 5.1.0, запускается и работает от Win ХР до 8.1 x86\x64 (при установленном .NET Framework 2+).
Автор: 007Alex007
Дата сообщения: 27.09.2014 12:54
Попробую более подробно объяснить.
Duplicate Cleaner - это если так можно выразиться микс программа (т.е. x86 и x64 в одном флаконе), она сама определяет разрядность Win и в зависимости от этого может запускаться как x86 или как x64.
Duplicate Cleaner я инсталлировал на Win7 x64, и программа запускалась как x64 битная версия.
Если произвести сборку программы в ThinApp 5, в Win7 x64, то после запуска сборки открывается Duplicate Cleaner x86, а не x64.
Если произвести сборку программы в Win7 x64 при помощи Spoon или Cameyo, то программа работает, как и положено и сама определяет разрядность системы (в Win7 x64 - запускается Duplicate Cleaner x64, а на WinXP x86 - Duplicate Cleaner x86).

Отсюда и вопрос как заставить ThinApp 5 запускать программу как положено?
Почему Spoon справляется с этой задачей, а ThinApp 5 нет?
Или ThinApp 5 еще сырой для создания программ x64 разрядности?
Автор: bumburbia
Дата сообщения: 27.09.2014 13:32
007Alex007
По большому счёту, 86-битная версия будет работать на на 64-битной системе так же, как и на 32-битной, а уж если дело принципа: "и сама определяет разрядность системы" и "как заставить ThinApp 5 запускать программу как положено?" - ,скорее всего, никак.
Это зависит от установщика программы, к примеру, сборка Driver Magician только в двух (или трёх(?)) последних версиях при запуске стала правильно определять битность системы, а до этого - только х86, вне зависимости от того, где собрано, в Win x86 или x64. Но в случае с Driver Magician это очень существенно, чтобы предложить к скачиванию драйверы нужной разрядности, а с Duplicate Cleaner не даёт ровным счётом ничего.
Автор: SunOK_ZM
Дата сообщения: 27.09.2014 13:46
007Alex007, точно такой же єффект с программой Better Explorer - его запускаемый файл реально 64-разрядный, но в свойствах "О программе" пишет 32-бит. Почему - непонятно.
А у Duplicate Cleaner запускаемый файл 32-разрядный, да еще и нагло грузит 32-битную DLLку. Замена файлов не поможет. Параметры LargeAddressAware=1, ReserveExtraAddressSpace=1 бесполезны оказались. Видать недороботка тинаповцев, ждем-надеемся на устранение этого досадного недоразумения с подгрузкой DLLок (их недавно Автокад осенил на подвиг, ждем следующего "прометея").
Автор: 007Alex007
Дата сообщения: 27.09.2014 13:55
bumburbia
Совершенно верно - дело принципа. Сама сборка работает и ни каких нареканий к ней нет, кроме x64.

"зависит от установщика программы" - я же написал что другая программа, как например Spoon с этой задачей справляется.

Просто хочется узнать, есть ли какой то способ заставить сборку, сделанyню в ThinApp 5, работать как положено. Может какие то дополнительные параметры надо добавить в Package.ini.
Автор: AVanti473
Дата сообщения: 27.09.2014 15:44

Цитата:
Если произвести сборку программы в ThinApp 5, в Win7 x64, то после запуска сборки открывается Duplicate Cleaner x86, а не x64.
Если произвести сборку программы в Win7 x64 при помощи Spoon или Cameyo, то программа работает, как и положено


Цитата:
Просто хочется узнать, есть ли какой то способ заставить сборку, сделанyню в ThinApp 5, работать как положено.


Хм, теперь понял. А это интересно... Но всё равно, а как собирается проект??? Попробую пояснить:
Итак мы имеем:
- Вы собираете программу в ThinApp 5
- Система сборки Win (предположим 7) x64
- Программа х64 архитектуры и ставится в систему как х64-битное приложение.
- При сборке проекта и запуске готовой портабельной программы в 64-битной системе она сообщает что 32-битная.
Мои вопросы:
- А точно программа ставится как приложение х64 архитектуры? Тоесть в папку Program Files а не в папку Program Files (x86) ?
- Программные файлы проекта ложатся в папку %ProgramFilesDir(x64)% или в %ProgramFilesDir% ?
Почему спрашиваю:
- Сама ThinApp не влияет на процесс установки приложения. Если приложение в системе х64 изначально ставится в Program Files, ThinApp, по идее, запишет файлы в папку проекта %ProgramFilesDir(x64)% ... Встречал случаи, когда х64-битное приложение ставится и в Program Files (x86) и дописывает файлы в такую же папку в Program Files - но это уже к разрабам софта за разъяснениями... Хотя, вопрос на чём Вы собираете проект? Может на WinXP x64 ?
Автор: bumburbia
Дата сообщения: 27.09.2014 16:43
AVanti473
Архитектура Duplicate Cleaner х86, при сборке на Win х64 программа устанавливается в Program Files (x86) и при запуске пишет х64, но портативная сборка тут же запустится с надписью х32. В этом то и проблема (в данном случае надуманная, на мой взгляд).
Автор: 007Alex007
Дата сообщения: 27.09.2014 16:57
AVanti473

Цитата:
А точно программа ставится как приложение х64 архитектуры? Тоесть в папку Program Files а не в папку Program Files (x86) ?

Нет программа устанавливается только в папку Program Files (x86).

Цитата:
Хотя, вопрос на чём Вы собираете проект? Может на WinXP x64 ?

Я писал об этом выше. Проект я собирал в Win 7 SP1 x64.

Почему то никто не замечает что я написал что, если проводить сборку в Spoon, то все ОК. И еще интересно, оказывается, если сборку создавать на Win XP x86 в программе Spoon, то в дальнейшем эта сборка в Win 7 x64 открывается как x64 битная.

Походу глюк в ThinApp 5.
Автор: bumburbia
Дата сообщения: 27.09.2014 17:10

Цитата:
Походу глюк в ThinApp 5.

Какой глюк ? С чем сравнивать ? Со Spoon ? - это из другой оперы.
Автор: 007Alex007
Дата сообщения: 27.09.2014 17:44
А как же заявления разработчиков ThinApp о полной поддержке x64 приложений, и вот такая вот ситуация. Значит не доработка и, следовательно, продукт пока что сыроват.
По поводу Spoon - я им практически не пользуюсь, только уж когда возникают вопросы к ThinApp. А Cameyo вообще только вчера попробовал и сразу удалил.
Так что ThinApp остается лучшим решением для создания портабельных программ.
А так присоединяюсь к SunOK_ZM

Цитата:
ждем-надеемся на устранение этого досадного недоразумения



Всем спасибо. И отдельное спасибо тем, кто занимается переводом мануала по ThinApp.
Автор: bumburbia
Дата сообщения: 27.09.2014 18:14
007Alex007

Цитата:
А как же заявления разработчиков ThinApp о полной поддержке x64 приложений

Но в данном то случае приложение всё же х86, устанавливается в папку Program Files (x86) на Win х64, а разработчики заявили о поддержке программ именно х64.

Когда-то спрашивал, но нормального ответа так и не получил:
Портативные сборки Duplicate File Remover , AnyReader не видят языковые файлы (папку Languages) и запускаются только с дефолтным английским, хотя в настройках можно выставит любой возможный (в том числе русский). Если папку Languages положить рядом с песочницей (запускаемым файлом), программа языки видит и переключает на выбранный.
Примерно тоже самое происходит с BurnAware Pro, только здесь речь о папке со скинами, портативка запускается только с дефолтным скином и не видит остальные. Но если папку skins положить рядом ... всё O'key.
Что можно предпринять ?
Автор: AVanti473
Дата сообщения: 27.09.2014 19:03
007Alex007
Я не буду цитировать всё вышесказанное, но bumburbia прав! Если прога ставится в Program Files (x86), как ThinApp должна угадывать архитектуру программы, если саму программу она только складывает в контейнер, а не видоизменяет?! Никаких недоработок в ThinApp в этом смысле нет, все претензии к разрабам Duplicate Cleaner. Софт априори не может быть х64 архитектуры и устанавливаться по умолчанию в папку Program Files (x86). Что там в этом плане со Spoon и Cameyo? Да наверное ничего особенного! Просто эти программы не обращают внимание на критические ошибки объявления х32 приложений х64-ми. Кстати, что Вам мешает установить программу Duplicate Cleaner не по умолчанию в Program Files (x86), а принудительно в Program Files? Может тогда и решиться вопрос в ThinApp?
Автор: coherent
Дата сообщения: 28.09.2014 13:07
007Alex007
Попробуйте установить программу не в папку по умолчанию, а просто на диск С:, например С:\Duplicate Cleaner Pro.
Автор: serafim18
Дата сообщения: 28.09.2014 21:18
Подскажите или ткните в ветку, описана секция Package.ini параметра RemoveSandboxOnExit Не удаляется песочница, хотя все процессы приложения завершены. В справочнике всё описано достаточно просто, перечитал, установлено значение 1,но песочница не удаляется. Находится рядом с ланчером. Спасибо.
Автор: AVanti473
Дата сообщения: 28.09.2014 21:36

Цитата:
описана секция Package.ini параметра RemoveSandboxOnExit


Просто в Package.ini расскомментировать (удалить в начале точку с запятой) параметр:
;RemoveSandboxOnExit=1
Автор: 007Alex007
Дата сообщения: 28.09.2014 21:41
AVanti473, coherent
По поводу папок – все это не то. Конечно, я попробовал, как и советовали, но ничего из этого не вышло. Я так предполагаю, что все дело в изоляции реестра ThinApp. Хотя я пробовал удалять ветки реестра в сборке, я даже попробовал удалить все файлы Attributes.ini во всех папках, но безрезультатно. По ходу ThinApp по умолчанию что-то изолирует от системы, и определить, что именно он изолирует, пока что не представляется возможным. Но если попробовать собрать сборки из похожих программ (например Total Commander x86/x64), то сборки работают правильно.

bumburbia

Цитата:
Портативные сборки Duplicate File Remover , AnyReader не видят языковые файлы (папку Languages) и запускаются только с дефолтным английским


Попробуй в программе ThinApp, после второго сканирования и сравнения snapshot-ов, при выборе основного запускаемого exe, установить галочку напротив DuplicateFileRemover.exe, у которого путь:
C:\Program Files\Essential Data Tools\Duplicate File Remover\Launcher.exe.
Если надо, то потом можешь заменить Launcher.exe в Package.ini на DuplicateFileRemover.exe, после этого Launcher.exe можно удалить из папки.

[Duplicate File Remover.exe] (это в качестве примера, я ничего здесь не менял)
Source=%ProgramFilesDir%\Essential Data Tools\Duplicate File Remover\Launcher.exe
;Change ReadOnlyData to bin\Package.ro.tvr to build with old versions(4.6.0 or earlier) of tools
ReadOnlyData=Package.ro.tvr
WorkingDirectory=%ProgramFilesDir%\Essential Data Tools\Duplicate File Remover
Icon=%ProgramFilesDir%\Essential Data Tools\Duplicate File Remover\Application.ico
Comment=Easily find and remove duplicate files wasting hard disk space

serafim18
Сама папка песочницы не удаляется, она только очищается.
Автор: serafim18
Дата сообщения: 28.09.2014 21:51

Цитата:
Просто в Package.ini расскомментировать (удалить в начале точку с запятой) параметр:
;RemoveSandboxOnExit=1

Так и было сделано
Автор: 007Alex007
Дата сообщения: 28.09.2014 21:55
Есть ли у кого-то скрипт для очистки папки prefetch? Можете поделиться им, пожалуйста?
Автор: serafim18
Дата сообщения: 28.09.2014 21:56

Цитата:
serafim18
Сама папка песочницы не удаляется, она только очищается
007Alex007

Папка отчищается, Вы правы, но не удаляется
Автор: AVanti473
Дата сообщения: 28.09.2014 21:58

Цитата:
Так и было сделано


А папка просто остаётся, или остаётся с содержимым? Её ничего не блокирует? В ручную удаляется без проблем? Если всё так, то проверьте орфографию RemoveSandboxOnExit=1 в Package.ini. Думаю больше даже в мануале не написано, ведь всё просто...
Автор: serafim18
Дата сообщения: 28.09.2014 21:58

Цитата:
007Alex007

Вы правы папка очищается, но ...Не удаляется...
Значит удаляться не будет?

Добавлено:
AVanti473
Орфография проверена, папка ничем не заблокирована, родительский и дочерний процесс завершены
Автор: 007Alex007
Дата сообщения: 28.09.2014 22:18
serafim18

Цитата:
Значит удаляться не будет?

Не будет. Возможно, есть какой-нибудь скрипт для удаления. Или если так важно, чтобы удалялась папка, то попробуйте Spoon, в нем есть такая функция. Но от сборки, сделанной в Spoon, остается много лишнего в реальной системе, по сравнению с ThinApp.
Автор: serafim18
Дата сообщения: 28.09.2014 22:30

Цитата:
007Alex007

Спасибо за ответ...Скрип написан...перехват хэндла окна программы и всё удаляется
Автор: bumburbia
Дата сообщения: 29.09.2014 10:26
007Alex007

Цитата:
это в качестве примера

Пример положительный, проблема решилась .
Менять что-то местами или пути в Package.ini не обязательно, достаточно к записи в Package.ini исполняемого файла (какой выбран при сборке: Launcher.exe или DuplicateFileRemover.exe) добавить WorkingDirectory=... и сборка увидит папку с языками.
Осталось непонятным, зачем нужен Launcher.exe в этих программах, программы, вобщем-то, работают и без него, но это уже к разработчикам.
Автор: 007Alex007
Дата сообщения: 29.09.2014 20:39
serafim18

Цитата:
Скрип написан...перехват хэндла окна программы и всё удаляется

Может выложите его, мне бы он пригодился. И не могли бы помочь со скриптом для очистки папки prefetch, который срабатывал бы после закрытия портабельной программы?



Автор: maklar47
Дата сообщения: 30.09.2014 16:35
Ув. coherent
К вопросу об установке/удалении sys-драйверов. ИМХО, простой способ с использованием загрузчика драйверов loader.exe.
Файлом loader.exe не поделитесь? а то Ваша ссылка уже не рабочая. Спасибо.
Автор: serafim18
Дата сообщения: 30.09.2014 17:02

Цитата:
007Alex007

В ПМ
Автор: coherent
Дата сообщения: 30.09.2014 18:45
maklar47

Цитата:
Файлом  loader.exe  не поделитесь?

http://rghost.ru/58284744
Автор: bumburbia
Дата сообщения: 30.09.2014 23:25
Программа (AVS Video Converter) при установке добавляет Visual C++ 2005, сборка нормально запускается и работает на чистой виртуалке (ХР-8), но если исполняемый файл поместить в корень диска С - запуск не происходит "Приложению не удалось запуститься, поскольку MSVCR80.dll не был найден". Если здесь же создать папку, переместить в неё файл - запускается без проблем. MSVCR80.dll в вирт. системе (ХР SP3) нет, AVS Video Converter при инсталляции её не устанавливает, то есть, надо полагать, MSVCR80.dll для работы этой программы не требуется. Почему же сборка не хочет запускаться из корня диска С без этой dll-ки ?
Автор: SunOK_ZM
Дата сообщения: 01.10.2014 17:48
bumburbia, с диска С: вообще ThinApp-портативки практически не запускаются, иногда из корня других дисков тоже. А стоит поместить в любую подпапку - вуаля. Где-то этот момент описан, у Астра55 что-ли.

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149

Предыдущая тема: Проблемы с закачкой


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