unit USteuer;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Spin, UBotschaften,TlHelp32;
type
Ttf_steuer =
class(TForm)
Btn_starten: TButton;
Btn_Maximieren: TButton;
Btn_Minimieren: TButton;
Btn_Button_druecken: TButton;
Btn_schliessen: TButton;
Btn_wiederherstellen: TButton;
rg_nachricht_steuer: TRadioGroup;
LHandle: TLabel;
LBHandle: TLabel;
LRGHandle: TLabel;
procedure rg_nachricht_steuerClick(Sender: TObject);
procedure Btn_wiederherstellenClick(Sender: TObject);
procedure Btn_Button_drueckenClick(Sender: TObject);
procedure Btn_MinimierenClick(Sender: TObject);
procedure FormClose(Sender: TObject;
var Action: TCloseAction);
procedure Btn_schliessenClick(Sender: TObject);
procedure Btn_MaximierenClick(Sender: TObject);
procedure Btn_startenClick(Sender: TObject);
private
ParentHandle : HWND;
ButtonHandle : HWND;
RGHandle : HWND;
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
var
tf_steuer: Ttf_steuer;
implementation
{$R *.dfm}
procedure Ttf_steuer.Btn_startenClick(Sender: TObject);
var
StartupInfo: TStartupinfo;
ProcessInfo: TProcessInformation;
begin
//FUNKTIONIERT!!
FillChar(Startupinfo,Sizeof(TStartupinfo),0);
Startupinfo.cb:=Sizeof(TStartupInfo);
if not CreateProcess(
nil,'
Empfang.exe',
nil,
nil,false,normal_priority_class,
nil,
nil, Startupinfo,ProcessInfo)
then
ShowMessage('
Anwendung konnte nicht gestartet werden');
end;
procedure Ttf_steuer.Btn_MaximierenClick(Sender: TObject);
begin
//FUNKTIONIERT!!
ParentHandle:=FindWindow(
nil,'
Empfang');
LHandle.Caption:=IntToStr(ParentHandle);
//Maximieren der Zweiten AW
SendMessage(ParentHandle, WM_SYSCOMMAND, SC_MAXIMIZE, 0);
end;
procedure Ttf_steuer.Btn_schliessenClick(Sender: TObject);
begin
//FUNKTIONIERT!!
ParentHandle:=FindWindow(
nil,'
Empfang');
LHandle.Caption:=IntToStr(ParentHandle);
SendMessage(ParentHandle,WM_SYSCOMMAND,SC_CLOSE,0);
end;
procedure Ttf_steuer.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Btn_schliessen.Click;
end;
procedure Ttf_steuer.Btn_MinimierenClick(Sender: TObject);
begin
//FUNKTIONIERT!!
ParentHandle:=FindWindow(
nil,'
Empfang');
LHandle.Caption:=IntToStr(ParentHandle);
//Minimieren der zweiten AW
SendMessage(ParentHandle, WM_SYSCOMMAND, SC_MINIMIZE, 0);
end;
procedure Ttf_steuer.Btn_Button_drueckenClick(Sender: TObject);
begin
//FUNKTIONIERT!!
ParentHandle:=FindWindow(
nil,'
Empfang');
ButtonHandle:=FindWindowEx(ParentHandle, 0,'
TButton',
nil);
LBHandle.Caption:=IntToStr(ButtonHandle);
//Button der zweiten AW betätigen
SendMessage(ButtonHandle, BM_CLICK, 0, 0);
end;
procedure Ttf_steuer.Btn_wiederherstellenClick(Sender: TObject);
begin
ParentHandle:=FindWindow(
nil,'
Empfang');
LHandle.Caption:=IntToStr(ParentHandle);
//Wiederherstellen der zweiten AW
ShowWindow(ParentHandle,1);
end;
procedure Ttf_steuer.rg_nachricht_steuerClick(Sender: TObject);
begin
ParentHandle:=FindWindow(
nil,'
Empfang');
PostMessage(HWND_BROADCAST,WM_SELECTRADIOBUTTON,rg_nachricht_steuer.ItemIndex,0);
end;
end.