Thema: Delphi Shutdown Programm

Einzelnen Beitrag anzeigen

paperboy

Registriert seit: 10. Jun 2009
71 Beiträge
 
RAD-Studio 2009 Arc
 
#1

Shutdown Programm

  Alt 10. Jun 2009, 07:11
hallo zusammen,

ich bin ein delphi programmierer in den kinderschuhen und hab nach ein paar knobelstunden nun mit mein erstes programm fertig.
zumindest dachte ich das. denn in der IDE läuft das programm einwandfrei genau so wie ich es mir vorgestellt habe.
doch leider ist nach dem compilieren der exe der wurm drin und ich hab wirklich keine ahnung woran das liegen kann.
mein programm startet eine prozedur als thread. diese soll den pc herunterfahren wenn eine vorher definierte zeit mit der aktuellen
systemzeit übereinstimmt.
hier mal der code der ausserhalb der ide probleme bereitet:

Delphi-Quellcode:
procedure ThreadShutDown.Execute;
var
SDPfad : String;
SystemPfad : Array[0..MAX_PATH] of Char;
begin
  while istZeit = False do
  begin
    if terminated then exit;
    if SDZeit = Time then istZeit := True;
  end;
GetSystemDirectory(SystemPfad, sizeof(SystemPfad));
SDPfad := SystemPfad + '\Shutdown.exe';
ShellExecute(Application.Handle,'open',PChar(SDPfad),PChar('-s -t 1'),PChar(ExtractFilePath(SDPfad)),SC_DEFAULT);
end;
wie gesagt das klappt hervorragend solange ich das programm von delphi aus starte. als separate exe streikt es.
ich habe nach der while schleife mal eine messagebox eingbaut und siehe da sie wird nicht angezeigt.. die schleife wird jedoch ausgeführt
(ebenfalls mit MessageBox getestet) nur scheint ausserhalb der IDE die variable "istZeit" nie auf true gesetzt zu werden?!

ich hoffe jemand weis hier rat denn es wurmt mich doch ganz schön das mein erster versuch daran scheiter das das programm ausserhalb von delphi
nicht rennen will
ich benutze übrigens Vista 32-bit und delphi 2009.

lg paperboy
  Mit Zitat antworten Zitat