Недавно добавленные исходники

•  Animation Loaders  728

•  DeLiKaTeS Tetris (Тетрис)  5 719

•  TDictionary Custom Sort  7 678

•  Fast Watermark Sources  7 361

•  3D Designer  10 575

•  Sik Screen Capture  7 890

•  Patch Maker  8 116

•  Айболит (remote control)  8 170

•  ListBox Drag & Drop  6 966

•  Доска для игры Реверси  100 230

•  Графические эффекты  8 242

•  Рисование по маске  7 625

•  Перетаскивание изображений  6 227

•  Canvas Drawing  6 593

•  Рисование Луны  6 523

•  Поворот изображения  5 689

•  Рисование стержней  4 618

•  Paint on Shape  3 325

•  Генератор кроссвордов  4 302

•  Головоломка Paletto  3 447

•  Теорема Монжа об окружностях  4 267

•  Пазл Numbrix  2 763

•  Заборы и коммивояжеры  3 672

•  Игра HIP  2 480

•  Игра Go (Го)  2 465

•  Симулятор лифта  2 868

•  Программа укладки плитки  2 302

•  Генератор лабиринта  3 031

•  Проверка числового ввода  2 529

•  HEX View  2 939

 
скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Delphi Sources

Написать очень маленький инсталлятор



Я тебя инстальнул - я тебя и убью!

Мне понравился следующий вариант: главное приложение само выполняет функции инсталлятора. Первоначально файл называется Setup.exe. При запуске под этим именем приложение устанавливает себя, после установки программа переименовывает себя и перестает быть инсталлятором.


Application.Initialize;
if UpperCase(ExtractFileName(Application.ExeName))='SETUP.EXE' then
  // форма инсталлятора
  Application.CreateForm(TSetupForm, SetupForm)
else
  // форма основной программы
  Application.CreateForm(TMainForm, MainForm);
Application.Run;

Вполне очевидно, что вместо переименования можно запускать программу с различными ключами, например /INSTALL и /UNINSTALL. Я очень часто пользуюсь таким приемом, особенно в тех случаях, когда проект состоит из одного файла








Copyright © 2004-2026 "Delphi Sources" by «SiteAnalyzer». Delphi World FAQ

Группа ВКонтакте