Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 3]

Закрытая тема
Настройки темы
Скрипты Inno Setup. Помощь и советы [часть 3]

Ветеран


Сообщения: 1133
Благодарности: 581


Конфигурация

Профиль | Отправить PM | Цитировать


Изменения
Автор: Serega
Дата: 13-08-2011
Вложения
Тип файла: 7z Inno Setup [все вопросы] часть 1.7z
(1.34 Mb, 908 просмотров)
Тип файла: 7z Inno Setup [все вопросы] часть 2.7z
(3.12 Mb, 806 просмотров)
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме
Inno Setup. Прочие вопросы.


Показать/скрыть: Справка, руководство, примеры:
Показать/скрыть: Ссылки на примеры скриптов:
Показать/скрыть: Дополнительные программы для Inno Setup:
  • ISTool - неплохой редактор скриптов Inno Setup.
    Последняя версия: 5.3.0.1 [29.09.2009] - Скачать | зеркало;

  • Inno Script Generator - ещё один редактор скриптов Inno Setup. Обладает некоторыми полезными функциями, которых нет ни у самого Inno Setup, ни у ISTool.
    Последняя версия: 1.0.3.1 [23.03.2008] - Скачать | зеркало | зеркало на русифицированную программу;
    Примечание: Родной сайт www.hisoft2000.de более недоступен, поэтому здесь расположены сторонние ссылки.

  • Inno Setup Form Designer - редактор страниц Inno Setup, можно создавать свои страницы.
    Последняя версия: 2.0.8 [12.11.2006] - Скачать;
    Примечание: Родной сайт http://isfd.kaju74.de/index.php?isfd более недоступен, поэтому здесь расположены сторонние ссылки.

  • Inno Setup GameScript Generator - программа генерирует скрипты для Inno Setup . С помощью GameScript Generator и Inno Setup вы сможете быстро создать простенький инсталляционный пакет для любой игры. В инсталлятор можно встроить музыку, слайдшоу и фоновый рисунок. Для специалистов созданный скрипт, возможно, будет неплохой заготовкой для дальнейшей модернизации;

  • ISSkin - Программа для создания и добавления в инсталлятор скинов. Инструкция.
    Последняя версия: 3.0.0.0 [19.01.2010] - Скачать;

  • InnoSetup Script Joiner - Программа для объединения нескольких скриптов InnoSetup в один;

  • Converter - Программа конвертирует reg-файлы в формат *.iss (формат скриптов Inno Setup).
    Последняя версия: 0.1.4 [13.03.2010] - Скачать;


Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах:
Inno Setup [все вопросы] часть 1
Inno Setup [все вопросы] часть 2

-------
Книги нужны, чтобы напоминать человеку, что его оригинальные мысли не так уж новы... Авраам Линкольн.


Отправлено: 00:28, 04-11-2010

 

Аватара для Gnom_aka_Lexander

Ветеран


Сообщения: 978
Благодарности: 564

Профиль | Сайт | Отправить PM | Цитировать


EvilAlex, Держи, тока консольное окошко на распаковке будет, тут уж звиняй, мож кто подскажет, как на прогрессбаре распаковку показать, вместо консоли.

-------
Я люблю помогать. Но не путайте: "Помогите мне" и "Сделайте за меня" - это совершенно разные понятия.


Последний раз редактировалось Gnom_aka_Lexander, 12-02-2020 в 14:56.

Это сообщение посчитали полезным следующие участники:

Отправлено: 00:07, 09-05-2011 | #1561



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 14
Благодарности: 3

Профиль | Отправить PM | Цитировать


Всех с Праздником!
Подскажите, как в бинарном файле произвести поиск значений (допустим "C7 46 04 00 00 18 00") и определить смещение, если такие значения есть.
Пример поиска строковых данных есть
читать дальше »
Код: Выделить весь код
procedure ReadFromFile();
var
  FS: TFileStream;
  str: string;
  i: integer;
begin
  str:= StringOfChar(' ', 10); 
  FS := TFileStream.Create(ExpandConstant('{src}\test.bin'), fmOpenReadWrite);
  try
    FS.Seek(1,soFromBeginning); 
    FS.ReadBuffer(str, 10); 
    MsgBox(str, mbInformation, MB_OK); 
  finally
    FS.Free; 
  end;
end;
а вот как быть с поиском шестнадцатеричных...

Даже такие варианты пробовал
читать дальше »
Код: Выделить весь код
procedure ReadFromFile2();
var
  FS: TFileStream;
  strd,str: string;
  shag: integer;
 begin
  str:= StringOfChar(' ',6);
  shag:= 740349
  FS := TFileStream.Create(ExpandConstant('{src}\test.bin'), fmOpenReadWrite);
  try repeat
    FS.Seek(shag,soFromBeginning);
    FS.ReadBuffer(str, 6);
    strd:= IntToStr(Ord(str[1]))+IntToStr(Ord(str[2]))+IntToStr(Ord(str[3]))+IntToStr(Ord(str[4]))+IntToStr(Ord(str[5]))+IntToStr(Ord(str[6]))
    if strd = '1997040024' then MsgBox('bingo', mbInformation, MB_OK); //нашли значение и определили смещение
    shag:= shag + 1
    until shag = 741353
  finally
    FS.Free;
  end;
end;
Конечно же это извращение... Так кто подскажет как нормально сделать?...

Последний раз редактировалось solvador, 09-05-2011 в 14:20. Причина: исправил


Отправлено: 13:55, 09-05-2011 | #1562


Аватара для R.i.m.s.k.y.

Ветеран


Сообщения: 1640
Благодарности: 536

Профиль | Отправить PM | Цитировать


нашел в своих примерах скриптов, может поможет
Код: Выделить весь код
[Setup]
AppName=My Program
AppVerName=My Program version 1.5
DefaultDirName={pf}\My Program

[Files]
Source: compiler:Examples\MyProg.exe; DestDir: {app}

[*C*ode]
procedure WriteToFile();
var
  FS: TFileStream;
  str: string;
  i: integer;
begin
  str:= '';
  for i:= 0 to 10 do str:= str + IntToStr(Random(10)); // сгенерили рандомную строку
  FS := TFileStream.Create(ExpandConstant('{app}\MyProg.exe'), fmOpenReadWrite); // открыли файл
  try
    FS.Seek(1572,soFromBeginning); // установили курсор по смещению 1572 от начала файла
    FS.WriteBuffer(str, Length(str)); // записали рандомную строку в позицию курсора
  finally
    FS.Free; // освободили файл
  end;
end;

procedure ReadFromFile();
var
  FS: TFileStream;
  str: string;
  i: integer;
begin
  str:= StringOfChar(' ', 10); // подготовили буфер для чтения длиной 10 байт
  FS := TFileStream.Create(ExpandConstant('{app}\MyProg.exe'), fmOpenReadWrite); // открыли файл
  try
    FS.Seek(1572,soFromBeginning); // установили курсор по смещению 1572 от начала файла
    FS.ReadBuffer(str, Length(str)); // считали в буфер 10 байт от позиции курсора
    MsgBox(str, mbInformation, MB_OK); // вывели сообщение с тем, что считали
  finally
    FS.Free; // освободили файл
  end;
end;

procedure ReadFromFileByte();
var
  FS: TFileStream;
  str: string;
  i: integer;
 begin
  str:= StringOfChar(' ',1);
  FS := TFileStream.Create(ExpandConstant('{src}\struct.dat'), fmOpenReadWrite);
  try
    FS.Seek(21,soFromBeginning);
    FS.ReadBuffer(str, 1);
    i:= Ord(str[1]);
    MsgBox(IntToStr(i), mbInformation, MB_OK);
  finally
    FS.Free;
  end;
end;

procedure DeinitializeSetup();
begin
  ReadFromFile(); // прочитали строку из файла
  WriteToFile(); // записали строку в файл
  ReadFromFile(); // опять прочитали
end;

-------
Хороший установщик тот, которого не замечаешь
Оформление в инно пустая трата времени: толку мало, головняка много, а ошибок истчо больше!

Это сообщение посчитали полезным следующие участники:

Отправлено: 14:10, 09-05-2011 | #1563


Новый участник


Сообщения: 14
Благодарности: 3

Профиль | Отправить PM | Цитировать


R.i.m.s.k.y.,
В этом примере тоже ищется строка. А надо чтобы искались hex значения.
Таких примеров я не встречал.

А может есть сторонние утилиты, работающие с бинарными файлами через командную строку.

ЗЫ за пример Спасибо, но он у меня есть. И ничего толкового я из него извлечь не смог.

Отправлено: 14:16, 09-05-2011 | #1564


Ветеран


Сообщения: 510
Благодарности: 51

Профиль | Отправить PM | Цитировать


Проблема с фриарком когда делаю скрипт выдаёт ошибку

Отправлено: 15:29, 09-05-2011 | #1565


Пользователь


Сообщения: 62
Благодарности: 19

Профиль | Отправить PM | Цитировать


insombia, ну переменная не определена, что тут непонятного ?
мб при объединении скриптов в var добавить её забыли. иногда ошибки есть из-за отсутствия ; после предыдущей операции в коде, я так понимаю, это из-за расширенного компилятора эти ошибки бывают.

Отправлено: 18:19, 09-05-2011 | #1566


Ветеран


Сообщения: 510
Благодарности: 51

Профиль | Отправить PM | Цитировать


murlakatamenka как сделать чтобы она определилась?

Отправлено: 20:51, 09-05-2011 | #1567


Пользователь


Сообщения: 62
Благодарности: 19

Профиль | Отправить PM | Цитировать


вернее было сказать, что она не объявлена
В секции [code] после var написать FilenameLabel: TLabel;

Отправлено: 23:03, 09-05-2011 | #1568


Новый участник


Сообщения: 12
Благодарности: 2

Профиль | Отправить PM | Цитировать


Цитата Лександер:
slysoft, Кинь файлы, ща соединю тебе »
Лександер вот файлы http://rghost.ru/5737321, раньше кинуть не получилось, заранее тебе спасибо!!!

Последний раз редактировалось slysoft, 10-05-2011 в 00:09.


Отправлено: 23:55, 09-05-2011 | #1569


Аватара для Gnom_aka_Lexander

Ветеран


Сообщения: 978
Благодарности: 564

Профиль | Сайт | Отправить PM | Цитировать


slysoft, забирай, но все это можно вообще двумя строчками сделать, а кнопки и цвета поменять в скине - гораздо корректнее будет работать.

А вот мой вариант - тока код намного короче, и работа элементов корректнее Я тебе советую лучше им воспользоваться

-------
Я люблю помогать. Но не путайте: "Помогите мне" и "Сделайте за меня" - это совершенно разные понятия.


Последний раз редактировалось Gnom_aka_Lexander, 10-05-2011 в 11:57.

Это сообщение посчитали полезным следующие участники:

Отправлено: 11:02, 10-05-2011 | #1570



Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 3]

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Утилиты - [addon] Inno Setup CrOsP Наборы обновлений для Windows XP/2003/Windows 7 33 11-05-2011 16:03
[архив] Скрипты Inno Setup. Помощь и советы [часть 2] Serega Автоматическая установка приложений 2651 08-11-2010 18:34
Inno Setup 5.3.6 OSZone Software Новости программного обеспечения 0 15-11-2009 17:30
Скрипты Inno Setup Compiler QAZAK Автоматическая установка приложений 7 15-01-2007 17:59
Inno Setup tradeukraine Вебмастеру 3 13-06-2006 20:39




 
Переход