подскажите, как уместить 5 полей на странице или добавить скролл?
» Inno Setup (создание инсталяционных пакетов)
Как сделать TComboBox на странице SelectDir?
Nukloud
Большое спасибо!
Большое спасибо!
Здравствуйте, не будет ли у кого скрипта-закоса под R.G. Catalyst, с прозрачностью, лого, временем прошедшим с начала установки и оставшимся временем до конца установки. Буду очень благодарен, если кто-нибудь поделится.
P.S. На 84 странице не последняя версия их скрипта. Мне бы хотелось последнюю. И там почему то у меня не работает лого и картинка проверки места на жестком диске вообще отсутствует (должна быть зеленая или красная галка).
P.S. На 84 странице не последняя версия их скрипта. Мне бы хотелось последнюю. И там почему то у меня не работает лого и картинка проверки места на жестком диске вообще отсутствует (должна быть зеленая или красная галка).
Есть dll собранная с пакетами в Delphi. В InnoSetup она описана вместе со всеми библиотеками, которые она использует. Так вот не могу вызвать функци. из этой dll в функции function InitializeSetup(): Boolean
в других функциях, например function NextButtonClick(aCurPageID: integer): boolean;
вызываю и все работает.
Ошибка Could not Proc.
Dll собираю без пакетов, все нормльно работает.
Так вот хотелось бы использовать первый вариант (dll c пакетами), у кого то получалось ?
в других функциях, например function NextButtonClick(aCurPageID: integer): boolean;
вызываю и все работает.
Ошибка Could not Proc.
Dll собираю без пакетов, все нормльно работает.
Так вот хотелось бы использовать первый вариант (dll c пакетами), у кого то получалось ?
имеется вопрос как заставить инно писать в файл настройки программы по типу ini файла?
например прога хранит настройки в каком нибудь файле собственного формата типо .dat или .txt как при установке заставить inno писать туда например выбор папки установки или ещё что либо. и можно ли вообще так сделать?
например прога хранит настройки в каком нибудь файле собственного формата типо .dat или .txt как при установке заставить inno писать туда например выбор папки установки или ещё что либо. и можно ли вообще так сделать?
jonikDk
О_о телепаты в отпуске! Выложи скрипт хотя бы для начала.
qwerqwer444
Можно. Поиск рулит.
О_о телепаты в отпуске! Выложи скрипт хотя бы для начала.
qwerqwer444
Можно. Поиск рулит.
SotM
а чего выкладывать то ?
function InitializeSetup(): Boolean;
begin
if CheckFunction('Условие') > 0 then
begin
MsgBox(ExpandConstant('{cm:msgInstallTerminated}'), mbError, MB_OK);
Result := False;
end
else
Result := True;
end;
Функция описана след образом:
function CheckFunction((aParam: PChar): integer;
external CheckFunctiond@files:Имя.dll, DBRTL100.BPL,RTL100.BPL,RXCTL10.BPL, jcl10.bpl,vcljpg100.bpl stdcall delayload';
а чего выкладывать то ?
function InitializeSetup(): Boolean;
begin
if CheckFunction('Условие') > 0 then
begin
MsgBox(ExpandConstant('{cm:msgInstallTerminated}'), mbError, MB_OK);
Result := False;
end
else
Result := True;
end;
Функция описана след образом:
function CheckFunction((aParam: PChar): integer;
external CheckFunctiond@files:Имя.dll, DBRTL100.BPL,RTL100.BPL,RXCTL10.BPL, jcl10.bpl,vcljpg100.bpl stdcall delayload';
народ повторяю свой вопрос -
http://rghost.ru/20568291
в конце пишет не найдено ни одного файла указанного для isarcextract
и ничего не устанавливает
что это может быть?
http://rghost.ru/20568291
в конце пишет не найдено ни одного файла указанного для isarcextract
и ничего не устанавливает
что это может быть?
возможно ли исходя из списка компонентов и типов в ini файле распределять разные задачи-компоненты по типам при инсталлировании?
дайте ссылку, пример, где происходит работа с ини файлом
дайте ссылку, пример, где происходит работа с ини файлом
Цитата:
народ повторяю свой вопрос -
http://rghost.ru/20568291
в конце пишет не найдено ни одного файла указанного для isarcextract
и ничего не устанавливает
что это может быть?
if not ISArcExtract ( 0, 100, ExpandConstant('{src}\*.bin'), ExpandConstant('{app}'), '', false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
здесь укажи место положения архива
del
Цитата:
Здравствуйте, не будет ли у кого скрипта-закоса под R.G. Catalyst
Вы задрали! Мне уже всю личку заспамили. Если нужны закосы - ПИШИТЕ ИХ САМИ! Не нужно доставать других людей!
SotM
не всегда, потому что односложно сформулировать некоторые вопросы нереально в поиске.
тем более когда за топиками не следишь ежедневно никак не найти нужное.
если вас не затруднит не дадите ссылочку на тему.
не всегда, потому что односложно сформулировать некоторые вопросы нереально в поиске.
тем более когда за топиками не следишь ежедневно никак не найти нужное.
если вас не затруднит не дадите ссылочку на тему.
привет всем мне нужно изменить названия архива после компиляции рядом с инсталлятором архивы с названием setup-1a.bin можно ли их переименовать
помогите пожалуйста
помогите пожалуйста
Цитата:
Здравствуйте, не будет ли у кого скрипта-закоса под R.G. Catalyst
Зачем он тебе?
Цитата:
moonlight82
Цитата: Здравствуйте, не будет ли у кого скрипта-закоса под R.G. Catalyst
Зачем он тебе?
Как бы не хочется захламлять тему своими вопросами что и как сделать. А на хорошем скрипте (качественно программно выполненном и графически тоже) взять и разобраться самому. Да и к тому же всегда хотелось посмотреть как у них многие вещи в скрипте прописаны.
Karbid87
Цитата:
Чтобы это посмотреть, нужен оригинальный скрипт, который тебе никто не даст, в том числе и я. У Gnom3 есть очень хороший закос, но у него сделано совсем по другому, и я не знаю, захочет ли он его выкладывать в паблик.
Цитата:
Да и к тому же всегда хотелось посмотреть как у них многие вещи в скрипте прописаны.
Чтобы это посмотреть, нужен оригинальный скрипт, который тебе никто не даст, в том числе и я. У Gnom3 есть очень хороший закос, но у него сделано совсем по другому, и я не знаю, захочет ли он его выкладывать в паблик.
Цитата:
У Gnom3 есть очень хороший закос, но у него сделано совсем по другому, и я не знаю, захочет ли он его выкладывать в паблик.
Так а зачем в паблик? Мне только в ЛС. А я уже обещаю, что он не уйдет в паблик.
В общем ответов не дождался на свои 2 вопроса, но еще надеюсь!
Но решил таки задачку частично.
Есть еще вопросики, так сказать для оптимизации кода:
1.
Я создаю массив и заполняю его:
[more]
...
#define countIb 98
#dim ib[countIb]
#define ib[0] "IB1"
#define ib[1] "IB2"
...
#define ib[97] "IB98"
...
#define countExt 12
#dim ext[countExt]
#define ext[0] ".ex1"
#define ext[1] ".ex2"
...
#define ext[1] ".ex12"
...
[/more]
В 1. не нравится заниматься поэлементным присвоением в массиве
2.
Тот же вопрос, только про секцию [Components]:
[more]
...
[Components]
#sub AddOsnBaseC
#define path = AddBackslash(AddBackslash(SourcePath) + "Source\" + osn_base + "\BASE\" + ib[i])
#if FileExists(path+ib[i]+ext[0])+FileExists(path+ib[i]+ext[1])+FileExists(path+ib[i]+ext[2])+FileExists(path+ib[i]+ext[3])+FileExists(path+ib[i]+ext[4])+FileExists(path+ib[i]+ext[5])+FileExists(path+ib[i]+ext[6])+FileExists(path+ib[i]+ext[7])+FileExists(path+ib[i]+ext[8])+FileExists(path+ib[i]+ext[9])+FileExists(path+ib[i]+ext[10])+FileExists(path+ib[i]+ext[11])
Name: Structure\ib\osn\{#ib[i]}; Description: {#ib[i]}; Types: full osn
#endif
#endsub
...
#for {i = 0; i < countIb; i++} AddOsnBaseC
...
[/more]
Во 2. не нравится проводить подобную проверку с кучей экзистов - вынести в процедуру не удалось - почему-то переменные (если глобальные а Inno Setup вообще есть???) приходят из одной процедуры в другую обнуленные, а может я просто неправильно занимаюсь присвоением нового значения переменной???
Как эти блоки записать покрасивше, покомпактнее?
Заранее спасибо!
Надеюсь на этот раз знатоки освободятся и на меня трохи времени потратят
Но решил таки задачку частично.
Есть еще вопросики, так сказать для оптимизации кода:
1.
Я создаю массив и заполняю его:
[more]
...
#define countIb 98
#dim ib[countIb]
#define ib[0] "IB1"
#define ib[1] "IB2"
...
#define ib[97] "IB98"
...
#define countExt 12
#dim ext[countExt]
#define ext[0] ".ex1"
#define ext[1] ".ex2"
...
#define ext[1] ".ex12"
...
[/more]
В 1. не нравится заниматься поэлементным присвоением в массиве
2.
Тот же вопрос, только про секцию [Components]:
[more]
...
[Components]
#sub AddOsnBaseC
#define path = AddBackslash(AddBackslash(SourcePath) + "Source\" + osn_base + "\BASE\" + ib[i])
#if FileExists(path+ib[i]+ext[0])+FileExists(path+ib[i]+ext[1])+FileExists(path+ib[i]+ext[2])+FileExists(path+ib[i]+ext[3])+FileExists(path+ib[i]+ext[4])+FileExists(path+ib[i]+ext[5])+FileExists(path+ib[i]+ext[6])+FileExists(path+ib[i]+ext[7])+FileExists(path+ib[i]+ext[8])+FileExists(path+ib[i]+ext[9])+FileExists(path+ib[i]+ext[10])+FileExists(path+ib[i]+ext[11])
Name: Structure\ib\osn\{#ib[i]}; Description: {#ib[i]}; Types: full osn
#endif
#endsub
...
#for {i = 0; i < countIb; i++} AddOsnBaseC
...
[/more]
Во 2. не нравится проводить подобную проверку с кучей экзистов - вынести в процедуру не удалось - почему-то переменные (если глобальные а Inno Setup вообще есть???) приходят из одной процедуры в другую обнуленные, а может я просто неправильно занимаюсь присвоением нового значения переменной???
Как эти блоки записать покрасивше, покомпактнее?
Заранее спасибо!
Надеюсь на этот раз знатоки освободятся и на меня трохи времени потратят
Karbid87
Цитата:
Я инсталлы каталистов не видел (даже на скринах). Но учитывая, что его не выложили в паблик и если его писал Ник, ты в том скрипте врядли разберешся...
Цитата:
А какая разница, как прописано? Сделай визуально идентично но пропиши по своему. Возможно ты пропишешь это еще лучше чем в оригинале. (
Мы вот тоже когда-то ломали голову, как же Blackself эту панельку замутил, а вот сейчас смотришь и смешно становится...
Цитата:
Тема для этого собственно и сделана. Намного хуже если ты будешь ее захламлять прозьбами скинуть оригинал. Покажи скрины или опиши, что там такого уникального в их скриптах, а мы расскажем как сделать так же.
Цитата:
А на хорошем скрипте (качественно программно выполненном и графически тоже) взять и разобраться самому.
Я инсталлы каталистов не видел (даже на скринах). Но учитывая, что его не выложили в паблик и если его писал Ник, ты в том скрипте врядли разберешся...
Цитата:
Да и к тому же всегда хотелось посмотреть как у них многие вещи в скрипте прописаны.
А какая разница, как прописано? Сделай визуально идентично но пропиши по своему. Возможно ты пропишешь это еще лучше чем в оригинале. (
Мы вот тоже когда-то ломали голову, как же Blackself эту панельку замутил, а вот сейчас смотришь и смешно становится...
Цитата:
Как бы не хочется захламлять тему своими вопросами что и как сделать.
Тема для этого собственно и сделана. Намного хуже если ты будешь ее захламлять прозьбами скинуть оригинал. Покажи скрины или опиши, что там такого уникального в их скриптах, а мы расскажем как сделать так же.
помогите с кодом надо чтобы inno писала в середину файла настроек программы
[Code]
procedure CurStepChanged(CurStep: TSetupStep);
var
S: TArrayOfString;
F: String;
begin
F := ExpandConstant('{app}\file.dat');
SetArrayLength(S, 4);
S[00] := ''
S[01] := 'ExpandConstant('{app}\file.dat')'
S[02] := ''
SaveStringsToFile(F, S, True);
end;
пишет только в конец файла
[Code]
procedure CurStepChanged(CurStep: TSetupStep);
var
S: TArrayOfString;
F: String;
begin
F := ExpandConstant('{app}\file.dat');
SetArrayLength(S, 4);
S[00] := ''
S[01] := 'ExpandConstant('{app}\file.dat')'
S[02] := ''
SaveStringsToFile(F, S, True);
end;
пишет только в конец файла
YURSHAT
Привет. Давно что то тебя не видел или сам тут давно не был )
Насчет панельки были времена ) И много чего другого.
А инстале от Каталистов нет него сложного. Да и закасов под них аля GOG вполне хватает.
Привет. Давно что то тебя не видел или сам тут давно не был )
Насчет панельки были времена ) И много чего другого.
А инстале от Каталистов нет него сложного. Да и закасов под них аля GOG вполне хватает.
Хорошо. Тогда первый вопрос.
Есть скрипт с прозрачностью, как наложить внизу (координаты я вычислю) лого? В самом скрипте нигде не встречается упоминание о картинке с лого, поэтому бессмысленно выкладывать какие то кусочки скрипта. Подскажите в каких секциях и что дописать, и куда какие файлы кинуть, чтобы появился лого? Как понимаю нужно будет еще качать ISLogo.dll
Вот скрин с выделенной областью куда надо лого вставить
Есть скрипт с прозрачностью, как наложить внизу (координаты я вычислю) лого? В самом скрипте нигде не встречается упоминание о картинке с лого, поэтому бессмысленно выкладывать какие то кусочки скрипта. Подскажите в каких секциях и что дописать, и куда какие файлы кинуть, чтобы появился лого? Как понимаю нужно будет еще качать ISLogo.dll
Вот скрин с выделенной областью куда надо лого вставить
qwerqwer444
В какое место необходимо записывать?
Правильно ли я понимаю - тебе нужно в существующий файл внести изменения,
или он может и не существовать?
Если верно первое то я не вижу у тебя в коде ГДЕ ты считываешь данные из своего файла.
И второй момент а как ты определяешь в КАКУЮ строку нужно внести изменения?
Середина так сказать может быть разной зависит от четного/нечетного количества строк! либо ты знаешь непосредственно номер строки, либо значение которое необходимо заменить.
Вот пример с определенной строкой и заметь индексы строк идет ни как у тебя [00] [01] и т.д., а [0] [1] и т.д., а в функции SaveStringsToFile третий параметр False:
[more]
procedure CurStepChanged(CurStep: TSetupStep);
var
S: TArrayOfString;
F: String;
begin
F := ExpandConstant('{app}\file.dat');
LoadStringsFromFile(F, S);
S[1]:='ExpandConstant('{app}\file.dat')'
SaveStringsToFile(F, S, False);
end;
[/more]
Это работает если ты точно знаешь что у тебя есть и файл и строка с индексом 1
может поможет
В какое место необходимо записывать?
Правильно ли я понимаю - тебе нужно в существующий файл внести изменения,
или он может и не существовать?
Если верно первое то я не вижу у тебя в коде ГДЕ ты считываешь данные из своего файла.
И второй момент а как ты определяешь в КАКУЮ строку нужно внести изменения?
Середина так сказать может быть разной зависит от четного/нечетного количества строк! либо ты знаешь непосредственно номер строки, либо значение которое необходимо заменить.
Вот пример с определенной строкой и заметь индексы строк идет ни как у тебя [00] [01] и т.д., а [0] [1] и т.д., а в функции SaveStringsToFile третий параметр False:
[more]
procedure CurStepChanged(CurStep: TSetupStep);
var
S: TArrayOfString;
F: String;
begin
F := ExpandConstant('{app}\file.dat');
LoadStringsFromFile(F, S);
S[1]:='ExpandConstant('{app}\file.dat')'
SaveStringsToFile(F, S, False);
end;
[/more]
Это работает если ты точно знаешь что у тебя есть и файл и строка с индексом 1
может поможет
ShadowHawk
спасибо попробую. я как раз точно знаю что у меня есть и файл и номер строчки
P.S.
файл устанавливается вместе с прогой
просто для проги надо писать директории в свой файл вместо реестра.(что то типо ini)
но помимо этих строк с директориями там ещё есть строчки с настройками и вот чтобы их не стирать и не переписывать все, а только строчку куда установится прога то есть {app}.
спасибо попробую. я как раз точно знаю что у меня есть и файл и номер строчки
P.S.
файл устанавливается вместе с прогой
просто для проги надо писать директории в свой файл вместо реестра.(что то типо ini)
но помимо этих строк с директориями там ещё есть строчки с настройками и вот чтобы их не стирать и не переписывать все, а только строчку куда установится прога то есть {app}.
qwerqwer444
а из [more=хелпа]
Цитата:
а из [more=хелпа]
Цитата:
INI File functions[/more] не подходят в таком случае?
function IniKeyExists(const Section, Key, Filename: String): Boolean;
function IsIniSectionEmpty(const Section, Filename: String): Boolean;
function GetIniBool(const Section, Key: String; const Default: Boolean; const Filename: String): Boolean
function GetIniInt(const Section, Key: String; const Default, Min, Max: Longint; const Filename: String): Longint;
function GetIniString(const Section, Key, Default, Filename: String): String;
function SetIniBool(const Section, Key: String; const Value: Boolean; const Filename: String): Boolean;
function SetIniInt(const Section, Key: String; const Value: Longint; const Filename: String): Boolean;
function SetIniString(const Section, Key, Value, Filename: String): Boolean;
procedure DeleteIniSection(const Section, Filename: String);
procedure DeleteIniEntry(const Section, Key, Filename: String);
DeKaNszn
хелп я читал
так дело в том что у меня не ini а собственный файл программы с расширением .dat
на самом деле это обычный текстовый файл если открыть блокнотом но там нет такой структуры как в ini а просто строчки.
в принципе я сделал работает всё только весь файл переписывает
а мне бы хотелось конкретную строчку
хелп я читал
так дело в том что у меня не ini а собственный файл программы с расширением .dat
на самом деле это обычный текстовый файл если открыть блокнотом но там нет такой структуры как в ini а просто строчки.
в принципе я сделал работает всё только весь файл переписывает
а мне бы хотелось конкретную строчку
qwerqwer444
тогда этими
Цитата:
тогда этими
Цитата:
function LoadStringFromFile(const FileName: String; var S: AnsiString): Boolean;
function StringChangeEx(var S: String; const FromStr, ToStr: String; const SupportDBCS: Boolean): Integer;
function SaveStringToFile(const FileName: String; const S: AnsiString; const Append: Boolean): Boolean;
Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177
Предыдущая тема: поиск
Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.