PDA

Показать полную графическую версию : Скрипты Inno Setup. Помощь и советы [часть 3]


Страниц : 1 2 3 [4] 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188

STRAYKER
26-11-2010, 20:55
Как сделать установку игры быстрее с 25 мин до 10 мин ????

КАК сделать слайдшоу ???

truth
27-11-2010, 18:39
Все доброго времени суток..
Здача: добавить чекбокс "Сделать *** дом. страницей". Сам чекбокс есть, все работает (кусок скрипта ниже). Но ведь хом. страница только в IE прописывается в реестре, правильно?
Например в Opera она хранится в INI-файле. Кто знает как быть? Необходимо ставить страницу во всех браузерах, а не только в IE.


[Run]
Filename: dummy; Description: Сделать *** домашней страницей; Flags: postinstall nowait skipifdoesntexist

[Сode]
procedure CurStepChanged(CurStep: TSetupStep);
begin
if CurStep = ssDone then
if WizardForm.RunList.Checked[0] then
RegWriteStringValue(HKEY_CURRENT_USER, 'Software\Microsoft\Internet Explorer\Main', 'Start Page', 'http://***');
end;


Этот чекбокс есть во многих инсталляторах, так как же он осуществляется правильно?

R.i.m.s.k.y.
29-11-2010, 09:04
Этот чекбокс есть во многих инсталляторах, так как же он осуществляется правильно? »
Этот чекбокс от лукавого, инишник оперы я не знаю, но могу предложить функцию замены в текстовом файле

[_Code]
procedure RePlaceTextinFile(FilePath:string; find:string; replace:string);
var
S: TArrayOfString;
//str : string;
i : Integer;
begin
if not FileExists(FilePath) then begin MsgBox('Файл не найден ' + FilePath, mbError, mb_Ok); Exit;end; // если файла нет, выходим
LoadStringsFromFile(FilePath, S); // загружаем файл
for i:= 0 to GetArrayLength(S)-1 do begin
if (Pos(AnsiUpperCase(find), AnsiUpperCase(S[i])) > 0) then begin
StringChangeEx(S[i], find, replace, True);
end;
end;
SaveStringsToFile(FilePath, S, False); // сохраняем файл
end;

//использование в инишнике мегуя заменяется import(" на import(" + путь к папке плагинов + \
RePlaceTextinFile(ExpandConstant('{app}\Megui\allprofiles\AviSynth\AviSynth_dp_ MCTemporalDenoise.xml'), 'import("', 'import("'+plugindir2_5+'\');


Как сделать установку игры быстрее с 25 мин до 10 мин »
поставить SSD ;-)
КАК сделать слайдшоу »
в шапке коллекция скриптов - там есть

jdsl
29-11-2010, 11:00
помогите чё делать с autorun.iss??? я ни как не пойму.

R.i.m.s.k.y.
29-11-2010, 11:14
помогите чё делать с autorun.iss??? я ни как не пойму. »
Компилить, а в чем проблема

Petruchodd
29-11-2010, 12:58
Можна ли как то из секции запустить UninsHS.exe (либо с параметрами которые используются для запуска из "пуск" )но в ввиде "модификаци,исправить,удалить".
я использую такой код для запуска - но оно просто запускает "удаление" и всё, а мне нужно что бы появилось окно с выбором функций репейр модифи ремов.
[CODE]If CurPage=wpSelectDir then
begin
if FileExists(ExpandConstant('{app}\file.exe')) then
begin
ShellExec('', ExpandConstant('{app}\UninsHS.exe'), '', '', SW_SHOW, ewNoWait, ErrorCode);
Result := False;
end;
end;


В примере про UninsHS.exe оно работает только если запустить через пуск -> uninstall my app тогда только появляется окно с репейр модифи и ремов.

Я хочу всунуть именно в сам процесс установки ( аля проверка, если установленно, то предложить варианты "модифи репейр и ремов" )

Подскажите пожалуйста :(((

R.i.m.s.k.y.
29-11-2010, 13:36
В примере про UninsHS.exe оно работает только если запустить через пуск -> uninstall my app тогда только появляется окно с репейр модифи и ремов. »
А подсмотреть в "пуск -> uninstall my app" параметры ярлыка и дописать их в код, нет?

Petruchodd
29-11-2010, 13:38
А подсмотреть в "пуск -> uninstall my app" параметры ярлыка и дописать их в код, нет? »
я не знаю как в шелэкзекут добавить такие параметры (( поэтому и спрашую.


[icons]
Name: {group}\Uninstall my_app;Filename: "{app}\UninsHs.exe"; WorkingDir: "{app}"; Parameters: /u0=my_app



А подсмотреть в "пуск -> uninstall my app" параметры ярлыка и дописать их в код, нет? »
как это понять ? подсдкажи пожлалуйста



Блин дошло ))) Спасибо большое R.i.m.s.k.y.

R.i.m.s.k.y.
29-11-2010, 13:49
как это понять ? подсдкажи пожлалуйста »
Из Вашего поста я понял, что при удалении проги через меню пуск ... выскакивает именно то окошко, что нужно.
В меню пуск на ярлыке ПКМ (правой кнопкой мыши) - свойства - смотрим параметры запуска, копируем их и вставляем в код. И для экзешников лучше использовать просто EXEC

var res : integer;
...
If CurPage=wpSelectDir then
begin
if FileExists(ExpandConstant('{app}\file.exe')) then
begin
Exec(ExpandConstant('{app}\UninsHS.exe'), ' /u0=my_app',ExpandConstant('{app}'),SW_SHOW,ewWaitUntilTerminated,res);
Result := False;
end;
end;

gvshil
01-12-2010, 21:24
Подскажите пожалуйста, как правильно выгрузить процесс при деинсталяции:
[UninstallRun]
Filename: {sys}\taskkill.exe; Parameters: /im Proga.exe
так деинсталятор не дожидается выгруки процесса,

а так, на мой взгляд, выгружается как то некорректно
[UninstallRun]
Filename: {sys}\taskkill.exe; Parameters: /f /im Proga.exe

kotkovets
01-12-2010, 22:20
gvshil,
Если нужно, чтобы деинсталятор, дождался пока не завершится процесс:
[UninstallRun]
Filename: {sys}\taskkill.exe; Parameters: /f /im Proga.exe; Flags: waituntilidle

gvshil
02-12-2010, 07:50
kotkovets,
Flags: waituntilidle тоже не помогает.

ALXIMIK
03-12-2010, 01:37
Кто может помогите добавить расчет свободного места!

Habetdin
03-12-2010, 09:49
gvshil, [UninstallRun]
Filename: tskill; Parameters: ProcessName; Flags: runhidden waituntilterminated

[hr]waituntilidle »
If this flag is specified, it will wait until the process is waiting for user input with no input pending, instead of waiting for the process to terminate.

gvshil
03-12-2010, 12:05
Habetdin,
К сожалению, не помогло.

Wilddeer
05-12-2010, 11:32
Привет всем!
Мог бы кто нибудь скинуть простенький пример скрипта с распаковщиком Freearc,ну и чтобы установка красиво была оформлена?

Vitek 07
05-12-2010, 15:54
Wilddeer, а для кого, собственно, шапка сделана?
Показать/скрыть: Ссылки на примеры скриптов: »
Need for Speed™ Undercover.iss v 2.2 - пример скрипта для игры Need for Speed+FreeArc, одним словом название говорит само за себя, (ссылка на сообщение); »

Wilddeer
05-12-2010, 19:29
Vitek 07

Ну я новичок в inno setup,мне нужен простой пример скрипта где есть распаковка FreeArc архива и картинки в инсталляторе свои можно поставить!

А в need for speed сложный скрипт

Greatest_nO_Ob
06-12-2010, 07:56
Ффсем иномыслящим, здравсте :)
Небольшая просьба.... обновите пожалуйста ссылки в шапке... некоторые уже не работають... :(
Буду Вам очень признателен :)

Andre123123
06-12-2010, 15:53
Помогите пожалуйста со скриптом. Как реализовать идею выбора компонентов и создание из этих компонентов собственного инсталятора (т.е конструктора для создания дистрибутива из выбранных компонентов)? Возможно ли это?




© OSzone.net 2001-2012