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

•  TDictionary Custom Sort  1 843

•  Fast Watermark Sources  1 877

•  3D Designer  3 298

•  Sik Screen Capture  2 296

•  Patch Maker  2 473

•  Айболит (remote control)  2 295

•  ListBox Drag & Drop  1 894

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

•  Графические эффекты  2 493

•  Рисование по маске  2 030

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

•  Canvas Drawing  1 591

•  Рисование Луны  1 608

•  Поворот изображения  1 224

•  Рисование стержней  1 276

•  Paint on Shape  910

•  Генератор кроссвордов  1 423

•  Головоломка Paletto  1 106

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

•  Пазл Numbrix  1 028

•  Заборы и коммивояжеры  1 303

•  Игра HIP  866

•  Игра Go (Го)  830

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

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

•  Генератор лабиринта  966

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

•  HEX View  999

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

•  Задача коммивояжера  920

 
скрыть


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

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



Запуск программы



Оформил: DeeCo

{ Open a file or starts a programm (without parameters) }

 procedure OpenFile(FileName: string);
 var
   c: array[0..800] of Char;
 begin
   StrPCopy(c, FileName);
   ShellExecute(Application.Handle, 'open', c, nil, nil, SW_NORMAL);
 end;

 { Starts a programm with commandline parameters }

 procedure OpenProgram(prog, params: string);
 var
   c, p: array[0..800] of Char;
 begin
   StrPCopy(c, prog);
   StrPCopy(p, params);
   ShellExecute(Application.Handle, 'open', c, p, nil, SW_NORMAL);
 end;

 { Starts a program and wait until its terminated: 
  WindowState is of the SW_xxx constants }

 function ExecAndWait(const FileName, Params: string;
   WindowState: Word): Boolean;
 var
   SUInfo: TStartupInfo;
   ProcInfo: TProcessInformation;
   CmdLine: string;
 begin
   { Enclose filename in quotes to take care of 
    long filenames with spaces. }
   CmdLine := '"' + FileName + '"' + Params;
   FillChar(SUInfo, SizeOf(SUInfo), #0);
   with SUInfo do
   begin
     cb := SizeOf(SUInfo);
     dwFlags := STARTF_USESHOWWINDOW;
     wShowWindow := WindowState;
   end;
   Result := CreateProcess(nil, PChar(CmdLine), nil, nil, False,
     CREATE_NEW_CONSOLE or
     NORMAL_PRIORITY_CLASS, nil,
     PChar(ExtractFilePath(FileName)),
     SUInfo, ProcInfo);
   { Wait for it to finish. }
   if Result then
     WaitForSingleObject(ProcInfo.hProcess, INFINITE);
 end;

 { Execute a complete shell command line and waits until terminated. }

 function ExecCmdLineAndWait(const CmdLine: string;
   WindowState: Word): Boolean;
 var
   SUInfo: TStartupInfo;
   ProcInfo: TProcessInformation;
 begin
   { Enclose filename in quotes to take care of 
    long filenames with spaces. }
   FillChar(SUInfo, SizeOf(SUInfo), #0);
   with SUInfo do
   begin
     cb := SizeOf(SUInfo);
     dwFlags := STARTF_USESHOWWINDOW;
     wShowWindow := WindowState;
   end;
   Result := CreateProcess(nil, PChar(CmdLine), nil, nil, False,
     CREATE_NEW_CONSOLE or
     NORMAL_PRIORITY_CLASS, nil,
     nil {PChar(ExtractFilePath(Filename))},
     SUInfo, ProcInfo);
   { Wait for it to finish. }
   if Result then
     WaitForSingleObject(ProcInfo.hProcess, INFINITE);
 end;

 { Execute a complete shell command line without waiting. }

 function OpenCmdLine(const CmdLine: string;
   WindowState: Word): Boolean;
 var
   SUInfo: TStartupInfo;
   ProcInfo: TProcessInformation;
 begin
   { Enclose filename in quotes to take care of 
    long filenames with spaces. }
   FillChar(SUInfo, SizeOf(SUInfo), #0);
   with SUInfo do
   begin
     cb := SizeOf(SUInfo);
     dwFlags := STARTF_USESHOWWINDOW;
     wShowWindow := WindowState;
   end;
   Result := CreateProcess(nil, PChar(CmdLine), nil, nil, False,
     CREATE_NEW_CONSOLE or
     NORMAL_PRIORITY_CLASS, nil,
     nil {PChar(ExtractFilePath(Filename))},
     SUInfo, ProcInfo);
 end;







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

Группа ВКонтакте   Facebook   Ссылка на Twitter   Ссылка на Telegram