Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » SFX Creator 4 Alpha - создаём SFX архивы

Ответить
Настройки темы
SFX Creator 4 Alpha - создаём SFX архивы

Аватара для K.A.V.

Ленивый кусок мяса


Contributor


Сообщения: 1986
Благодарности: 723


Конфигурация

Профиль | Сайт | Отправить PM | Цитировать


Изменения
Автор: K.A.V.
Дата: 15-06-2020
Описание: Сборка #3 (фикс ошибки невозможности запуска)
Вложения
Тип файла: zip SFXCreator4Alpha_Build3.zip
(2.73 Mb, 571 просмотров)
Тип файла: zip build_3.zip
(812.3 Kb, 286 просмотров)
SFX Creator 4 Alpha
Обновление с любых прошлых версий не поддерживается! Производите чистую установку
Официальный сайт: http://kav-soft.ru/

Прочтите, перед тем как писать в эту тему

Если у вас возникли сложности при работе с SFX Creator, то пожалуйста, будьте добры, убедитесь, что вы проделали всё нижеописанное:
1. В главном окне программы нажмите на кнопку с красным значком вопроса и ознакомьтесь с файлом справки
2. Убедитесь, что используете последнюю версию SFX Creator
3. Не обсуждается работа ранних версий SFX Creator

Если у вас по прежнему возникают сложности - пишите в эту тему

О программе
Программа SFX Creator предназначена для создания SFX архивов, а также программа может быть использована для создания простых пакетов инсталляций с графическим интерфейсом и выбором устанавливаемых компонентов.
Основные возможности программы
Их много
  • Возможность создания как полностью silent (скрытых) SFX архивов, так и простых пакетов инсталляторов с графическим интерфейсом
  • Возможность показать настроенный баннер прогресса распаковки файлов
  • Возможность показать ваше изображение перед запуском процесса распаковки файлов
  • Возможность самоудаления архива после распаковки ваших файлов
  • Возможность создать программу удаления (с добавлением пункта в апплет "Установка и удаление программ")
  • Возможность закрыть приложения по точному/части имени окна, по классу окна, по образу процесса
  • Возможность ожидания запущенных приложений
  • Возможность проверки операционной системы
  • Поддержка большинства переменных системных/пользовательских директорий
  • Поддержка перезагрузки компьютера (по запросу или принудительно)
  • Создание ярлыков для файлов
  • Импорт REG-файлов после распаковки файлов
  • Выполнение приложений
  • Выполнение операций в реестре (запись/удаление параметров, удаление разделов)
  • Выполнение файловых операций (копирование/удаление файлов, создание/удаление директорий)
  • Возможность установить свою иконку на выходной файл
  • Возможность добавить информацию о версии файла
  • Возможность выполнить собственные функции, написанные на языке NSIS
  • Возможность распаковать ваши файлы в каталог, который указан в каком-либо ключе реестра
  • Регистрация библиотек при распаковке файлов (и возможность отменить регистрацию при удалении приложения)
  • Возможность при запуске/завершении показать пользователю информационное сообщение
  • Вы можете создавать пакет инсталлятора с графическим интерфейсом с возможностью выбора внешнего вида интерфейса: Modern UI или Ultra Modern UI, при выборе Ultra Modern UI вы также можете выбрать скин для интерфейса
  • При создании проекта с графическим интерфейсом, вы можете добавить отображение изображения на задний план
  • При создании проекта с графическим интерфейсом, вы можете создавать свои группы с компонентами и связывать исполнение команд с вашими компонентами
  • И многое другое!



Загрузка:

-------
[Справочник по командам Windows] -- [Справочник по NSIS] -- [SFX Creator - для создания SFX архивов]

Это сообщение посчитали полезным следующие участники:
Показать/скрыть список поблагодаривших

Отправлено: 03:13, 29-09-2009

 

Аватара для Limonica

Старожил


Сообщения: 152
Благодарности: 8

Профиль | Отправить PM | Цитировать


Не, что то типа этого:

Код: Выделить весь код
 IfFileExists "Например проверка доступа к файлу или параметру, пока непонятно как это будет работать" 0 ADMIN

.....
....
......
....
Quit

 ADMIN:

.......
......
.
.......
Quit

Отправлено: 21:09, 08-12-2012 | #521



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

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Limonica

Старожил


Сообщения: 152
Благодарности: 8

Профиль | Отправить PM | Цитировать


Слушайте люди добрые, а как бороться с перенаправлением в 64 битных системах, для переменной $PROGRAMFILES, $PROGRAMFILES32, $PROGRAMFILES64 всё понятно, а для $SYSDIR O_o
, ведь перенаправляет в SysWOW64

Отправлено: 22:33, 08-12-2012 | #522


Пользователь


Сообщения: 136
Благодарности: 18

Профиль | Отправить PM | Цитировать


Цитата K.A.V.:
Возможно это защищенный системный процесс »
Да, этот процесс от защитного ПО, поэтому выгружается средствами самой программы вручную. От инсталлятора требуется только определить его наличие, выдать предложение о закрытии, дождаться ручного закрытия и продолжить работу. Все это проделывает без зависания, именно урезанный код, а полный виснет.
Цитата K.A.V.:
вы вырезали тот код, который отвечает за определение наличия процесса... »
В том-то и дело, что процесс определяется без этой части кода...

читать дальше »

Полный код, который приводит к зависанию.

Function EnumProcessCall
StrCmp $R3 "$3" 0 nokill
${KillProcess} "$5" $R4
nokill:
FunctionEnd
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Function GetAccountType
UserInfo::GetAccountType
Pop $1
StrCmp $1 "Admin" okAccountType 0
MessageBox MB_OK|MB_ICONEXCLAMATION `Для установки программы "${PRODUCT_NAME}" необходимо войти в систему с правами Администратора!$\n$\nПрограмма установки завершает свою работу`
quit
okAccountType:
FunctionEnd

Function .onInit
Var /Global CommandLine
!insertmacro GetParametersCall $CommandLine
${GetTime} "" "L" $Day $Month $Year $WeekDay $Hour $Minute $Seconds
StrCpy $TMPDIR "$TEMP\sfxcreator_$Minute$Hour$Seconds"
StrCpy $R0 0
newSearch_1:
${FindProcessName} "AVJF.EXE" $R1 ;Вот же, поиск есть
StrCmp $R1 "1" 0 end_1
MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION "Для продолжения необходимо выгрузить $\nПожалуйста, закройте приложение самостоятельно.$\n$\nМожете отказаться от установки, нажав кнопку 'Отмена'" idOK +2
quit
${KillProcess} "AVJF.EXE" $R1 ;Эта строчка тоже не нужна
sleep 1000
goto newSearch_1
end_1:
CreateDirectory "$TMPDIR"
call PRE_Function
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Код между \\\\\\\\\\\\\ компилируется без ошибок и дает возможность установщику определить наличие процесса, ждет его ручное закрытие и отрабатывает, далее, без зависаний. Я, когда удалял верхнюю часть, подумал, что она относится только к Убиванию процесса(?), что мне не требовалось.

Может есть этому объяснение...
А может функция определения прав Админа "всунулась" не туда и должна быть над Function EnumProcessCall ? Или это не важно? (Проверил позже, - перемещение ничего не дает)

Проверил все еще раз. Скомпилировал все заново. Полный код виснет. Урезанный работает.

Последний раз редактировалось Salmo, 09-12-2012 в 02:14.


Отправлено: 23:37, 08-12-2012 | #523


Пользователь


Сообщения: 136
Благодарности: 18

Профиль | Отправить PM | Цитировать


Цитата Limonica:
ведь перенаправляет в SysWOW64 »
Задайте путь $%WinDir%\Sysnative вместо $SYSDIR. Требуется проверка. Вопрос по этому поводу задал ниже...

Я не разбирался в возможностях NSISа в этом отношении, но ясно, что для 32 битного процесса, коим является процесс инициируемый инсталлятором, необходимо перенаправление отключать, чтобы попасть в System32, что морочно. Я пока делаю так: Добавляю в пакет батник, который запускаю через %WinDir%\Sysnative\cmd в 64 битной среде с правами Админа, и он уже ковыряется в System32.

Если нужно что-то патчить, а патчи 32 битные, то надо, с помощью того-же батника, скопировать нужные файлы на нейтральную территорию (TEMP), став их владельцем и получив полный доступ, пропатчить и вернуть назад, восстановив владельца и права доступа. Если оригинальные файлы в System32 переписать не удается, чаще всего получается их переименовать и, после перезагрузки, удалить, если необходимо. Так, что CMD еще живо

Последний раз редактировалось Salmo, 10-12-2012 в 00:36.


Отправлено: 00:04, 09-12-2012 | #524


Ветеран


Сообщения: 4524
Благодарности: 347

Профиль | Сайт | Отправить PM | Цитировать


K.A.V., мне не совсем понятно, если человек первый раз зашел в тему - какие из вложений ему скачать для получения свежайшего варианта?

-------
Моя статья на OSzone.net


Отправлено: 20:05, 09-12-2012 | #525


Пользователь


Сообщения: 136
Благодарности: 18

Профиль | Отправить PM | Цитировать


truvo, Извините, что отвечаю, хотя вопрос не ко мне... Если программа не установлена - Setup_rar. Если установлена, достаточно запустить автоматическое обновление и все "свежее" поселится у вас
Можете учесть это сообщение: http://forum.oszone.net/post-2041258-517.html

Последний раз редактировалось Salmo, 09-12-2012 в 21:35.

Это сообщение посчитали полезным следующие участники:

Отправлено: 21:28, 09-12-2012 | #526


Ветеран


Сообщения: 4524
Благодарности: 347

Профиль | Сайт | Отправить PM | Цитировать


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

-------
Моя статья на OSzone.net


Отправлено: 23:33, 09-12-2012 | #527


Пользователь


Сообщения: 136
Благодарности: 18

Профиль | Отправить PM | Цитировать


truvo, Да, согласен, трудновато... Смысл такой: Если у вас была установлена программа ранее, возможно, она содержит ошибку (отсутствует нужный файл). Поэтому, после автоматического обновления, нужно проверить его наличие по пути SYS\ofiles\SelfDel.exe. Успехов...

K.A.V., Здравствуйте. Еще вопрос, в связи с вопросом Limonica. Если я пропишу путь установки для файла, используя виртуальную папку Sysnative для 64 битной системы, как программа переварит такой вариант, получу ли я доступ в System32? У меня нет 64 битной винды, проверить не могу...

Отправлено: 00:10, 10-12-2012 | #528


Ветеран


Сообщения: 4524
Благодарности: 347

Профиль | Сайт | Отправить PM | Цитировать


Salmo, но если я собрался, впервые зайде в тему, скачать по вашему совету Setup_rar - у меня же не установлена эта программа ранее, это же ясно! Зачем вы тогда отсылаете к тому сообщению? Или вы полагаете, что в сегодняшнем Setup_rar у автора осталась какая-то старая ошибка?

-------
Моя статья на OSzone.net


Отправлено: 01:19, 10-12-2012 | #529


Пользователь


Сообщения: 136
Благодарности: 18

Профиль | Отправить PM | Цитировать


truvo, Нет, в этом пакете ошибки нет. Мой ответ Вам начинался фразой:
Цитата Salmo:
Если программа не установлена - Setup_rar. »
- этим можно было ограничиться (и мне и Вам), но я больше сосредоточился на фразе:
Цитата truvo:
какие из вложений ему скачать для получения свежайшего варианта? »
То, что Вы впервые в этой теме, явно не подразумевает, что Вы не скачали ранее еще где-нибудь эту программу, поэтому, я упомянул второй вариант, учитывая, что еще кто-то интересуется вопросом обновления... Извините, что сделал Вас жертвой многословия...
Это сообщение посчитали полезным следующие участники:

Отправлено: 02:04, 10-12-2012 | #530



Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » SFX Creator 4 Alpha - создаём SFX архивы

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Архиваторы - [addon] 7z SFX tools stable/7z SFX tools beta greg_b Наборы обновлений для Windows XP/2003/Windows 7 173 14-09-2012 19:30
[решено] Распаковщик Smart Install Maker D_Master Хочу все знать 3 31-05-2011 15:05
[решено] Интересует куда делись Regedit.exe | NTSD.exe | NETSETUP.exe | TELNET.exe Ricardo Проект WinStyle 11 30-07-2009 23:36
Отладчик exe файлов Go2 Программирование и базы данных 2 29-09-2005 12:34
*Решено* | Нужен распаковщик PECompact 1.22 -> Jeremy Collake RAY Программирование и базы данных 2 23-01-2005 15:01




 
Переход