Autor Beitrag
Sn00py
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Di 17.09.02 17:52 
Hallo leutz!

Ich habe seit kurzen angefangen mit Delphi herumzuwurschteln und es würde mich wirklich mal interresieren wie ich Delphi den PC herunterfahren lasse wenn ich es will! Z.B nach einer bestimmten zeit!
Ich denke das das nicht so schwer ist würde mich aber frewuen wenn mir we helfen könnte!

Danke allen dir mir antworten!
euer Sn00py
LCS
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1305
Erhaltene Danke: 1

WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
BeitragVerfasst: Di 17.09.02 18:36 
Guckst du hier

Gruss Lothar

_________________
Der BH ist für die Brust, der Plan ist für'n Ar...
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Di 17.09.02 18:37 
Was für ein Betriebssystem?

Und such mal hier im Forum nach ExitWindiwsEx. Oder kuck im EDH auf www.delphi-treff.de .
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Di 17.09.02 20:26 
Ist beim Tipp im SwissDelphiCenter alles berücksichtigt, Luckie. - Aber ich weiß, dass Pit hier bei AUQ.de wohl die für den neuen EDH geplante Version gepostet hat.
Tino
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Veteran
Beiträge: 9839
Erhaltene Danke: 45

Windows 8.1
Delphi XE4
BeitragVerfasst: Di 17.09.02 20:28 
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Di 17.09.02 20:35 
Tino hat folgendes geschrieben:
Brauchbare Antworten findest Du auch hier bei AUQ.de:

Erschreckend ist eher, dass es doch mehr als eine ist. :wink:

Zitat:
...Windows neustarten/beenden?

Die würde ich aus den FAQs rausnehmen, Tino. toms hat in seiner Antwort ja auch gesagt, wieso.

Zitat:
WinXP herunterfahren

Na ja, das typische Beispiel halt - auch von toms erklärt.

Zitat:
Rechner neu starten, abmelden, herunter fahren

Tja, und die enthält eigentlich keinen verwertbaren Code und könnte inzwischen -mit Blick auf die FAQs- wohl auch entfernt werden.
So, und ich meinte dir hier: Win Xp mit Delphi herunterfahren?

Macht also min. 4 Antworten. :)
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Di 17.09.02 21:08 
Copyright liegt bei Dephi-Treff. :shock:

Muß ich die jedes mal Fragen, wenn ich den Code in meinem Programm verwende?
Das kann doch nicht sein für so ein Pipifax.

Der Code ist weder einzigartig noch besonders originell, noch beinhaltet er schützenswerte Routinen. Es ist einfach die Lösung um die Rechte zum Runterfahren zubekommen. Das wird nicht anders gehen.

@Mathias: Kuck mal auf die Uhrzeit von meinem ersten Posting und dem von meinem Nachposter. :wink:
Sn00py Threadstarter
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Di 17.09.02 22:29 
Thx an alle!

Das war mein erster beitrag und ich war überrascht das ich soviel antworten in so einer zeit bekomme! :D (war auf den Geburtstag meines Bruders)
Ausprobieren konnte ich es zwar noch nicht aber das kommt morgen!
Also macht alle eiter so!

euer Sn00py!
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 18.09.02 07:46 
Luckie hat folgendes geschrieben:
Copyright liegt bei Dephi-Treff. :shock:

Muß ich die jedes mal Fragen, wenn ich den Code in meinem Programm verwende?

Nein, ich glaube, es läuft eher darauf hinaus, dass der EDH nun mal sein Copyright hat. Das bestreitet oder missachtet auch niemand, denke ich. Und der verwendete Code ist dann wohl Teil des neuen EDH. Insofern finde ich den Copyright-Hinweis schon ganz sinnvoll.

Aber recht hast du trotzdem:
Zitat:
Das kann doch nicht sein für so ein Pipifax.

Wenn jeder sein Copyright vor irgendwelche Systemroutinen setzt, dann dürfte man a) gar nichts mehr verwenden, und b) würde Microsoft da sicher nicht tatenlos zusehen, denn im Endeffekt haben die das eigentliche Copyright auf ihre Systemroutinen. :)

Zitat:
Der Code ist weder einzigartig noch besonders originell, noch beinhaltet er schützenswerte Routinen. Es ist einfach die Lösung um die Rechte zum Runterfahren zubekommen. Das wird nicht anders gehen.

Das ist richtig, aber er ist kürzer und dennoch effizienter als der, den ich bisher genutzt habe. :oops: Deswegen steckt er jetzt ja auch in meinem Speedy drin. :wink:

Zitat:
Kuck mal auf die Uhrzeit von meinem ersten Posting und dem von meinem Nachposter.

Beiträge lesen und auf die Uhrzeit achten? Das sind ja gleich zwei Wünsche auf einmal ... :wink: Nee, schon klar, Luckie - jetzt, wo du es sagst, geht auch mir ein :idea: auf.
Sn00py Threadstarter
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Mi 18.09.02 23:07 
So!
Ich kam dazu es auszuprobieren aber Delphi hatt höchstens alle Programme (bis auf 2) geschlossen!
Es kam aber auch vor das eine Fehlermeldung kam!
Zitat:
Was für ein Betriebssystem?

ich habe Windows 98!

Also bitte helft mir!!!! :shock:

euer Sn00py
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 18.09.02 23:14 
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Do 19.09.02 08:59 
Luckie hat folgendes geschrieben:
Eine Url, die ich mir spare

Gut, dass keine Skripte ausgeführt werden können. Das wäre sonst ´ne Endlosschleife geworden. :wink:

Sn00py hat folgendes geschrieben:
Ich kam dazu es auszuprobieren aber Delphi hatt höchstens alle Programme (bis auf 2) geschlossen!

Reden wir eigentlich noch vom selben Problem? :?

Zitat:
Es kam aber auch vor das eine Fehlermeldung kam!

Es wäre ungemein hilfreich, wenn du diese Fehlermeldung auch zitieren könntest.

Zitat:
ich habe Windows 98!

Ist eigentlich unwichtig, da die meisten Postings in den o.g. Links das Problem der Betriebssysteme bereits lösen. Will sagen: Rechtefrage unter NT usw.

Außerdem zum Nachdenken:
Dass du Windows 98 benutzt, heißt ja nicht, dass das jeder macht, dem du dein Programm gibst. Oder?

Zitat:
Also bitte helft mir!!!!

Tja, bloß wie? Bei den mangelnden Informationen.
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Do 19.09.02 09:05 
@Mathias: Ist doch war. Auf dieser Seite und auf den gelinkten Seiten steht alles! Wie soll man ihm da noch helfen, wenn er ...

Ich sage lieber nichts mehr, sonst paßiert noch was. :roll:
Sn00py Threadstarter
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Do 19.09.02 15:40 
Zitat:
Reden wir eigentlich noch vom selben Problem?


JA! Ich hatte den code ausprobiert der hier verlinkt war und Anstatt den PC herunterzufahren hatt das Programm nur n Paar ander Programme beendet!


Zitat:
Es wäre ungemein hilfreich, wenn du diese Fehlermeldung auch zitieren könntest.

wörtlich steht da:

Access violation at address 40025155 in module 'RTL60.BPL'. Read of Address FFFFFFF.

ok wenn du noch mehr infos brauchst sag bescheid :!:

euer Sn00py
Sn00py Threadstarter
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Do 19.09.02 15:52 
:oops: :oops: :oops: SOORRY LEUTZ!!!!!!!!!!!!!!! :oops: :oops: :oops:

Ich habe das programm bis jetzt immer nur in Debug modus laufen lassen habs aber eben noch anders versucht und es funktioniert!!!!!
:idea: Also ein schönen dank ann euch allen!

euer Sn00py
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Do 19.09.02 15:55 
Dieser Code funktioniert bei mir problemlos:

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
function ExitWin(flag:word): Boolean;
var vi      : TOSVersionInfo;
    hToken  : THandle;
    tp      : TTokenPrivileges;
    h       : DWord;

begin
  //result := false;
  vi.dwOSVersionInfoSize:=SizeOf(vi);
  GetVersionEx(vi);
  if vi.dwPlatformId = VER_PLATFORM_WIN32_NT then // Windows NT
  begin
    // Achtung bei Delphi 2 muß @hToken stehen ... !!!! ?????
    OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES,hToken);
    LookupPrivilegeValue(nil,'SeShutdownPrivilege',tp.Privileges[0].Luid);
    tp.PrivilegeCount := 1;
    tp.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
    h := 0;
    AdjustTokenPrivileges(hToken,False,tp,0,PTokenPrivileges(nil)^,h);
    CloseHandle(hToken);
    result := ExitWindowsEx(flag,0);
  end
  else // Windows 95
  begin
    Result := ExitWindowsEx(flag,0);
  end;
end;