Такой вопрос. Как мне убрать из инсталлятора SelectDirPage (страницу выбора директории установки) и самому прописать путь установки? Заранее спасибо.
» Inno Setup (создание инсталяционных пакетов)
NinjaTurtles100500
Цитата:
[setup]
DisableDirPage=yes
Цитата:
DefaultDirName={pf}\My Program
Цитата:
Как мне убрать из инсталлятора SelectDirPage
[setup]
DisableDirPage=yes
Цитата:
и самому прописать путь установки?
DefaultDirName={pf}\My Program
Разрешите, обратится новая проблема есть два арк архива, к примеру нужно чтобы они распаковались по очереди как мне это сделать пользуюсь скриптом Need for Speed™ Undercover.iss v 2.2 [Final] нашел там строчку
#define ArcLocation "{src}\*.arc"
хотел сделать так, думал я самый умный но не тут то было
#define ArcLocation "{src}\*data-1.bin" размер 20мб
#define ArcLocation "{src}\*data-2.bin" размер 320мб
после сборки начел установку, инсталлятор устанавливает только одни архив с размером 320мб
что делать и что прописать и куда подскажите, пожалуйста!!!
в общем, мне нужно чтоб инсталлятор устанавливал мои архивы
#define ArcLocation "{src}\*.arc"
хотел сделать так, думал я самый умный но не тут то было
#define ArcLocation "{src}\*data-1.bin" размер 20мб
#define ArcLocation "{src}\*data-2.bin" размер 320мб
после сборки начел установку, инсталлятор устанавливает только одни архив с размером 320мб
что делать и что прописать и куда подскажите, пожалуйста!!!
в общем, мне нужно чтоб инсталлятор устанавливал мои архивы
Kasoi
Благодарю)
Благодарю)
crysis1830
Так не побывали:
Цитата:
Вроде как в скрипте Юрташа поиск по маске архивов, скрипт не разу не смотрел, точно не знаю.
Так не побывали:
Цитата:
#define ArcLocation "{src}\*.bin"
Вроде как в скрипте Юрташа поиск по маске архивов, скрипт не разу не смотрел, точно не знаю.
serg_aka_lain
Цитата:
А возможно как-то сделать, что бы не велся поиск файлов OGG, а брался из списка, например из ogglist.txt, в котором прописаны пути к каждому файлу:
[code]
"Voice\voice true\true.ogg"
"NBK\345.ogg"
"SOUNDS\over voice\hard drum.ogg"
"SOUNDS\music\123.ogg"
"SOUNDS\terminal future\small f.ogg"
.
.
.
"SOUNDS\terminal future\big.ogg"
Цитата:
Цитата:
теперь в самом деле правильно обрабатывает имена с пробелами
Да, нормально работает, и прогрессбар тоже
[more=Код, с учётом всех исправлений]
[Setup]
AppName=RecodeOgg
AppVerName=RecodeOgg
OutputDir=.
OutputBaseFilename=RecodeOgg
DefaultDirName={pf}\RecodeOgg
AppendDefaultDirName=False
DisableDirPage=True
[files]
Source: oggdec.exe; DestDir: {app};
Source: oggs\*; DestDir: {app};
Source: oggs\*; DestDir: {app}\Data;
Код:
var
Files: Array of String;
S: String;
n: Integer;
Function StringToArray(Text, Cut: String): array of String; var i, k: Integer;
Begin
SetArrayLength(Result, 0); if Cut = '' then Cut:= #1310; //если шаблон пуст, считаем переводы строк
Repeat k:= Pos(Cut,Text);
if k = 1 then begin Delete(Text, 1, Length(Cut)); CONTINUE
end;
SetArrayLength(Result, GetArrayLength(Result) +1); i:= GetArrayLength(Result) -1;
if k = 0 then
Result[i]:=Text
else begin
Result[i]:= Copy(Text, 1, k -1); Delete(Text, 1, Length(Result[i]) + Length(Cut));
end;
Until Length(Text) * k = 0;
End;
procedure FindFiles(FromDir: String; Mask: String);
var FSR, DSR: TFindRec; FindResult: Boolean;
begin
FindResult:= FindFirst(AddBackslash(FromDir)+Mask, FSR)
while FindResult do begin
if FSR.Attributes and FILE_ATTRIBUTE_DIRECTORY = 0 then begin
S:= S + AddBackslash(fromDir) + FSR.Name +'|';
end;
FindResult:= FindNext(FSR);
end;
FindResult:= FindFirst(AddBackslash(FromDir)+ '*.*', DSR)
while FindResult do begin
if ((DSR.Attributes and FILE_ATTRIBUTE_DIRECTORY) = FILE_ATTRIBUTE_DIRECTORY) and not ((DSR.Name = '.') or (DSR.Name = '..')) then begin
FindFiles(AddBackSlash(FromDir)+ DSR.Name, Mask)
end;
FindResult:= FindNext(DSR);
end;
FindClose(FSR); FindClose(DSR)
end;
procedure RecodeOgg;
var ResultCode: integer; CurFile: String;
begin
FindFiles(ExpandConstant('{app}'), '*.ogg') //Находим все файлы по маске, в выбранной папке
Files:= StringToArray(S, '|') //Переводим в массив
WizardForm.ProgressGauge.Max:= GetArrayLength(Files)-1; //Получаем кол-во файлов
for n:=(GetArrayLength(Files)-1) downto 0 do begin
CurFile:= Files[n]
StringChange(CurFile, AddBackslash(ExpandConstant('{app}')), '')
Exec(ExpandConstant('{app}\oggdec.exe'), '-Q '+ AddQuotes(CurFile), '', SW_Hide, EwWaitUntilTerminated, ResultCode) //Для каждого файла запускаем декодер
DeleteFile(Files[n]) //Удаляем ненужный файл
WizardForm.FilenameLabel.Caption:= Files[n]; //Двигаем прогрессбар
WizardForm.ProgressGauge.Position:= WizardForm.ProgressGauge.Position +1;
end;
DeleteFile(ExpandConstant('{app}\oggdec.exe'))
end;
procedure CurStepChanged(CurStep: TSetupStep);
begin
if CurStep = ssPostInstall then
begin
WizardForm.ProgressGauge.Position := 0;
WizardForm.StatusLabel.Caption := 'Извлечение аудио файлов...';
RecodeOgg;
end;
end;
[/more]
А возможно как-то сделать, что бы не велся поиск файлов OGG, а брался из списка, например из ogglist.txt, в котором прописаны пути к каждому файлу:
[code]
"Voice\voice true\true.ogg"
"NBK\345.ogg"
"SOUNDS\over voice\hard drum.ogg"
"SOUNDS\music\123.ogg"
"SOUNDS\terminal future\small f.ogg"
.
.
.
"SOUNDS\terminal future\big.ogg"
Dark_Delphin
Для начала учимся НЕ выкладывать картинки такого размера. Для кого правила написаны?
Убери картинку такого размера/веса!
Для начала учимся НЕ выкладывать картинки такого размера. Для кого правила написаны?
Убери картинку такого размера/веса!
Dark_Delphin
Ну ты молодец... А старое сообщение не дано было исправить?
Dark_Delphin 14:02 20-07-2011
Цитата:
Логично предположить, что нужно добавить ее в прозрачную область ISWin7 также как и остальные кнопки.
Ну ты молодец... А старое сообщение не дано было исправить?
Dark_Delphin 14:02 20-07-2011
Цитата:
Кто подскажет, почему кнопка MusicButon в инсталляторе стала чорна когда я её опустил на уровень с остальными кнопками?
Логично предположить, что нужно добавить ее в прозрачную область ISWin7 также как и остальные кнопки.
Dark_Delphin
А кто твое старое сообщение будет редактировать? Пушкин?
А кто твое старое сообщение будет редактировать? Пушкин?
Привет,чуваки
zxcvvcxz1
Dark_Delphin
Отредактировал ты своё первое сообщение, это хорошо, но теперь это флуд! Удалить надо одно из двух.
Отредактировал ты своё первое сообщение, это хорошо, но теперь это флуд! Удалить надо одно из двух.
Denis_T на форме дейнсталяций скрываеш лайбалы
UninstallProgressForm.PageNameLabel.Hide;
UninstallProgressForm.PageDescriptionLabel.Hide;
UninstallProgressForm.PageNameLabel.Hide;
UninstallProgressForm.PageDescriptionLabel.Hide;
vint56
Данке шон.
Данке шон.
Привет форумчане...Дайте заготовку ISDon чтобы я мог делать всё что хочю картинки наклыдвать ботву а то найти немогу всю тему облазил желательно стабильную версию....
DangeSecond
Форум весь облазил,с а в шапку темы посмотреть забыл? Дополнительные библиотеки для Inno Setup - там стабильная версия лежит. Со скриптом.
Форум весь облазил,с а в шапку темы посмотреть забыл? Дополнительные библиотеки для Inno Setup - там стабильная версия лежит. Со скриптом.
[more=Код, с учётом всех исправлений]
[Setup]
AppName=RecodeOgg
AppVerName=RecodeOgg
OutputDir=.
OutputBaseFilename=RecodeOgg
DefaultDirName={pf}\RecodeOgg
AppendDefaultDirName=False
DisableDirPage=True
[files]
Source: oggdec.exe; DestDir: {app};
Source: oggs\*; DestDir: {app};
Source: oggs\*; DestDir: {app}\Data;
Код:
var
Files: Array of String;
S: String;
n: Integer;
Function StringToArray(Text, Cut: String): array of String; var i, k: Integer;
Begin
SetArrayLength(Result, 0); if Cut = '' then Cut:= #1310; //если шаблон пуст, считаем переводы строк
Repeat k:= Pos(Cut,Text);
if k = 1 then begin Delete(Text, 1, Length(Cut)); CONTINUE
end;
SetArrayLength(Result, GetArrayLength(Result) +1); i:= GetArrayLength(Result) -1;
if k = 0 then
Result[i]:=Text
else begin
Result[i]:= Copy(Text, 1, k -1); Delete(Text, 1, Length(Result[i]) + Length(Cut));
end;
Until Length(Text) * k = 0;
End;
procedure FindFiles(FromDir: String; Mask: String);
var FSR, DSR: TFindRec; FindResult: Boolean;
begin
FindResult:= FindFirst(AddBackslash(FromDir)+Mask, FSR)
while FindResult do begin
if FSR.Attributes and FILE_ATTRIBUTE_DIRECTORY = 0 then begin
S:= S + AddBackslash(fromDir) + FSR.Name +'|';
end;
FindResult:= FindNext(FSR);
end;
FindResult:= FindFirst(AddBackslash(FromDir)+ '*.*', DSR)
while FindResult do begin
if ((DSR.Attributes and FILE_ATTRIBUTE_DIRECTORY) = FILE_ATTRIBUTE_DIRECTORY) and not ((DSR.Name = '.') or (DSR.Name = '..')) then begin
FindFiles(AddBackSlash(FromDir)+ DSR.Name, Mask)
end;
FindResult:= FindNext(DSR);
end;
FindClose(FSR); FindClose(DSR)
end;
procedure RecodeOgg;
var ResultCode: integer; CurFile: String;
begin
FindFiles(ExpandConstant('{app}'), '*.ogg') //Находим все файлы по маске, в выбранной папке
Files:= StringToArray(S, '|') //Переводим в массив
WizardForm.ProgressGauge.Max:= GetArrayLength(Files)-1; //Получаем кол-во файлов
for n:=(GetArrayLength(Files)-1) downto 0 do begin
CurFile:= Files[n]
StringChange(CurFile, AddBackslash(ExpandConstant('{app}')), '')
Exec(ExpandConstant('{app}\oggdec.exe'), '-Q '+ AddQuotes(CurFile), '', SW_Hide, EwWaitUntilTerminated, ResultCode) //Для каждого файла запускаем декодер
DeleteFile(Files[n]) //Удаляем ненужный файл
WizardForm.FilenameLabel.Caption:= Files[n]; //Двигаем прогрессбар
WizardForm.ProgressGauge.Position:= WizardForm.ProgressGauge.Position +1;
end;
DeleteFile(ExpandConstant('{app}\oggdec.exe'))
end;
procedure CurStepChanged(CurStep: TSetupStep);
begin
if CurStep = ssPostInstall then
begin
WizardForm.ProgressGauge.Position := 0;
WizardForm.StatusLabel.Caption := 'Извлечение аудио файлов...';
RecodeOgg;
end;
end;
[/more]
А возможно как-то сделать, что бы не велся поиск файлов OGG, а брался из списка, например из ogglist.txt, в котором прописаны пути к каждому файлу:
[code]
"Voice\voice true\true.ogg"
"NBK\345.ogg"
"SOUNDS\over voice\hard drum.ogg"
"SOUNDS\music\123.ogg"
"SOUNDS\terminal future\small f.ogg"
.
.
.
"SOUNDS\terminal future\big.ogg"
[Setup]
AppName=RecodeOgg
AppVerName=RecodeOgg
OutputDir=.
OutputBaseFilename=RecodeOgg
DefaultDirName={pf}\RecodeOgg
AppendDefaultDirName=False
DisableDirPage=True
[files]
Source: oggdec.exe; DestDir: {app};
Source: oggs\*; DestDir: {app};
Source: oggs\*; DestDir: {app}\Data;
Код:
var
Files: Array of String;
S: String;
n: Integer;
Function StringToArray(Text, Cut: String): array of String; var i, k: Integer;
Begin
SetArrayLength(Result, 0); if Cut = '' then Cut:= #1310; //если шаблон пуст, считаем переводы строк
Repeat k:= Pos(Cut,Text);
if k = 1 then begin Delete(Text, 1, Length(Cut)); CONTINUE
end;
SetArrayLength(Result, GetArrayLength(Result) +1); i:= GetArrayLength(Result) -1;
if k = 0 then
Result[i]:=Text
else begin
Result[i]:= Copy(Text, 1, k -1); Delete(Text, 1, Length(Result[i]) + Length(Cut));
end;
Until Length(Text) * k = 0;
End;
procedure FindFiles(FromDir: String; Mask: String);
var FSR, DSR: TFindRec; FindResult: Boolean;
begin
FindResult:= FindFirst(AddBackslash(FromDir)+Mask, FSR)
while FindResult do begin
if FSR.Attributes and FILE_ATTRIBUTE_DIRECTORY = 0 then begin
S:= S + AddBackslash(fromDir) + FSR.Name +'|';
end;
FindResult:= FindNext(FSR);
end;
FindResult:= FindFirst(AddBackslash(FromDir)+ '*.*', DSR)
while FindResult do begin
if ((DSR.Attributes and FILE_ATTRIBUTE_DIRECTORY) = FILE_ATTRIBUTE_DIRECTORY) and not ((DSR.Name = '.') or (DSR.Name = '..')) then begin
FindFiles(AddBackSlash(FromDir)+ DSR.Name, Mask)
end;
FindResult:= FindNext(DSR);
end;
FindClose(FSR); FindClose(DSR)
end;
procedure RecodeOgg;
var ResultCode: integer; CurFile: String;
begin
FindFiles(ExpandConstant('{app}'), '*.ogg') //Находим все файлы по маске, в выбранной папке
Files:= StringToArray(S, '|') //Переводим в массив
WizardForm.ProgressGauge.Max:= GetArrayLength(Files)-1; //Получаем кол-во файлов
for n:=(GetArrayLength(Files)-1) downto 0 do begin
CurFile:= Files[n]
StringChange(CurFile, AddBackslash(ExpandConstant('{app}')), '')
Exec(ExpandConstant('{app}\oggdec.exe'), '-Q '+ AddQuotes(CurFile), '', SW_Hide, EwWaitUntilTerminated, ResultCode) //Для каждого файла запускаем декодер
DeleteFile(Files[n]) //Удаляем ненужный файл
WizardForm.FilenameLabel.Caption:= Files[n]; //Двигаем прогрессбар
WizardForm.ProgressGauge.Position:= WizardForm.ProgressGauge.Position +1;
end;
DeleteFile(ExpandConstant('{app}\oggdec.exe'))
end;
procedure CurStepChanged(CurStep: TSetupStep);
begin
if CurStep = ssPostInstall then
begin
WizardForm.ProgressGauge.Position := 0;
WizardForm.StatusLabel.Caption := 'Извлечение аудио файлов...';
RecodeOgg;
end;
end;
[/more]
А возможно как-то сделать, что бы не велся поиск файлов OGG, а брался из списка, например из ogglist.txt, в котором прописаны пути к каждому файлу:
[code]
"Voice\voice true\true.ogg"
"NBK\345.ogg"
"SOUNDS\over voice\hard drum.ogg"
"SOUNDS\music\123.ogg"
"SOUNDS\terminal future\small f.ogg"
.
.
.
"SOUNDS\terminal future\big.ogg"
мне кто ни будь поможет!! как отключить слайд шоу в скрипте от YURSHAT Need for Speed™ Undercover.iss v 2.2 [Final]
crysis1830
закоментируй
Код: #define SlidesCount "15"
закоментируй
Код: #define SlidesCount "15"
troyan90
Спасибо! Возьмём на заметку.
Спасибо! Возьмём на заметку.
Ребят помогите, мне нужно создать на рабочем столе ярлык.
Но для Windows XP он создаётся с одним параметром, а Для Windows 7 с другим.
Как сделать разграничение ? Что у казать в Check: ? Справку читал.
Вот для XP:Name: {group}\Играть Pes; Filename: {app}\pes2011.exe; WorkingDir: {app}; Parameters: "-fulls"
А вот для Windows 7:Name: {group}\Играть Pes; Filename: {app}\pes2011.exe; WorkingDir: {app}; Parameters: "-fullscreen"
Но для Windows XP он создаётся с одним параметром, а Для Windows 7 с другим.
Как сделать разграничение ? Что у казать в Check: ? Справку читал.
Вот для XP:Name: {group}\Играть Pes; Filename: {app}\pes2011.exe; WorkingDir: {app}; Parameters: "-fulls"
А вот для Windows 7:Name: {group}\Играть Pes; Filename: {app}\pes2011.exe; WorkingDir: {app}; Parameters: "-fullscreen"
XepAP
[more=Как то так]
Код: [Setup]
AppName=Приложение
AppVerName=Приложение
DefaultDirName={pf}\123
DirExistsWarning=no
[Languages]
Name: rus; MessagesFile: compiler:Languages\Russian.isl
[Icons]
Name: {group}\Играть Pes; Filename: {app}\pes2011.exe; WorkingDir: {app}; Parameters: "-fulls"; Check: not isWin7;
Name: {group}\Играть Pes; Filename: {app}\pes2011.exe; WorkingDir: {app}; Parameters: "-fullscreen"; Check: isWin7;
Name: {group}\Удалить пример; IconFilename: "{app}\unins000.exe"; Filename: "{app}\unins000.exe"; WorkingDir: {app};
Name: {commondesktop}\Удалить пример; Filename: {app}\unins000.exe; WorkingDir: {app};
[_code]
Function isWin7():boolean;
begin
if ((GetWindowsVersion shr 24) = 6) and (((GetWindowsVersion shr 16) and $FF) = 1) then Result := true else Result := False;
end;
[more=Как то так]
Код: [Setup]
AppName=Приложение
AppVerName=Приложение
DefaultDirName={pf}\123
DirExistsWarning=no
[Languages]
Name: rus; MessagesFile: compiler:Languages\Russian.isl
[Icons]
Name: {group}\Играть Pes; Filename: {app}\pes2011.exe; WorkingDir: {app}; Parameters: "-fulls"; Check: not isWin7;
Name: {group}\Играть Pes; Filename: {app}\pes2011.exe; WorkingDir: {app}; Parameters: "-fullscreen"; Check: isWin7;
Name: {group}\Удалить пример; IconFilename: "{app}\unins000.exe"; Filename: "{app}\unins000.exe"; WorkingDir: {app};
Name: {commondesktop}\Удалить пример; Filename: {app}\unins000.exe; WorkingDir: {app};
[_code]
Function isWin7():boolean;
begin
if ((GetWindowsVersion shr 24) = 6) and (((GetWindowsVersion shr 16) and $FF) = 1) then Result := true else Result := False;
end;
Gnom3 Спасибо большое. Я както сам недодумался)
Как в новых версиях инно назначить иконку для файла uninst000.exe и иконку в "установке и удалении программ"?
Код: UninstallIconFile=
Код: UninstallIconFile=
Kasoi
#define SlidesCount "15"
а если нету там такой строчки как иначе отключить слайд шоу
#define SlidesCount "15"
а если нету там такой строчки как иначе отключить слайд шоу
Source: Slides\*; Flags: dontcopy
попробуй закомментировать
попробуй закомментировать
Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177
Предыдущая тема: поиск
Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.