Показать полную графическую версию : SFX Creator 4 Alpha - создаём SFX архивы
tuz-veta, Если есть пути в реестре, например, в App Paths, я делаю так:
Function PRE_Function
ReadRegStr $0 HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\ИСПОЛНЯЕМЫЙ ФАЙЛ.exe" "Path"
IfFileExists "$0\ИСПОЛНЯЕМЫЙ ФАЙЛ.exe" PreokSoft_1 0
MessageBox MB_OK|MB_ICONEXCLAMATION "Внимание! Программа ХХХХХХХ не установлена!"
Quit
PreokSoft_1:
StrCpy $INSTDIR "$0"
FunctionEnd
tuz-veta
07-01-2013, 21:00
Salmo,
А если там нет такого пути?
Как сделать чтоб инсталятор автоматом искал на каком диске стоит программа и установил туда файлы? »
Это не разумно хотя бы потому, что "поиск" на всех дисках может занять длительное время и это не профессионально :)
Представьте выражение лица пользователя, который сидит и ждёт, пока "программа установки" прошерстит в поисках файла его хотя бы 2 ЖД, которые забиты по терабайту каждый...
Программа не оставляет за собой никаких следов в системе? Маловероятно, разве что это Portable приложение...
tuz-veta
08-01-2013, 01:27
K.A.V.,
Спасибо я понял!
Прога очень суперовая!!!!! :up :up :up
tuz-veta
08-01-2013, 02:05
Это у меня только,на виндовс 7 скины не работают ? :dont-know
Это у меня только, скины не работают ? »
На Windows 7 у меня не работают :)
На Windows XP могут не работать из-за отсутствия необходимых библиотек (точно не помню каких, но минимум это mfc71.dll и gdi32.dll, возможно потребуется что-то ещё)
tuz-veta
08-01-2013, 02:53
А как быть с ярлыками на компоненты?
если снимаю галочку с компонента то ярлык все равно создается на этот компонент.
tuz-veta, лучше Вы бы прислали исходник, а то "что где не так" аж голову надо пошаманить.
А как быть с ярлыками на компоненты?
если снимаю галочку с компонента то ярлык все равно создается на этот компонент. »
Опишите более подробно проблему
Вы, как я понял, создаёте пакет инсталлятора с выбором компонентов при установке, и в один из компонентов прописали создание ярлыка, но он создаётся даже если компонент не отмечен, так?
Проверьте ещё раз все данные в проекте, возможно, вы не в тот компонент команду на создание ярлыка отнесли :)
Или прикрепите к сообщению файл проекта, так мы сможем определить причину проблемы
tuz-veta
08-01-2013, 14:43
K.A.V.,
Вот исходник
tuz-veta, вам необходимо отнести команду создания ярлыка в один из компонентов, чего вы не сделали...
Загрузите проект, затем откройте настройку компонентов и выберите из списка пункт Ярлыков
Затем выделите компонент слева, в который хотите отнести команду, и выберите команду, которую хотите отнести в нужный компонент
Нажмите кнопку "Отнести команду к выделенному компоненту"
tuz-veta
09-01-2013, 02:13
K.A.V.,
Я понял,спасибо тебе большое!!!! :yahoo:
K.A.V., не могли бы сделать поддержку Drag-and-Drop (перетаскивание файлов, к примеру, файл из Рабочего стола перетаскивает, удерживая левой кнопкой мыши в программу SFX Creator); так легче будет.
alert30, в главном окне (и в FastAdd панели, попробуйте её) есть данная штука, нооо она не работает, если перетащить несколько файлов одновременно (NSIS плагин), поэтому я не стал внедрять данную возможность в другие диалоги SFX Creator
K.A.V., к большому сожалению, в 64-битной ОС Win7 не производится импорт данных из файла реестра (*.reg). Используется диалог "Добавить импорт REG файла". Настройки программы, скриншоты и скомпилированный ".exe" файл нах-ся по ссылке: http://rghost.ru/43139858
В 32-битных ОС (Win7, XP) импорт данных в реестр завершается успешно.
Petya V4sechkin
19-01-2013, 07:31
скомпилированный ".exe" файл
Он ведь 32-битный, поэтому:
Registry Redirector (http://msdn.microsoft.com/en-us/library/windows/desktop/aa384232(v=vs.85).aspx)
Registry Keys Affected by WOW64 (http://msdn.microsoft.com/en-us/library/windows/desktop/aa384253(v=vs.85).aspx)
K.A.V., к большому сожалению, в 64-битной ОС Win7 не производится импорт данных из файла реестра (*.reg) »
Производится, но в другую ветку, а именно сюда:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node
Вы можете отключить данное перенаправление, для этого:
Добавить в главный исходник строку (в начале кода)
!include "x64.nsh"
Затем в начале функции .onInit добавить команду
${DisableX64FSRedirection}
И скопировать файл x64.nsh в папку (в прикреплённом архиве)
\NSIS\Include
---
Т.к. у меня было слабое железо, не было возможности тестировать в системах, отличных от Windows XP
Сейчас же, все основные тесты SFX Creator будут проходить на Windows 7, так же поставил на виртуальную машину Win 7 x64, в скором времени обещаю добавить настройку данного перенаправления, чтобы не редактировать постоянно исходники
K.A.V., благодарю Вас за подробные пояснения, а также за помощь в решении сложившейся ситуации! Было бы действительно прекрасно добавить поддержку 64-битных операц. систем, но пока же будем прибегать к предложенному Вами методу.
Petya V4sechkin, спасибо и Вам за предоствленные ссылки! Было полезно узнать о перенаправлениях.
Limonica
22-01-2013, 11:16
KAV самоудаление с помощью DLL не работает на 32 разрядных осях начиная от WinVista, заканчивая Win8. На х64 всё нормально удаляется, кроме WinXP x64, вместо самоудаления открывается папка "Мои документы", удаления нет. Вариант использовать сторонний ехе неподходит, можете написать как реализовать данную функцию на BAT?
KAV самоудаление с помощью DLL не работает на 32 разрядных осях начиная от WinVista »
Сейчас слава богу есть возможность проверить на разных ОС, странно, но на Win7 64 Bit удаление проходит, а на 32 битной Win 7 нет :dont-know
Вообщем обновил DLL, попробуйте обновить SFX Creator (через встроенную функцию) и перекомпилируйте проект, должно сейчас заработать
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC