Показать полную графическую версию : Скрипты Inno Setup. Помощь и советы [часть 8]
TrueMage
30-05-2015, 14:46
поиск будет не самый быстрый. Будет напрямую зависеть от забитости хардов. »
Я это понимаю. Но я не вижу другого варианта для российских пользователей, которые не озабачиваются лицензионностью игр и, соответственно, игра может быть просто скопирована, при этом ключ в реестре будет отсутствовать.
kotyarko@fb
30-05-2015, 18:01
Я это понимаю. Но я не вижу другого варианта для российских пользователей, которые не озабачиваются лицензионностью игр и, соответственно, игра может быть просто скопирована, при этом ключ в реестре будет отсутствовать. »
Поверьте мне, так лучше не делать.
А если нужный файл будет располагаться, например, где-то на системном диске? На его поиски могут уйти часы (в зависимости от имеющегося железа).
Было бы легче, раз в 10, если бы нужно было найти определённую папку.. А тут файл, будет не поиск, а безудержное веселье)
TrueMage
30-05-2015, 19:18
К сожалению не существует какого-то определенного имени папки, которое можно было бы поискать. Но вы правы, я, пожалуй, откажусь от этой идеи. Буду ставить банально либо по InstallPath из реестра, либо, если такого ключа нет, то в PF. Спасибо за помощь. :)
habib2302
31-05-2015, 17:06
как заменить последнюю страницу на msgbox о завершении установки
kotyarko@fb
31-05-2015, 18:49
как заменить последнюю страницу на msgbox о завершении установки »
Как-то так (написал по-быстрому, не проверил):[Setup]
DisableFinishedPage=yes
[*Code]
Procedure CurStepChanged(CurStep: TSetupStep);
begin
if CurStep = ssDone then
MsgBox('Установка завершена!', mbInformation, MB_OK);
end;
AlekseyPopovv
04-06-2015, 20:02
Всем привет. Вопрос:
Мне через реестр нужно найти папку:
[HKEY_CURRENT_USER\Software\AlekseyPopovv]
"CaptureFolder"="C:\\Foto"
Эта папка может быть в любом другом месте и называться по другому.
Потом нужно проверить существует ли папка и выдать запрос на удаление.
Как это сделать?
kotyarko@fb
04-06-2015, 20:40
AlekseyPopovv, так?var
Path: String;
begin
if RegQueryStringValue(HKCU, 'Software\AlekseyPopovv', 'CaptureFolder', Path) and (Path <> '') then
if DirExists(ExpandConstant(Path)) then
if MsgBox('Обнаружена существующая папка ' + Path + #13#10 + 'Удалить её?', mbConfirmation, MB_YESNO) = IDYES then
DelTree(ExpandConstant(Path), True, True, True);
end;
habib2302
04-06-2015, 21:59
Как добавить checkbox в деинсталлятор для удаления сохранок\настроек
Dodakaedr
04-06-2015, 22:06
habib2302, через msgbox проще.
habib2302
04-06-2015, 22:20
Dodakaedr, подскажите скрипт
kotyarko@fb
04-06-2015, 23:37
habib2302, типа такого:
Procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
begin
if CurUninstallStep = usUninstall then
if MsgBox('Сохранить настройки?', mb_Confirmation, MB_YESNO) = IDYES then
...
end;
И прописываете ваш код сохранения.
habib2302, Пробуйте
[code]
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
begin
if (CurUninstallStep = usUninstall) and DirExists(ExpandConstant('{userappdata}\Proga')) then
begin
if MsgBoxEx(UninstallProgressForm.Handle, 'Вы хотите удалить настройки?', 'Удаление настроек', MB_YESNO or MB_ICONQUESTION, 0, 0) = IDYES then
DelTree(ExpandConstant('{userappdata}\Proga'), True, True, True);
end;
if (CurUninstallStep = usPostUninstall) then
if MsgBox('Вы хотите удалить ключ активации?', mbInformation, MB_YESNO) = idYes then
RegDeleteKeyIncludingSubkeys(HKCU, 'SOFTWARE\Progasoft\key');
// RegDeleteKeyIncludingSubkeys(HKLM, 'SOFTWARE\Progasoft\key');
// RegDeleteKeyIncludingSubkeys(HKLM64, 'SOFTWARE\Progasoft\key');
end;
AlekseyPopovv
05-06-2015, 02:49
kotyarko@fb, Да, всё получилось.
AlekseyPopovv
06-06-2015, 14:26
Как создать файл .txt через procedure CurStepChanged(CurStep: TSetupStep);?
AlekseyPopovv, Примерно так
procedure CurStepChanged(CurStep: TSetupStep);
begin
if CurStep=ssPostInstall then
begin
SaveStringToFile(ExpandConstant('{userdesktop}\Registration.txt'), #13#10 + 'твой номер' + #13#10, True);
end
end;
PlanktoN
07-06-2015, 23:18
Помогите! Как поставить фоновое изображение в инсталлятор как у механиков на всех страницах.Чтоб слова и тд были видны. SOS
PlanktoN
08-06-2015, 22:25
И еще! Игра пиратка. В нем есть файл rev.ini. Как изменить ник через инсталлер.(Создать страницу для смены ника)
AlekseyPopovv
09-06-2015, 09:29
Мне через файл ini нужно найти папку:
[Splash]
CaptureFolder=C:\Foto
Эта папка может быть в любом другом месте и называться по другому.
Потом нужно проверить существует ли папка и выдать запрос на удаление.
Как это сделать?
El Sanchez
09-06-2015, 11:58
Мне через файл ini нужно найти папку:
[Splash]
CaptureFolder=C:\Foto
Эта папка может быть в любом другом месте и называться по другому.
Потом нужно проверить существует ли папка и выдать запрос на удаление.
Как это сделать? »
AlekseyPopovv,
procedure DeleteCaptureFolder;
var
CaptureFolder: String;
begin
CaptureFolder := GetIniString('Splash', 'CaptureFolder', '', 'где-то там\file.ini');
if DirExists(CaptureFolder) and (MsgBox('Удалить папку?', mbConfirmation, MB_YESNO) = IDYES) then
DelTree(CaptureFolder, True, True, True);
end;
AlekseyPopovv
09-06-2015, 13:05
El Sanchez, А через procedure CurUninstallStepChanged как? Или не получится?
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.