Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Аватара для El Sanchez

Ветеран


Contributor


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

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


Цитата TERMINAL:
Подскажите плз, как и в какой секции нужно прописать условие чтобы при отсутствии ключа в реестре (HKEY_CURRENT_USER\Software\Test, "AppData", "REG_SZ", "7890" ) установщик (ехе) вообще не стартовал или если присутствует папка С:\{E99DDD46-1221-4DB4-81F0-F24D210EB41C} тогда разрешена установка? »
TERMINAL,
Код: Выделить весь код
function InitializeSetup(): Boolean;
begin
    Result := RegKeyExists(HKCU, 'SOFTWARE\Test') or DirExists(ExpandConstant('{sd}\{{E99DDD46-1221-4DB4-81F0-F24D210EB41C}'));
end;
Цитата TERMINAL:
для чего нужен этот GUID-я думал для регистрации в реестре, но оказалось не так. »
TERMINAL, почему не так? Все так.

Цитата TERMINAL:
Если мне нужно скомпилировать и получить 10 разных файлов ехе, для этого нужно генерировать GUID? »
TERMINAL, можно и самому придумать 10 уникальных AppID.

Цитата TERMINAL:
Нашёл командную строку как компилировать скрипт Compil32.exe /cc "С:\Proekt\тест.iss", но мне нужно каждый раз создавать новый GUID-возможно сделать автоматическую генерацию нового GUID? »
TERMINAL, используйте препроцессор iscc.exe для компиляции. У него есть ключ /d, который позволяет декларировать препроцессорные константы и директивы. Допустим в секции Setup директива AppId объявлена через препроцессорную константу {#AppID}:
Код: Выделить весь код
[Setup]
AppID={#AppID}
Тогда из командной строки указать {#AppID} и скомпилировать скрипт можно так:
Код: Выделить весь код
iscc "/dAppID=тут уникальный Application ID" "С:\Proekt\тест.iss"
Декларацию константы {#AppID} в скрипте нужно закомментировать, так как парсится позже, чем указанная через комстроку. Консольных генераторов GUID полно, осталось оформить в виде батника, например.
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:38, 14-02-2013 | #1638