![]() |
Re: Windows XP beenden
Merken wird man´s nicht, allerdings ziehe ich "meinen" Weg (fairerweise muss ich sagen, dass ich ihn von einem anderen quasi abgeschrieben habe) vor.
|
Re: Windows XP beenden
hm hab das nun eingebaut, nur schreibt er mir hier:
function TForm1.ExitWin(flag:word): Boolean; var vi : TOSVersionInfo; hToken : THandle; .... folgende Error-Meldung: Function needs result type danke Snooze |
Re: Windows XP beenden
Bist du sicher, dass du das
Delphi-Quellcode:
angegeben hast? Der Fehler erscheint bei mir nämlich nur, wenn ich folgendes versuche:
: boolean;
Delphi-Quellcode:
Du siehst (evtl.), dass das Rückgabeergebnis der Funktion fehlt.
function Irgendwas;
Noch besser wär´s allerdings, wenn du die Funktion nicht von der Form abhängig machst:
Code:
Damit lässt sie sich bspw. in eine separate Unit auslagern und auch für andere Projekte verwenden. Darum verzichtet meine Prozedur ja auch auf die Angabe von irgendwelchen Forms, weil sie streng genommen ohnehin aus einem nonVCL-Projekt stammt.
[b]function[/b] [color=red][s]TForm1.[/s][/color]ExitWin(flag:word): Boolean;
|
Re: Windows XP beenden
ah toll jetzt funzt es :-D
zwar war die Lösung nicht die Entfernung von Tform1, sondern ich habe nicht beachtet, dass bei mir diese Form TForm3 heißt. lasse ich das ganz weg, dann bekomme ich ne neue Error-Meldung. Aber danke an alle, die mir bei diesem Prob so geholfen haben :dp: |
Re: Windows XP beenden
Also, ich hab da meine Probleme mit. Hab auch WinXP und bei mir fährt und fährt der einfach nicht runter, obwohl ich alles eingebaut hab... Da kommt auch keine Fehlermeldung, gar nix.
Hier mal etwas von meinem Quelli:
Delphi-Quellcode:
Wie man hier erkennen kann, soll es eine Art "Stoppuhr" werden, die nach ein paar Sekunden den Rechner hinunterfährt. Ich hab auch den ganzen "function Exitwin" kram drinne und alles. Ich kann nun das Programm starten, der Countdown wird wunderbar angezählt und wenn er bei 0 angekommen ist, passiert nichts :(
procedure TForm1.Timer1Timer(Sender: TObject);
begin //time = integer-variable. Im OnCreate des Forms auf 1 gesetzt. time := time + 1; if time = 12 then ExitWindowsEx(EWX_SHUTDOWN, 0); if time = 2 then Label2.Caption := '9'; if time = 3 then Label2.Caption := '8'; if time = 4 then Label2.Caption := '7'; if time = 5 then Label2.Caption := '6'; if time = 6 then Label2.Caption := '5'; if time = 7 then Label2.Caption := '4'; if time = 8 then Label2.Caption := '3'; if time = 9 then Label2.Caption := '2'; if time = 10 then label2.Caption := '1'; if time = 11 then label2.Caption := '0'; end; |
Re: Windows XP beenden
1. Schonmal was von Case of gehört?
2. Hast du dir die Privilegien gesichert?? mfg phlux |
Re: Windows XP beenden
[OT="Sorry, aber ich konnte nicht anders ..."]
Zitat:
(was ist, wenn du z.B. einen Countdown von ein einer Minute machen möchtest statt 10 sek. ?) Ich schlage vor, den obigen Quellcode mit folgendem zu ersetzten:
Delphi-Quellcode:
[/OT]
procedure TForm1.Timer1Timer(Sender: TObject);
begin dec (time); Label1.Caption := time; if (Time = 0) then begin Timer1.Enabled := false; WasMachen; end; end; |
Re: Windows XP beenden
@jfheins: hab ich auch schon überlegt, nur ist time eine integer-variable und damit kann ich dann nichtmehr so gut aufrechnen :roll:
und um 'ne zweite Variable, die vllt. vom typ string ist, zu erstellen, bin ich zu faul. Leiber das ganze 10 mal kopieren und die Wert ändern... fertig :mrgreen: :roll: @phlux: Da fällt mir nur der smiley hier zu ein: :wiejetzt: |
Re: Windows XP beenden
[NST] (NST = New SubTopic :mrgreen: )
Ich weis zwar nicht, was du meinst, aber das muss natürlich so sein:
Delphi-Quellcode:
Time ist eine globale Integervariable ...
procedure TForm1.Timer1Timer(Sender: TObject);
begin dec (Time); Label1.Caption := IntToStr (Time); if (Time = 0) then begin Timer1.Enabled := FALSE; WasMachen; end; end; Man beachte das IntToStr () ... [/NST] |
Re: Windows XP beenden
Das gehört wohl kaum noch zur ursprünglichen Frage. Ich würde darum bitten einen neuen Thread anzufangen. Wer ein Problem mit dem Timer hat, wird wohl kaum diesen Thread öffnen. ;)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:53 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz