Всем привет, кто сможет реализовать закачку файлов из сети?, нужно так - Чтоб после первой страницы скачал новые файлы и положил в установленную папку, куда укажет в папку установщик, пробовал, ошибка лезет и не могу понять из за чего, использовал InnoTools Downloader. Спс заранее
» Inno Setup (создание инсталяционных пакетов)
Всем привет! Делаю кастомный лог установки, нужно записать в файл все устанавливаемые файлы. Не могу нащупать получение имён файлов, которые устанавливаются инсталятором.
Список компонентов можно получить при помощи WizardForm.ComponentsList.ItemCaption. А с файлами как тогда? Голову уже сломал.
Список компонентов можно получить при помощи WizardForm.ComponentsList.ItemCaption. А с файлами как тогда? Голову уже сломал.
Чем можно пропатчить ранее созданный проект, заменить надо один файл? Год назад собирал инсталятор и конфиги не сохранились.
[more]
Код:
var
ProgressLabel: TLabel;
[qoute]procedure ExtLog();
begin
SaveStringToFile(ExpandConstant('{app}\setup.log'), #13#10 + GetDateTimeString('dd/mm/yyyy hh:nn:ss', '-', ':') +
' - ' + ExpandConstant(CurrentFileName), True);
with WizardForm.ProgressGauge do
ProgressLabel.Caption:= IntToStr((Position-Min)/((Max - Min)/100)) + '%';
end;
procedure InitializeWizard();
begin
ProgressLabel := TLabel.Create(WizardForm);
with WizardForm.ProgressGauge do
begin
ProgressLabel.Top := Top + Height + ScaleY(8);
ProgressLabel.Left:= Left + Width/2 - ScaleX(8);
ProgressLabel.Caption := 'TLabel';
ProgressLabel.AutoSize := True;
ProgressLabel.Parent := WizardForm.InstallingPage;
end;
end;
Код:
var
ProgressLabel: TLabel;
[qoute]procedure ExtLog();
begin
SaveStringToFile(ExpandConstant('{app}\setup.log'), #13#10 + GetDateTimeString('dd/mm/yyyy hh:nn:ss', '-', ':') +
' - ' + ExpandConstant(CurrentFileName), True);
with WizardForm.ProgressGauge do
ProgressLabel.Caption:= IntToStr((Position-Min)/((Max - Min)/100)) + '%';
end;
procedure InitializeWizard();
begin
ProgressLabel := TLabel.Create(WizardForm);
with WizardForm.ProgressGauge do
begin
ProgressLabel.Top := Top + Height + ScaleY(8);
ProgressLabel.Left:= Left + Width/2 - ScaleX(8);
ProgressLabel.Caption := 'TLabel';
ProgressLabel.AutoSize := True;
ProgressLabel.Parent := WizardForm.InstallingPage;
end;
end;
Где можно посмотреть пример скрипта разбора Connection String?
Пример app.config
Код:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
</configSections>
<connectionStrings>
<clear />
<add name="Test_Project.Properties.Settings.KBConnectionString" connectionString="Data Source=(local);Initial Catalog=KB;User ID=sa;Password=sa"
providerName="System.Data.SqlClient" />
</connectionStrings>
</configuration>
Пример app.config
Код:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
</configSections>
<connectionStrings>
<clear />
<add name="Test_Project.Properties.Settings.KBConnectionString" connectionString="Data Source=(local);Initial Catalog=KB;User ID=sa;Password=sa"
providerName="System.Data.SqlClient" />
</connectionStrings>
</configuration>
Помогите отредактировать скрипт. Я с разных примеров склеил установщик оформлением как у D!akov. Появляется ошибка (5 раз) с момента запуска и до окончания установки. Вот полный проект моего скрипта . Пожалуйста... Все помогли!
Где найти набор красивых лого (картинка которая слева в инсталляторе)?
T2008 Самому создать. Формат bmp размером 164x314
dodakaedr
Странно, что нет готового пакета bmp-обложек, где каждый выберет для себя.
Странно, что нет готового пакета bmp-обложек, где каждый выберет для себя.
sjwrec войти в агент, мне скрипт надо доработать, не могу справится
Доброго времени суток!
Подскажите как сделать проверку на наличие определённых файлов в указанной директории установки перед началом распаковки.
К примеру выбрал директорию, далее при нажатии на кнопку "установить" в директории установки проверялось наличие файла:
{app} / MyProg.exe
При положительном результате началась распаковка файлов.
При отрицательном выводился Msbox:
Неверно выбрана директория установки, укажите правильный путь!
Вот начатый установщик:
http://rghost.ru/54395682
Подскажите как сделать проверку на наличие определённых файлов в указанной директории установки перед началом распаковки.
К примеру выбрал директорию, далее при нажатии на кнопку "установить" в директории установки проверялось наличие файла:
{app} / MyProg.exe
При положительном результате началась распаковка файлов.
При отрицательном выводился Msbox:
Неверно выбрана директория установки, укажите правильный путь!
Вот начатый установщик:
http://rghost.ru/54395682
dragon1000
пример с моего кода:
Код:
function NextButtonClick(CurPage: Integer): Boolean;
var
s:string;
begin
Result:=True;
If CurPage=6 then
begin
If (FileSearch('MyProg.exe', ExpandConstant('{app}'))='')
then
begin
s:='Извините, в выбранной папке '+ExpandConstant('{app}')+'' #13 'не обнаружена программа.' #13#13 'Пожалуйста, выберите правильный путь.';
MsgBox(s, mbError, mb_Ok);
Result:= False
end;
end;
end;
пример с моего кода:
Код:
function NextButtonClick(CurPage: Integer): Boolean;
var
s:string;
begin
Result:=True;
If CurPage=6 then
begin
If (FileSearch('MyProg.exe', ExpandConstant('{app}'))='')
then
begin
s:='Извините, в выбранной папке '+ExpandConstant('{app}')+'' #13 'не обнаружена программа.' #13#13 'Пожалуйста, выберите правильный путь.';
MsgBox(s, mbError, mb_Ok);
Result:= False
end;
end;
end;
Цитата:
пример с моего кода:
Не хочет искать файлы просто установка продолжается при наличии и при отсутствии файлов
Вот начатый установщик:
http://rghost.ru/54395682
Hi I'm Trying to Extract temporary dll and installer of Exe to TMemoryStream INSTEAD of {tmp} Folder using ExtractTemporaryFileToStream but I do not know How to declare functions in dll Files. Can anyone explain how to do it. For example this declaration:
Код:
Код: procedure SetTaskBarProgressValue (APP: HWND; Value: Integer); external 'SetTaskBarProgressValue @ {tmp} \ WinTB.dll stdcall delayload';
Код:
Код: procedure SetTaskBarProgressValue (APP: HWND; Value: Integer); external 'SetTaskBarProgressValue @ {tmp} \ WinTB.dll stdcall delayload';
dragon1000 тогда не знаю
dragon1000
Код: function NextButtonClick(CurPage: Integer): Boolean;
begin
Result := True;
if CurPage = wpReady then
if not FileExists(ExpandConstant('{app}\MyProg.exe')) then
begin
MsgBox('Неверно выбрана директория установки, укажите правильный путь! ', mbError, MB_OK);
Result := False;
end;
end;
Код: function NextButtonClick(CurPage: Integer): Boolean;
begin
Result := True;
if CurPage = wpReady then
if not FileExists(ExpandConstant('{app}\MyProg.exe')) then
begin
MsgBox('Неверно выбрана директория установки, укажите правильный путь! ', mbError, MB_OK);
Result := False;
end;
end;
Возможно примерно скрипт как у Opera???
Цитата:
Код:
YURSHAT, взял за основу ваш код но вот незадача
При выборе папки в которой нет указанного файла установщик выводит сообщение об ошибке и это правильно. Но в тоже время при выборе той папки где есть файл MyProg.exe он опять начинает выводить Msbox с ошибкой и не дает продолжить установку.
http://rghost.ru/54426460
dragon1000
При выборе папки в которой нет указанного файла установщик выводит сообщение об ошибке и это правильно. Но в тоже время при выборе той папки где есть файл MyProg.exe он опять начинает выводить Msbox с ошибкой и не дает продолжить установку.
http://rghost.ru/54428856 Работает.
При выборе папки в которой нет указанного файла установщик выводит сообщение об ошибке и это правильно. Но в тоже время при выборе той папки где есть файл MyProg.exe он опять начинает выводить Msbox с ошибкой и не дает продолжить установку.
http://rghost.ru/54428856 Работает.
Цитата:
Работает.
Установщик нормально все определяет если я выбираю стандартную папку установки
{pf}\{#AppName}
Если же указываю другую папку то уже нет.
В коде указано искать файл в текущей выбранной папке {app}
if not FileExists(ExpandConstant('{app}\MyProg.exe')) then
А он все равно ищет файлы по стандартному пути.
dragon1000
Попробуйте так
Код:
function NextButtonClick(CurPage: Integer): Boolean;
begin
Result := True;
if CurPage = wpReady then
if not FileExists(AddBackslash(WizardForm.DirEdit.Text) + 'MyProg.exe') then
begin
MsgBox('Неверно выбрана директория установки, укажите правильный путь! ', mbError, MB_OK);
Result := False;
end;
end;
Попробуйте так
Код:
function NextButtonClick(CurPage: Integer): Boolean;
begin
Result := True;
if CurPage = wpReady then
if not FileExists(AddBackslash(WizardForm.DirEdit.Text) + 'MyProg.exe') then
begin
MsgBox('Неверно выбрана директория установки, укажите правильный путь! ', mbError, MB_OK);
Result := False;
end;
end;
tyumenik
Цитата:
Посмотрите этот скрипт. Вроде это то, что вам нужно
Цитата:
Возможно примерно скрипт как у Opera???
Посмотрите этот скрипт. Вроде это то, что вам нужно
YURSHAT, но мне нужно примерно
Цитата:
Попробуйте так
Огромное спасибо вам!!!
Можно запретить тихую установку? Или изменить сам ключ тихой установки с /VERYSILENT на /S?
помогите доделать функцию... нужно сделать проверку если файл \csgo\pak01_dir.vpk присутствует то продолжать установку...
проверку нужно сделать после проварки на присутствие файла steam.inf
вот сама же функция
Код:
function NextButtonClick(CurPageID: Integer): Boolean;
var
ss: TArrayOfString;
s, file: String;
i: Integer;
begin
Result:= True;
if CurPageID = wpSelectDir then begin
file:= WizardForm.DirEdit.Text+'\csgo\steam.inf';
if not FileExists(file) then begin
MsgBox(ExpandConstant('{cm:incatalog} '+ExpandConstant('{app}')+' {cm:gameeps}'), mbCriticalError, MB_OK);
Result:= False;
Exit;
end;
LoadStringsFromFile(file, ss);
s:= '';
for i:=0 to GetArrayLength(ss)-1 do begin
if Pos('patchversion', AnsiLowercase(ss[i]))>0 then begin
s:= ss[i];
Break;
end;
end;
if s='' then Exit;
Delete(S, 1, Pos('=', s));
s:= Trim(S);
If (s<>'1.32.6.0') and (s<>'1.32.5.1') and (s<>'1.32.5.0') and (s<>'1.32.7.0') then begin
MsgBox(ExpandConstant('{cm:gemever} '+s+'. {cm:errorinst}'), mbCriticalError, MB_OK);
Result:= False;
end;
end;
end;
проверку нужно сделать после проварки на присутствие файла steam.inf
вот сама же функция
Код:
function NextButtonClick(CurPageID: Integer): Boolean;
var
ss: TArrayOfString;
s, file: String;
i: Integer;
begin
Result:= True;
if CurPageID = wpSelectDir then begin
file:= WizardForm.DirEdit.Text+'\csgo\steam.inf';
if not FileExists(file) then begin
MsgBox(ExpandConstant('{cm:incatalog} '+ExpandConstant('{app}')+' {cm:gameeps}'), mbCriticalError, MB_OK);
Result:= False;
Exit;
end;
LoadStringsFromFile(file, ss);
s:= '';
for i:=0 to GetArrayLength(ss)-1 do begin
if Pos('patchversion', AnsiLowercase(ss[i]))>0 then begin
s:= ss[i];
Break;
end;
end;
if s='' then Exit;
Delete(S, 1, Pos('=', s));
s:= Trim(S);
If (s<>'1.32.6.0') and (s<>'1.32.5.1') and (s<>'1.32.5.0') and (s<>'1.32.7.0') then begin
MsgBox(ExpandConstant('{cm:gemever} '+s+'. {cm:errorinst}'), mbCriticalError, MB_OK);
Result:= False;
end;
end;
end;
rsg16, как я понял, необходимо проверять наличие 2 файлов в папке установки? Если да, то вот простенький [more=пример.][code]
function NextButtonClick(CurPageID: Integer): Boolean;
begin
Result:= True;
if CurPageID = wpSelectDir then begin
if (fileExists(ExpandConstant('{app}\steam.inf'))) and (fileExists(ExpandConstant('{app}\csgo\pak01_dir.vpk'))) then begin
Result := True;
end
else begin
MsgBox('Файлы не найдены! Дальнейшая установка невозможна!', mbError, MB_OK)
Result:=false
end;
end;
end;[/more]
function NextButtonClick(CurPageID: Integer): Boolean;
begin
Result:= True;
if CurPageID = wpSelectDir then begin
if (fileExists(ExpandConstant('{app}\steam.inf'))) and (fileExists(ExpandConstant('{app}\csgo\pak01_dir.vpk'))) then begin
Result := True;
end
else begin
MsgBox('Файлы не найдены! Дальнейшая установка невозможна!', mbError, MB_OK)
Result:=false
end;
end;
end;[/more]
Всем привет. Начал осваивать этот установщик.
Просмотрел кучу примеров нашел как сделать запоминание папки установки, списка заданий, а как запомнить выбор компонентов не нашел.
И есть ли пример для отображения всплывающего сообщения/картинки при наведении на компонент установки?
Просмотрел кучу примеров нашел как сделать запоминание папки установки, списка заданий, а как запомнить выбор компонентов не нашел.
И есть ли пример для отображения всплывающего сообщения/картинки при наведении на компонент установки?
Привет всем !
Только начал работать с Inno Setup - не могу решить простую задачу.
Нужно подписать сертификатом через kSign файлы, которые будут добавлены в установочный комплект или хотя бы выполнить внешний bat файл до начала создания инсталлятора. Такое вообще возможно ?
P/S: Как подписать сам созданный комплект через SignTool я знаю.
Заранее спасибо !
Только начал работать с Inno Setup - не могу решить простую задачу.
Нужно подписать сертификатом через kSign файлы, которые будут добавлены в установочный комплект или хотя бы выполнить внешний bat файл до начала создания инсталлятора. Такое вообще возможно ?
P/S: Как подписать сам созданный комплект через SignTool я знаю.
Заранее спасибо !
Всем привет
Помогите включить отображение полосы прокрутки в ComponentsList
Вынес его в отдельное окно и после этого пропала полоса прокрутки.
Причем исчезает при использовании ISSkin.
Хотя если использовать скин в обычном установщике без переноса расположения компонент листа полоса прокрутки есть.
Сам скрипт:
http://rghost.ru/54731689
Помогите включить отображение полосы прокрутки в ComponentsList
Вынес его в отдельное окно и после этого пропала полоса прокрутки.
Причем исчезает при использовании ISSkin.
Хотя если использовать скин в обычном установщике без переноса расположения компонент листа полоса прокрутки есть.
Сам скрипт:
http://rghost.ru/54731689
Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
Предыдущая тема: Только инсталлятор
Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.