Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Programm nach x Minuten beenden (https://www.delphipraxis.net/113139-programm-nach-x-minuten-beenden.html)

Delphi08 3. Mai 2008 10:02


Programm nach x Minuten beenden
 
Hey!
Ich suche eine Möglichkeit mein Programm nach 15 Minuten zu beenden.
Weiß denn da einer weiter?
Ist es auch möglich ein Programm, dass ich mit meinem gestartet hab dann ebenfalls mit zu beenden?!

Danke!

PS: Blutiger Anfänger :lol:

mkinzler 3. Mai 2008 10:04

Re: Programm nach x Minuten beenden
 
Sollte mit einem Timer gehen.
Wenn du die PID des gestateten Programmes kennst

Delphi08 3. Mai 2008 10:53

Re: Programm nach x Minuten beenden
 
könntest du dies vielleicht genauer erklären :)

Hab jetzt mal in google gesucht, aber nicht passendes gefunden. :(

mkinzler 3. Mai 2008 10:59

Re: Programm nach x Minuten beenden
 
Welchen Teil meinst du?

Delphi08 3. Mai 2008 11:12

Re: Programm nach x Minuten beenden
 
Den Teil mit dem Timer.
Also ich muss einen erstellen, aber wie sieht dann die "Funktion" aus?
Also der Quellcode.

mkinzler 3. Mai 2008 11:16

Re: Programm nach x Minuten beenden
 
Du legst dir einen Timer auf die Form stellst die Zeit auf 15 Minuten ( 15*60*1000) und fügst in .OnTimer den Code zum Beenden ein.

marabu 3. Mai 2008 11:48

Re: Programm nach x Minuten beenden
 
Hi,

geht es um eine Uhrzeit (15 Minuten später) oder soll das Programm maximal 15 Minuten (crippleware) benutzbar sein?

Da in meinen Programmen fast immer ApplicationEvents bearbeitet werden, brauche ich keinen TTimer:

Delphi-Quellcode:
type
  TDemoForm = class(TForm)
    ApplicationEvents: TApplicationEvents;
    procedure ApplicationEventsActivate(Sender: TObject);
    procedure ApplicationEventsDeactivate(Sender: TObject);
    procedure ApplicationEventsIdle(Sender: TObject; var Done: Boolean);
  private
    Timer: TDateTime;
  end;

var
  DemoForm: TDemoForm;

implementation

{$R *.dfm}

uses
  DateUtils;

procedure TDemoForm.ApplicationEventsActivate(Sender: TObject);
begin
  Timer := Now - Timer;
end;

procedure TDemoForm.ApplicationEventsDeactivate(Sender: TObject);
begin
  Timer := Now - Timer;
end;

procedure TDemoForm.ApplicationEventsIdle(Sender: TObject;
  var Done: Boolean);
begin
  Done := Application.Active and ((Now - Timer) >= (15 * OneMinute));
  if Done then
    Close;
end;
Freundliche Grüße

Delphi08 3. Mai 2008 12:20

Re: Programm nach x Minuten beenden
 
@mkinzler: Dank dir ;)

Ja das Programm soll einfach nur 15 min etwas anzeigen und danach soll es sich beenden.

jetzt muss ich nur noch wissen wie ich zb. Firefox mit beende, diesen hab ich aus meinem Programm raus mitgestartet.

DeddyH 3. Mai 2008 12:25

Re: Programm nach x Minuten beenden
 
Such mal nach Hier im Forum suchenExecAndWait.

Delphi08 3. Mai 2008 17:29

Re: Programm nach x Minuten beenden
 
Hab in diesem Thread hier folgendes gefunden:

Delphi-Quellcode:
procedure CloseProcessWindows(const AProcessID: DWord);
  function CloseWindowsCB(AHandle :HWND; AProcessID: DWord): LongBool; stdcall;
  var
    myProcessID: DWord;
  begin
    GetWindowThreadProcessId(AHandle, @myProcessID);
    // compare process id of AHandle against AProcessID
    if myProcessID=AProcessID then
      PostMessage(AHandle, WM_CLOSE, 0, 0);

    Result:= True;
  end;
begin
  EnumWindows(@CloseWindowsCB, AProcessID);
end;
weiß aber leider damit kaum was anzufangen... -> armer Anfänger :(


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:28 Uhr.
Seite 1 von 4  1 23     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz