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

•  DeLiKaTeS Tetris (Тетрис)  3 788

•  TDictionary Custom Sort  5 902

•  Fast Watermark Sources  5 703

•  3D Designer  8 478

•  Sik Screen Capture  6 037

•  Patch Maker  6 481

•  Айболит (remote control)  6 474

•  ListBox Drag & Drop  5 338

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

•  Графические эффекты  6 677

•  Рисование по маске  5 801

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

•  Canvas Drawing  5 236

•  Рисование Луны  4 959

•  Поворот изображения  4 505

•  Рисование стержней  3 187

•  Paint on Shape  2 434

•  Генератор кроссвордов  3 308

•  Головоломка Paletto  2 619

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

•  Пазл Numbrix  2 249

•  Заборы и коммивояжеры  2 909

•  Игра HIP  1 879

•  Игра Go (Го)  1 795

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

•  Программа укладки плитки  1 860

•  Генератор лабиринта  2 296

•  Проверка числового ввода  1 985

•  HEX View  2 294

•  Физический маятник  1 958

 
скрыть

  Форум  

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

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



Delphi Sources

Как заставить запускаться из определенной папки



Автор: Vit

Приведенный пример кода проверяет из какой папки запущена программа, если она запущена не из корневой - то переносит себя в корень и запускается оттуда

program Project1;
uses
  Forms, classes, windows, Sysutils, ShellApi,
  Unit1 in 'Unit1.pas' {Form1};
{$R *.RES}
var
  f: textFile;
  FileName: string;
begin
  if paramstr(1) <> '/runasis' then
  begin
    CopyFile(PChar(Paramstr(0)), PChar('c:\' + extractFilename(paramstr(0))),
      True);
    shellexecute(0, 'Open', PChar(extractFilename(paramstr(0))), '/runasis',
      'c:\', sw_restore);
    FileName := changefileext(paramstr(0), '.bat');
    assignFile(f, FileName);
    rewrite(f);
    writeln(f, ':1');
    writeln(f, format('Erase "%s"', [paramstr(0)]));
    writeln(f, format('If exist "%s" Goto 1', [paramstr(0)]));
    writeln(f, format('Erase "%s"', [FileName]));
    closefile(f);
    ShellExecute(0, 'Open', PChar(FileName), nil, nil, sw_hide);
  end
  else
  begin
    Application.Initialize;
    Application.CreateForm(TForm1, Form1);
    Application.Run;
  end;
end.







Copyright © 2004-2025 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

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