» Inno Setup (создание инсталяционных пакетов)
vint56
Всё было элементарно просто!
Ты мне очень помог, оказывается с скриптом всё было ок, надо было всего лишь архив в формате .bin поставить с .exe файлом... Спасибо большое!
Всё было элементарно просто!
Ты мне очень помог, оказывается с скриптом всё было ок, надо было всего лишь архив в формате .bin поставить с .exe файлом... Спасибо большое!
Можно ли в инно 5.4.2 последних билдов сделать какой-либо цвет прозрачным? Старые скрипты не работают.
dwmEnabled.dll
alex0413, вот, в скрипте на километр, поэтому сделал маленькую длл-ку, которая просто проверит - будет работать iswin7.dll, или нет, и в зависимости от результата меняем параметры, чтоб нормально смотрелось и на ХР, и на семерке.
DLL и пример.
Поправил, был косячек небольшой Нужен тест работоспособности на ХР
DLL и пример.
Поправил, был косячек небольшой Нужен тест работоспособности на ХР
bugron
Цитата:
Можно, устанавливай меньше файлов
Цитата:
Это все равно что писать простой текст без каких либо знаков препинания. Он есть, но мало кто его поймет. Изначально компилятор настроен на то что ты напишешь код правильно, а не так что где то забыл поставить точку с запятой.
Цитата:
Может вы не заметили, но после установки инсталлятор создает деинсталлятор, размер каторого большой - около 1 Мб, вот я и спрашиваю можно как-то уменьшить его размер
Можно, устанавливай меньше файлов
Цитата:
Иногда при компиляции вылетает ошибка связанная с отсутствием точки с запяпой после оператора в секции Code. Неужели вы с этим тоже не сталкивались, а? Компилятор же знает конкретно где отсутствует ;, тогда она может добавить ; без каких либо предупреждений и потом в логе написать скажем "Найдено столько ошибок, исправлено столько". Думаю, что для модификации компилятора не нужно много усилий и милионы строк кода. Мне было интерестно, именно поэтому я задал второй вопрос.
Это все равно что писать простой текст без каких либо знаков препинания. Он есть, но мало кто его поймет. Изначально компилятор настроен на то что ты напишешь код правильно, а не так что где то забыл поставить точку с запятой.
Здравствуйте. Можно ли осуществить запуск батника при выборе двух определённых компонентов?
Наример, у меня 4 компонента:
*Русский текст
*Английский текст
*Русская озвучка
*Английская озвучка
При выборе первого и третьего - ничего не запускается.
второго и четвёртого - ничего не запускается.
первого и четвёртого - запускается батник.
второго и третьего - запускается батник.
Наример, у меня 4 компонента:
*Русский текст
*Английский текст
*Русская озвучка
*Английская озвучка
При выборе первого и третьего - ничего не запускается.
второго и четвёртого - ничего не запускается.
первого и четвёртого - запускается батник.
второго и третьего - запускается батник.
Denis_T
Можно вот так:
[more=код][Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application
[Components]
Name: textrus; Description: Русский текст;
Name: texteng; Description: Английский текст;
Name: voicerus; Description: Русская озвучка;
Name: voiceeng; Description: Английская озвучка;
[Run]
Filename: bat.bat;Check:BatCheck;
Код:
function BatCheck: Boolean;
begin
if ((IsComponentSelected('textrus')and IsComponentSelected('voiceeng'))
or (IsComponentSelected('texteng')and IsComponentSelected('voicerus')))
then Result:=True;
end;[/more]
Думаю, понятно там все.
Функцию BatCheck нужно будет править каждый раз - менять имена компонентов, если они изменятся в секции Components. Моожно так-же для экзек или шеллэкзек(для батника) использовать эту функцию:
[code]if BatCheck then ShellExeck...........
Можно вот так:
[more=код][Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application
[Components]
Name: textrus; Description: Русский текст;
Name: texteng; Description: Английский текст;
Name: voicerus; Description: Русская озвучка;
Name: voiceeng; Description: Английская озвучка;
[Run]
Filename: bat.bat;Check:BatCheck;
Код:
function BatCheck: Boolean;
begin
if ((IsComponentSelected('textrus')and IsComponentSelected('voiceeng'))
or (IsComponentSelected('texteng')and IsComponentSelected('voicerus')))
then Result:=True;
end;[/more]
Думаю, понятно там все.
Функцию BatCheck нужно будет править каждый раз - менять имена компонентов, если они изменятся в секции Components. Моожно так-же для экзек или шеллэкзек(для батника) использовать эту функцию:
[code]if BatCheck then ShellExeck...........
Krinkels
Цитата:
Ну прям оочень помогли, я об этом даже не догадывался!
Цитата:
Можно, устанавливай меньше файлов
Ну прям оочень помогли, я об этом даже не догадывался!
Gnom3, О-о-о, спасибо. А если у меня 2 батника?)
как раз один для первого и четвёртого, второго и третьего компонентов.
как раз один для первого и четвёртого, второго и третьего компонентов.
Denis_T
[more=вот тут не много другой пример]
[Setup]
AppName=My Program
AppVersion=1.5
DefaultDirName={pf}\My Program
DefaultGroupName=My Program
DisableProgramGroupPage=yes
ShowComponentSizes=false
[Languages]
Name: russian; MessagesFile: compiler:Languages\Russian.isl
[Types]
Name: full; Description: Full installation; Flags: iscustom
[Components]
Name: textrus; Description: Русский текст; Flags: exclusive;
Name: texteng; Description: Английский текст; Flags: exclusive;
Name: voicerus; Description: Русская озвучка; Flags: exclusive;
Name: voiceeng; Description: Английская озвучка; Flags: exclusive;
[Code]
procedure CurStepChanged(CurStep: TSetupStep);
var
ResultCode: integer;
begin
if CurStep = ssPostInstall then
if IsComponentSelected('textrus') then Exec(ExpandConstant('{app}\Run.Bat'),'',ExpandConstant('{app}'), SW_SHOW, ewWaitUntilTerminated, ResultCode);
if IsComponentSelected('texteng') then Exec(ExpandConstant('{app}\Run.Bat'),'',ExpandConstant('{app}'), SW_SHOW, ewWaitUntilTerminated, ResultCode);
if IsComponentSelected('voicerus') then Exec(ExpandConstant('{app}\Run.Bat'),'',ExpandConstant('{app}'), SW_SHOW, ewWaitUntilTerminated, ResultCode);
if IsComponentSelected('voiceeng') then Exec(ExpandConstant('{app}\Run.Bat'),'',ExpandConstant('{app}'), SW_SHOW, ewWaitUntilTerminated, ResultCode);
end;[/more]
[more=вот тут не много другой пример]
[Setup]
AppName=My Program
AppVersion=1.5
DefaultDirName={pf}\My Program
DefaultGroupName=My Program
DisableProgramGroupPage=yes
ShowComponentSizes=false
[Languages]
Name: russian; MessagesFile: compiler:Languages\Russian.isl
[Types]
Name: full; Description: Full installation; Flags: iscustom
[Components]
Name: textrus; Description: Русский текст; Flags: exclusive;
Name: texteng; Description: Английский текст; Flags: exclusive;
Name: voicerus; Description: Русская озвучка; Flags: exclusive;
Name: voiceeng; Description: Английская озвучка; Flags: exclusive;
[Code]
procedure CurStepChanged(CurStep: TSetupStep);
var
ResultCode: integer;
begin
if CurStep = ssPostInstall then
if IsComponentSelected('textrus') then Exec(ExpandConstant('{app}\Run.Bat'),'',ExpandConstant('{app}'), SW_SHOW, ewWaitUntilTerminated, ResultCode);
if IsComponentSelected('texteng') then Exec(ExpandConstant('{app}\Run.Bat'),'',ExpandConstant('{app}'), SW_SHOW, ewWaitUntilTerminated, ResultCode);
if IsComponentSelected('voicerus') then Exec(ExpandConstant('{app}\Run.Bat'),'',ExpandConstant('{app}'), SW_SHOW, ewWaitUntilTerminated, ResultCode);
if IsComponentSelected('voiceeng') then Exec(ExpandConstant('{app}\Run.Bat'),'',ExpandConstant('{app}'), SW_SHOW, ewWaitUntilTerminated, ResultCode);
end;[/more]
vint56
Спасибо, но это чуточку не то. Пример Gnom3 как раз то, что мне нужно, но там только для одного батника... Обидно.
Спасибо, но это чуточку не то. Пример Gnom3 как раз то, что мне нужно, но там только для одного батника... Обидно.
Denis_T а ты убери Flags: exclusive и будет как Gnom3 и 4 батника
[more]
[Setup]
AppName=My Program
AppVersion=1.5
DefaultDirName={pf}\My Program
DefaultGroupName=My Program
DisableProgramGroupPage=yes
ShowComponentSizes=false
[Languages]
Name: russian; MessagesFile: compiler:Languages\Russian.isl
[Files]
Source: textrus.Bat; DestDir: {app}; Flags: ignoreversion; Components: textrus
Source: texteng.Bat; DestDir: {app}; Flags: ignoreversion; Components: texteng
Source: voicerus.Bat; DestDir: {app}; Flags: ignoreversion; Components: voicerus
Source: voiceeng.Bat; DestDir: {app}; Flags: ignoreversion; Components: voiceeng
[Types]
Name: full; Description: Full installation; Flags: iscustom
[Components]
Name: textrus; Description: Русский текст
Name: texteng; Description: Английский текст
Name: voicerus; Description: Русская озвучка
Name: voiceeng; Description: Английская озвучка
[Code]
procedure CurStepChanged(CurStep: TSetupStep);
var
ResultCode: integer;
begin
if CurStep = ssPostInstall then
if IsComponentSelected('textrus') then Exec(ExpandConstant('{app}\textrus.Bat'),'',ExpandConstant('{app}'), SW_SHOW, ewWaitUntilTerminated, ResultCode);
if IsComponentSelected('texteng') then Exec(ExpandConstant('{app}\texteng.Bat'),'',ExpandConstant('{app}'), SW_SHOW, ewWaitUntilTerminated, ResultCode);
if IsComponentSelected('voicerus') then Exec(ExpandConstant('{app}\voicerus.Bat'),'',ExpandConstant('{app}'), SW_SHOW, ewWaitUntilTerminated, ResultCode);
if IsComponentSelected('voiceeng') then Exec(ExpandConstant('{app}\voiceeng.Bat'),'',ExpandConstant('{app}'), SW_SHOW, ewWaitUntilTerminated, ResultCode);
end;[/more]
А проше распакуй распакуй если есть возможность и сделай как компоненты
[more]
[Setup]
AppName=My Program
AppVersion=1.5
DefaultDirName={pf}\My Program
DefaultGroupName=My Program
DisableProgramGroupPage=yes
ShowComponentSizes=false
[Languages]
Name: russian; MessagesFile: compiler:Languages\Russian.isl
[Files]
Source: textrus.Bat; DestDir: {app}; Flags: ignoreversion; Components: textrus
Source: texteng.Bat; DestDir: {app}; Flags: ignoreversion; Components: texteng
Source: voicerus.Bat; DestDir: {app}; Flags: ignoreversion; Components: voicerus
Source: voiceeng.Bat; DestDir: {app}; Flags: ignoreversion; Components: voiceeng
[Types]
Name: full; Description: Full installation; Flags: iscustom
[Components]
Name: textrus; Description: Русский текст
Name: texteng; Description: Английский текст
Name: voicerus; Description: Русская озвучка
Name: voiceeng; Description: Английская озвучка
[Code]
procedure CurStepChanged(CurStep: TSetupStep);
var
ResultCode: integer;
begin
if CurStep = ssPostInstall then
if IsComponentSelected('textrus') then Exec(ExpandConstant('{app}\textrus.Bat'),'',ExpandConstant('{app}'), SW_SHOW, ewWaitUntilTerminated, ResultCode);
if IsComponentSelected('texteng') then Exec(ExpandConstant('{app}\texteng.Bat'),'',ExpandConstant('{app}'), SW_SHOW, ewWaitUntilTerminated, ResultCode);
if IsComponentSelected('voicerus') then Exec(ExpandConstant('{app}\voicerus.Bat'),'',ExpandConstant('{app}'), SW_SHOW, ewWaitUntilTerminated, ResultCode);
if IsComponentSelected('voiceeng') then Exec(ExpandConstant('{app}\voiceeng.Bat'),'',ExpandConstant('{app}'), SW_SHOW, ewWaitUntilTerminated, ResultCode);
end;[/more]
А проше распакуй распакуй если есть возможность и сделай как компоненты
Gnom3
спасибо большое, буду тестить
спасибо большое, буду тестить
Denis_T
А дописать пример от Gnom3 - не?
[more=2 примера]
Код: [Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application
[Types]
Name: full; Description: Full installation; Flags: iscustom;
[Components]
Name: text; Description: Язык субтитров; Types: full; Flags: fixed;
Name: text\rus; Description: Русский текст; Flags: exclusive;
Name: text\eng; Description: Английский текст; Flags: exclusive;
Name: voice; Description: Язык озвучки; Types: full; Flags: fixed;
Name: voice\rus; Description: Русская озвучка; Flags: exclusive;
Name: voice\eng; Description: Английская озвучка; Flags: exclusive;
[Run]
Filename: bat.bat; Check: BatCheck;
Filename: bat1.bat; Check: Bat1Check;
[_code]
function BatCheck: Boolean;
begin
if (IsComponentSelected('text\rus')and IsComponentSelected('voice\eng')) then
Result:=True;
end;
function Bat1Check: Boolean;
begin
if (IsComponentSelected('text\eng')and IsComponentSelected('voice\rus')) then
Result:=True;
end;
А дописать пример от Gnom3 - не?
[more=2 примера]
Код: [Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application
[Types]
Name: full; Description: Full installation; Flags: iscustom;
[Components]
Name: text; Description: Язык субтитров; Types: full; Flags: fixed;
Name: text\rus; Description: Русский текст; Flags: exclusive;
Name: text\eng; Description: Английский текст; Flags: exclusive;
Name: voice; Description: Язык озвучки; Types: full; Flags: fixed;
Name: voice\rus; Description: Русская озвучка; Flags: exclusive;
Name: voice\eng; Description: Английская озвучка; Flags: exclusive;
[Run]
Filename: bat.bat; Check: BatCheck;
Filename: bat1.bat; Check: Bat1Check;
[_code]
function BatCheck: Boolean;
begin
if (IsComponentSelected('text\rus')and IsComponentSelected('voice\eng')) then
Result:=True;
end;
function Bat1Check: Boolean;
begin
if (IsComponentSelected('text\eng')and IsComponentSelected('voice\rus')) then
Result:=True;
end;
nik1967, Gnom3, vint56, огромное спасибо, что помогли.
nik1967, я бы с радостью дописал, но не знаю как... А Вы сделали это за меня, за что и спасибо.
nik1967, я бы с радостью дописал, но не знаю как... А Вы сделали это за меня, за что и спасибо.
Denis_T -- в подобных случаях, я предпочитаю обходится штатными средствами (не используя секцию Code).
[more]
[Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application
[Types]
Name: full; Description: Full installation; Flags: iscustom;
[Components]
Name: text; Description: Язык субтитров; Types: full; Flags: fixed;
Name: text\rus; Description: Русский текст; Flags: exclusive;
Name: text\eng; Description: Английский текст; Flags: exclusive;
Name: voice; Description: Язык озвучки; Types: full; Flags: fixed;
Name: voice\rus; Description: Русская озвучка; Flags: exclusive;
Name: voice\eng; Description: Английская озвучка; Flags: exclusive;
[Files]
Source: bat1.cmd; Flags: dontcopy
Source: bat2.cmd; Flags: dontcopy
[Run]
Filename: bat1.cmd; Flags: waituntilterminated; Check: IsComponentSelected('text\rus') and IsComponentSelected('voice\eng');
Filename: bat2.cmd; Flags: waituntilterminated; Check: IsComponentSelected('text\eng') and IsComponentSelected('voice\rus');
[/more]
[more]
[Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application
[Types]
Name: full; Description: Full installation; Flags: iscustom;
[Components]
Name: text; Description: Язык субтитров; Types: full; Flags: fixed;
Name: text\rus; Description: Русский текст; Flags: exclusive;
Name: text\eng; Description: Английский текст; Flags: exclusive;
Name: voice; Description: Язык озвучки; Types: full; Flags: fixed;
Name: voice\rus; Description: Русская озвучка; Flags: exclusive;
Name: voice\eng; Description: Английская озвучка; Flags: exclusive;
[Files]
Source: bat1.cmd; Flags: dontcopy
Source: bat2.cmd; Flags: dontcopy
[Run]
Filename: bat1.cmd; Flags: waituntilterminated; Check: IsComponentSelected('text\rus') and IsComponentSelected('voice\eng');
Filename: bat2.cmd; Flags: waituntilterminated; Check: IsComponentSelected('text\eng') and IsComponentSelected('voice\rus');
[/more]
Цитата:
можнали сделать неоновые края инсталлятора
Можно если знать код
Цитата:
можнали сделать неоновые края инсталлятора
сам инсталл можно?
Edison007007
тут дело не на инстале, а в проге, это как то можно прикрутить на скрип?
тут дело не на инстале, а в проге, это как то можно прикрутить на скрип?
ENERGES
не понял, это типо просто нарисовано?
не понял, это типо просто нарисовано?
Edison007007
нет ,не нарисован!
тут прога подключен ,прогу как то можна на скрип привязать?
нет ,не нарисован!
тут прога подключен ,прогу как то можна на скрип привязать?
с какой прогой-то?
аХа, значит можно раз заинтересовался
Edison007007
Программа, придающая окнам неоновое освещение. Что-то вроде тени на окнах в Висте или Семёрке, но только цветная и больше.
Программа, придающая окнам неоновое освещение. Что-то вроде тени на окнах в Висте или Семёрке, но только цветная и больше.
Edison007007
о мен, можешь на мой скрип переписать пожалуйста?
о мен, можешь на мой скрип переписать пожалуйста?
Цитата:
вот сам прог
del
Цитата:
о мен, можешь на мой скрип переписать пожалуйста?
Пока что это халтура надо доработать, может вообще через код можно сделать, а не через изображение
ждёмс,толька без кидалова
Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177
Предыдущая тема: поиск
Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.