PDA

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


Страниц : 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

de_MAX
23-03-2009, 15:24
Serega_, у меня стоит ispack-5.2.4-dev и Restools

Serega
23-03-2009, 16:30
de_MAX, Restools:
InnoCompiler090319_English (http://restools.hanzify.org/inno/InnoCompiler090319_English.zip) - в неё входят файлы: Compil32.exe и Templates.dat;
Inno_ISCmplr_Setup090302 (http://restools.hanzify.org/inno/Inno_ISCmplr_Setup090302.zip) - в неё входят файлы, лучше из папки InnoSetup_FullVCL: setup.e32, ISCmplr.dls, ISCmplr.dll и SetupLdr.e32.
У вас скорей всего не установлен Inno_ISCmplr_Setup...

de_MAX
23-03-2009, 16:46
Serega_, спасибо. После установки Inno_ISCmplr_Setup все работает.

MrLD
24-03-2009, 11:27
Serega_, Здравствуй... Извини на сопровождение кинули. Если не тяжело давай вернемся к разговору про запись ini. Я подумал и решил не заморачиваца над разбиением. Т.к. посмотрев форум внимательней заметил что key можно принудительно в строку записать. но проблемма в том что после создания + #13 преобразуется в символ переноса на новою строку. т.е. "квадратный ноль". Не знаю понял ли ты меня просто на форуме код преобразуется и привести тебе пример я не могу.

MrLD
24-03-2009, 12:36
Serega_, Вопрос снят ошибку понял )

MrLD
24-03-2009, 16:21
Serega_, Вот такая строка
SaveStringToFile(ExpandConstant('{app}')+'\desktop.ini',
'[Connect]' + #13 + 'ConStr=Provider=SQLOLEDB.1' + ';Data Source=' + 'NameSource' + ';Initial Catalog=' + 'NameCatalog', true);
Как назначить NameSource и NameCatalog переменными?

Serega
24-03-2009, 17:11
MrLD, всё очень просто, а если Вас не научили родители простому этикету, сказать ‘спасибо’, когда человек в ответ на Вашу просьбу, потратил четыре часа своего личного времени, на решение Вашей задачи, то о чём можно разговаривать...
Форум, это прежде всего общение, а не потребительский инстинкт, что мне надо, а вы решите за меня...
Просто по человечески становится обидно...
Как назначить NameSource и NameCatalog переменными? »Пишите процедуры под названием NameSource и NameCatalog и пишите, что они должны делать, а затем записываете так:
SaveStringToFile(ExpandConstant('{app}')+'\desktop.ini',
'[Connect]' + #13 + 'ConStr=Provider=SQLOLEDB.1' + ';Data Source=' + {code:NameSource} + ';Initial Catalog=' + {code:NameCatalog}, true);

MrLD
24-03-2009, 17:39
Serega_, ))))))) Вопрос опять снят ))

Serega_, Искренне прошу прощения. Я уже написал что перекинули на другую задачу.... И огромное Спасибо )) не держи зла.. просто забегался )) Конец месяца и все такое )) А с переменными уже разобрался но все равно спасибо ))

Serega_, Пристыдил ))) Еще раз спасибо )) и еще раз извини ))

ChVL
25-03-2009, 16:40
В файл {sys}\drivers\etc\hosts надо добавить строку 127.0.0.1 www.example.cоm.
Как это прописать в скрипте?

Serega
25-03-2009, 16:47
ChVL, SaveStringToFile(путь и имя файла, 'текст', true);

VLADIS LOVE
25-03-2009, 19:27
Подскажите, как сделать категории выбора в инсталляции. Например, я делаю патч для игры. У меня такие параметры:
Геймплей (реальный, оригинальный - оба исключительно), затем следующая категория - язык (русский английский, тоже исключительно) и т.д. Как сделать в ISTOOL или по-другому, чтобы была такая возможность выбора?

ChVL
25-03-2009, 20:57
Serega_,
Спасибо за подсказку!
Вот рабочий вариант:
procedure CurStepChanged(CurStep: TSetupStep);
begin
If CurStep=ssPostInstall
then
begin
SaveStringToFile(ExpandConstant('{sys}')+'\drivers\etc\hosts', ' 127.0.0.1 www.example.com', True);
end;
end;
Запись производится в конце установки, т.к. иначе она получалась кривой.
Есть одна тонкость: запись делается в том месте, где остановился курсор от предыдущей. Для полного счастья надо бы перед вводимой строкой (127.0.0.1) вписать команду на перевод строки. Как это сделать?

Serega
25-03-2009, 21:20
ChVL, первод строки #13, т.е.
SaveStringToFile(ExpandConstant('{sys}')+'\drivers\etc\hosts', #13 + ' 127.0.0.1 www.example.com', True);

P.S.
Если будет при компилляции ругаться, тогда:
SaveStringToFile(ExpandConstant('{sys}')+'\drivers\etc\hosts', '' + #13 + ' 127.0.0.1 www.example.com', True);
хотя ругаться не должен...

Diman19
25-03-2009, 21:23
Всем привет!Скажите пожалуйста для чего используется Excludes?И как пути к файлам программы указывать?Как целая папка или по каждому файлу?

ChVL
25-03-2009, 21:55
Serega_,
Yes-s!! Вот теперь уже всё. Спасибо!!

Serega
25-03-2009, 21:55
VLADIS LOVE, ; Первый вариант

[Setup]
AppName=My Program
AppVerName=My Program v 1.5
DefaultDirName={pf}\My Program
OutputDir=.
Compression=lzma/ultra
InternalCompressLevel=ultra
SolidCompression=yes

[Languages]
Name: russian; MessagesFile: compiler:Languages\Russian.isl
Name: english; MessagesFile: compiler:Languages\English.isl

[Types]
Name: full; Description: Полная установка
Name: custom; Description: Выборочная установка; Flags: iscustom

[Components]
Name: a; Description: Геймплей; Types: full custom; Flags: fixed
Name: a\a; Description: Реальный; Types: full custom; Flags: exclusive
Name: a\b; Description: Оригинальный; Types: full custom; Flags: exclusive
Name: b; Description: Язык; Types: full custom; Flags: fixed
Name: b\a; Description: Русский; Types: full custom; Flags: exclusive
Name: b\b; Description: Английский; Types: full custom; Flags: exclusive

[Files]
Source: .......; DestDir: {app}; Components: a
Source: .......; DestDir: {app}; Components: a\a
Source: .......; DestDir: {app}; Components: a\b
Source: .......; DestDir: {app}; Components: b
Source: .......; DestDir: {app}; Components: b\a
Source: .......; DestDir: {app}; Components: b\b

; Второй вариант
;[Setup]
;AppName=My Program
;AppVerName=My Program v 1.5
;DefaultDirName={pf}\My Program
;OutputDir=.
;Compression=lzma/ultra
;InternalCompressLevel=ultra
;SolidCompression=yes

;[Languages]
;Name: russian; MessagesFile: compiler:Languages\Russian.isl
;Name: english; MessagesFile: compiler:Languages\English.isl

;[Tasks]
;Name: a; Description: Реальный; GroupDescription: Геймплей:; Flags: exclusive
;Name: b; Description: Оригинальный; GroupDescription: Геймплей:; Flags: exclusive unchecked
;Name: c; Description: Русский; GroupDescription: Язык:; Flags: exclusive
;Name: d; Description: Английский; GroupDescription: Язык:; Flags: exclusive unchecked

;[Files]
;Source: .......; DestDir: {app}; Tasks: a
;Source: .......; DestDir: {app}; Tasks: b
;Source: .......; DestDir: {app}; Tasks: c
;Source: .......; DestDir: {app}; Tasks: d


Diman19, Excludes
Описание:
Указывает список образцов для исключения, разделенных запятыми. Этот параметр не комбинируется с флагом external
как пути к файлам программы указывать »
Source: полный путь\CTL3DV2.DLL; DestDir: {sys}; Flags: onlyifdoesntexist uninsneveruninstall
целая папка или по каждому файлу »
Да как вам будет удобней, для папки надо писать так:
Source: полный путь к папке\*; DestDir: {app}; Flags: ignoreversion createallsubdirs recursesubdirs

VLADIS LOVE
26-03-2009, 11:43
Serega_, спасибо большое!

VLADIS LOVE
27-03-2009, 10:50
И еще один вопросик:
Можно сделать чтобы был вид спойлера, т.е. нажимаешь на плюсик и открывался выбор компонентов? Знаю, то NSIS можно, а в INNO?

Serega
27-03-2009, 11:03
VLADIS LOVE, добавьте в секцию [Setup] строку ComponentsListTVStyle=true. Вам понадобится расширенная версия от Resstools, ссылки я давал выше.

volk1234
27-03-2009, 16:57
Тема прикреплена в форуме...




© OSzone.net 2001-2012