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

•  TDictionary Custom Sort  522

•  Fast Watermark Sources  884

•  3D Designer  1 816

•  Sik Screen Capture  1 461

•  Patch Maker  1 470

•  Айболит (remote control)  1 393

•  ListBox Drag & Drop  1 168

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

•  Графические эффекты  1 343

•  Рисование по маске  1 283

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

•  Canvas Drawing  965

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

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

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

•  Paint on Shape  491

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

•  Головоломка Paletto  662

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

•  Пазл Numbrix  611

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

•  Игра HIP  552

•  Игра Go (Го)  525

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

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

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

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

•  HEX View  597

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

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

 
скрыть


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

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



Добавить EXE файл в своё приложение и запустить его



1. Start notepad and create a .rc-file that looks like this:
Starte Notepad und erstelle ein .rc-file, das etwa so aussieht:


TESTFILE EXEFILE C:\Windows\Notepad.exe 

(Make sure that the Path to your Exe-File is correct!)
(Stelle sicher, dass der Pfad zur Exe-Datei korrekt ist!)

2. Save it as myres.rc
Speichere es als myres.rc

3. Compile the file with brcc32.exe
(in your Delphi-bin directory) to get myres.res
Kompiliere die Datei mit brcc32.exe
(Im Delphi-bin Verzeichnis) um die Datei myres.res zu erhalten.

4. Copy myres.res to your Project directory.
Kopiere myres.res in das entsprechende Projekt-Verzeichnis.

5. In your unit write the following:
In der unit, schreibe etwa das folgende:


var 
  Form1: TForm1; 
  NOTEPAD_FILE: string; 

implementation 

{$R *.DFM} 
{$R MYRES.RES} 

function GetTempDir: string; 
var 
  Buffer: array[0..MAX_PATH] of Char; 
begin 
  GetTempPath(SizeOf(Buffer) - 1, Buffer); 
  Result := StrPas(Buffer); 
end; 

// Extract the Resource 
function ExtractRes(ResType, ResName, ResNewName: string): Boolean; 
var 
  Res: TResourceStream; 
begin 
  Result := False; 
  Res := TResourceStream.Create(Hinstance, Resname, PChar(ResType)); 
  try 
    Res.SavetoFile(ResNewName); 
    Result := True; 
  finally 
    Res.Free; 
  end; 
end; 

// Execute the file 
procedure ShellExecute_AndWait(FileName: string); 
var 
  exInfo: TShellExecuteInfo; 
  Ph: DWORD; 
begin 
  FillChar(exInfo, SizeOf(exInfo), 0); 
  with exInfo do 
  begin 
    cbSize := SizeOf(exInfo); 
    fMask := SEE_MASK_NOCLOSEPROCESS or SEE_MASK_FLAG_DDEWAIT; 
    Wnd := GetActiveWindow(); 
    ExInfo.lpVerb := 'open'; 
    lpFile := PChar(FileName); 
    nShow := SW_SHOWNORMAL; 
  end; 
  if ShellExecuteEx(@exInfo) then 
  begin 
    Ph := exInfo.HProcess; 
  end 
  else 
  begin 
    ShowMessage(SysErrorMessage(GetLastError)); 
    Exit; 
  end; 
  while WaitForSingleObject(ExInfo.hProcess, 50) <> WAIT_OBJECT_0 do 
    Application.ProcessMessages; 
  CloseHandle(Ph); 
end; 

// To Test it 
procedure TForm1.Button1Click(Sender: TObject); 
begin 
  if ExtractRes('EXEFILE', 'TESTFILE', NOTEPAD_FILE) then 
    if FileExists(NOTEPAD_FILE) then 
    begin 
      ShellExecute_AndWait(NOTEPAD_FILE); 
      ShowMessage('Notepad finished!'); 
      DeleteFile(NOTEPAD_FILE); 
    end; 
end; 

procedure TForm1.FormCreate(Sender: TObject); 
begin 
  NOTEPAD_FILE := GetTempDir + 'Notepad_FROM_RES.EXE'; 
end;





Похожие по теме исходники

Erase self EXE

EXE/PE Properties

Binary Search Images in EXE

HWnd2EXE

 

Exec and Wait

Add Code to EXE

Executor

ExeFog (сжатие EXE)

 

PE EXE Coder

Чтение PSD файлов

Шифратор файлов

Разбиение файла на части

 

Поиск файлов

FileMan (менеджер файлов)

Поиск открытых файлов

Текст внутри файла

 

Консольное DOS приложение

A Star (нахождение кратчайшего пути)

Нахождение кратчайшего пути

Облако тегов

 

Дейкстра: поиск кратчайшего пути




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

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