Autor Beitrag
thommy f
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 114

Windows 2K pro
Delphi 5 Enterprise
BeitragVerfasst: Mi 12.08.09 14:10 
So, mein Problem von gestern hatten wir recht fix gelöst. An dieser Stelle nochmals DANK für die Hilfe.

Nun wäre es natürlich traumhaft, wenn man das Programm automatisch vor dem Herunterfahren ausführen könnte.

In diversen Foren habe ich gefunden, dass man Programme mit einem kleinen Skript vor dem Herunterfahren ausführen kann. Um sicherzustellen, dass das Programm vollständig ausgeführt und nicht von der Shutdown-Routine unterbrochen oder beendet wird, würde ich gerne den in W2k und WinXP vorhandenen Befehl

ausblenden Quelltext
1:
shutdown -a					


ausführen, um die Shutdown-Routine zu unterbrechen.

Das Programm würde diese Routine dann nachdem es fertig ist neu ausführen.

Wie kriege ich diesen Befehl beim Programmstart ausgeführt?

Dürfte eigentlich nicht zu schwer sein, oder?

THX!

_________________
Der Mensch wächst mit seinen Aufgaben *** Wer kämpft kann verlieren, wer nicht kämpft hat schon verloren
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: Mi 12.08.09 14:30 
Siehe InitiateSystemShutdown und AbortSystemShutdown. Vollständigen Source bzgl. Anfragen der rEchte gibt's hier im Forum.

Unter Vista die Möglichkeit der Shutdown Block reason nutzen.

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.


Zuletzt bearbeitet von BenBE am Do 13.08.09 12:47, insgesamt 1-mal bearbeitet
thepaine91
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 763
Erhaltene Danke: 27

Win XP, Windows 7, (Linux)
D6, D2010, C#, PHP, Java(Android), HTML/Js
BeitragVerfasst: Mi 12.08.09 15:24 
Shutdown -a unterbricht die Routine doch überhaupt nicht. Damit kann nur verhindert werden das sie gestartet wird. Und das auch nur wenn Zeit bleibt sie zu verhindern.
Xentar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2077
Erhaltene Danke: 2

Win XP
Delphi 5 Ent., Delphi 2007 Prof
BeitragVerfasst: Mi 12.08.09 15:31 
shutdown -a funktioniert (soweit ich weiß) nur, wenn dieser Countdown läuft.
Wenn das System schon runter fährt, und z.B. schon die Programme beendet, funktioniert das glaube ich nicht.

_________________
PROGRAMMER: A device for converting coffee into software.
thepaine91
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 763
Erhaltene Danke: 27

Win XP, Windows 7, (Linux)
D6, D2010, C#, PHP, Java(Android), HTML/Js
BeitragVerfasst: Mi 12.08.09 15:53 
Xentar hör auf zu glauben ^^ ich habe darauf doch schon im vorherigen Post hingewiesen.
So um das noch zu hinterlegen.

EDIT:
Windows Hilfe hat folgendes geschrieben:

-a
Bricht das Herunterfahren ab. Ignoriert andere Parameter außer -l und Computername. Sie können -a nur während des Zeitlimits verwenden.


Also wie ich schon zuvor gepostet habe hat nichts mit der eigentlichen Shutdown routine zu tun.
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 12.08.09 22:48 
Zu dem braucht man Administratorenrechte um shitdown.exe auszuführen.
Tilman
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1405
Erhaltene Danke: 51

Win 7, Android
Turbo Delphi, Eclipse
BeitragVerfasst: Mi 12.08.09 23:15 
user profile iconLuckie hat folgendes geschrieben Zum zitierten Posting springen:
Zu dem braucht man Administratorenrechte um shitdown.exe auszuführen.


Absicht oder Freud? :lol:

_________________
Bringe einen Menschen zum grübeln, dann kannst du heimlich seinen Reis essen.
(Koreanisches Sprichwort)
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Do 13.08.09 00:11 
user profile iconTilman hat folgendes geschrieben Zum zitierten Posting springen:
user profile iconLuckie hat folgendes geschrieben Zum zitierten Posting springen:
Zu dem braucht man Administratorenrechte um shitdown.exe auszuführen.


Absicht oder Freud? :lol:

Wie meinen?
Tilman
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1405
Erhaltene Danke: 51

Win 7, Android
Turbo Delphi, Eclipse
BeitragVerfasst: Do 13.08.09 01:04 
Naja ob SHIT absicht war, oder eine freudsche Fehlleistung...

_________________
Bringe einen Menschen zum grübeln, dann kannst du heimlich seinen Reis essen.
(Koreanisches Sprichwort)
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Do 13.08.09 01:58 
Oh, habe ich gar nicht gesehen. War aber ein Vertipper - ich schwörs.
thepaine91
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 763
Erhaltene Danke: 27

Win XP, Windows 7, (Linux)
D6, D2010, C#, PHP, Java(Android), HTML/Js
BeitragVerfasst: Do 13.08.09 09:17 
InitiateSystemShutdown und CancelSystemShutdown(bei mir Abortsystemshutdown).
So auch (Abortsystemshutdown) Beenden wie (shutdown -a) nur den Countdown der z.B. mit InitiateSystemShutdown eingeleitet wurde.
Also auch dieser kann keine shutdown Routine unterbrechen.
Generell kann ich mir nicht vorstellen das es möglich ist ein Herunterfahrendes System noch zu stoppen.

Und mal so am Rande wie würde man "shitdown".exe eigentlich ins Deutsche übersetzen?
Timosch
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 1314

Debian Squeeze, Win 7 Prof.
D7 Pers
BeitragVerfasst: Do 13.08.09 11:50 
user profile iconLuckie hat folgendes geschrieben Zum zitierten Posting springen:
Zu dem braucht man Administratorenrechte um shitdown.exe auszuführen.

Danke, dass mal jemand hier darauf hinweist. Ich möchte mich hier mal selbst zitieren :-) (von hier, da gings zwar einfach nur ums Herunterfahren, aber das Credo bleibt das gleiche):
user profile iconTimosch hat folgendes geschrieben:
Man ruft keine externen Programme auf, um Dinge durchzuführen, für die es API-Befehle gibt.
Wenn ich den Benutzer nach etwas frage, starte ich ja auch nicht den Notepad, lasse ihn den Text eingeben und abspeichern und lese die Datei aus, sondern verwende TEdit, InputBox oder ReadLn.
Sonst ergeben sich folgende Probleme:
1. fördert das die Abhängigkeit von externen Dateien, die u.U. gar nicht existieren. Wenn ich in meine Eingabeaufforderung eingebe "shutdown -s -f" kommt "Der Befehl "shutdown" ist entweder falsch geschrieben oder konnte nicht gefunden werden." Warum wohl? Weil ich Windows 2000 verwende...
2. kostet es Zeit und Ressourcen, weil der Rechner einen neuen Prozess starten muss. Fällt zwar nicht sehr ins Gewicht, ist aber vollkommen grundlos.
3., wie Luckie schon sagte, zwingt es den Benutzer, als Admin zu arbeiten.
Das geht jetzt an alle, die mit diesem Vorschlag (und ähnlichen) in solchen Threads immer wieder ankommen: Lasst das! Bitte! So gewöhnt man Anfängern gleich verheerende Fehler an...

Man sieht an Punkt 3, das diese Threads immer gleich verlaufen. :mrgreen:

_________________
If liberty means anything at all, it means the right to tell people what they do not want to hear. - George Orwell
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: Do 13.08.09 12:47 
Ein Glück, dass ich das bzgl. der API gleich in der ERSTEN ANTWORT geschrieben hatte ...

user profile iconBenBE hat folgendes geschrieben Zum zitierten Posting springen:
Siehe InitiateSystemShutdown und AbortSystemShutdown. Vollständigen Source bzgl. Anfragen der rEchte gibt's hier im Forum.

Unter Vista die Möglichkeit der Shutdown Block reason nutzen.


Danke für's Ignorieren dieses Posts.

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
thommy f Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 114

Windows 2K pro
Delphi 5 Enterprise
BeitragVerfasst: Do 13.08.09 12:51 
Meine Güte,

da ist Microsoft dann aber mal wieder tüchtig eingebildet, oder? Wenn man eine EXE-Datei beim Systemstart ausführen will, braucht man diese nur in ein Verzeichnis namens "Autostart" zu kopieren. Wenn es jedoch wesentlich Sinniger wäre, die gleiche EXE-Datei VOR dem Herunterfahren zu starten, zickt Windows wieder derart rum.

Ich glaub ich steig um auf LINUX!

aber DANKE TROTZDEM!

_________________
Der Mensch wächst mit seinen Aufgaben *** Wer kämpft kann verlieren, wer nicht kämpft hat schon verloren
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: Do 13.08.09 13:04 
user profile iconthommy f hat folgendes geschrieben Zum zitierten Posting springen:
Meine Güte,

da ist Microsoft dann aber mal wieder tüchtig eingebildet, oder? Wenn man eine EXE-Datei beim Systemstart ausführen will, braucht man diese nur in ein Verzeichnis namens "Autostart" zu kopieren. Wenn es jedoch wesentlich Sinniger wäre, die gleiche EXE-Datei VOR dem Herunterfahren zu starten, zickt Windows wieder derart rum.

Bzgl. Vista habe ich die Lösung ja bereits geschrieben ... Danke für's Ignorieren; ich fühl mich geehrt!

user profile iconthommy f hat folgendes geschrieben Zum zitierten Posting springen:
Ich glaub ich steig um auf LINUX!

aber DANKE TROTZDEM!

Mach mal bitte einen Dieter Nuhr ... Auch wenn Linux in der Hinsicht etwas freundlicher ist, heißt das noch lang nicht, das dadurch alles besser wird ;-) Und verschon bitte die Linux-Gemeinde von dieser Einstellung.

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
thepaine91
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 763
Erhaltene Danke: 27

Win XP, Windows 7, (Linux)
D6, D2010, C#, PHP, Java(Android), HTML/Js
BeitragVerfasst: Do 13.08.09 13:07 
BenBE aber zu deinem Beitrag hatte ich schon den nachteil geschildert.
thommy f dein Vorhaben ist möglich. Nur befürchte ich das es zu viel aufwand wäre.
Dein Konzept fehler ist einen bereits angefangenen shutdown zu stoppen. Du musst dich zwischen den Befehl zum shutdown und den shutdown setzen. Dann wäre es theoretisch möglich.

Davon abgesehen befürchte ich das es dein Horizont überschreitet wenn du schon so ahnungslos mit befehlen wie shutdown -a um dich wirfst ohne zu wissen was diese wirklich tun.

mfg nic
Timosch
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 1314

Debian Squeeze, Win 7 Prof.
D7 Pers
BeitragVerfasst: Do 13.08.09 13:43 
user profile iconBenBE hat folgendes geschrieben Zum zitierten Posting springen:
Ein Glück, dass ich das bzgl. der API gleich in der ERSTEN ANTWORT geschrieben hatte ...

user profile iconBenBE hat folgendes geschrieben Zum zitierten Posting springen:
Siehe InitiateSystemShutdown und AbortSystemShutdown. Vollständigen Source bzgl. Anfragen der rEchte gibt's hier im Forum.

Unter Vista die Möglichkeit der Shutdown Block reason nutzen.


Danke für's Ignorieren dieses Posts.

Mea culpa. Bitte vergib mir. ;-) Ich wollts nur nochmal betonen.

_________________
If liberty means anything at all, it means the right to tell people what they do not want to hear. - George Orwell
thommy f Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 114

Windows 2K pro
Delphi 5 Enterprise
BeitragVerfasst: Do 13.08.09 15:08 
Hey, sorry, ich wollte hier weder jemanden bzw. einen Post ignorieren, noch wollte ich hier diverse Diskusionen auslösen. Bezüglich SystemShutdown und AbortSystemShutdown konnte ich weder im Forum noch bei Google was verwertbares finden. Anscheinend bin ich echt zu doof die Suchfunktion korrekt zu nutzen. Aber Danke nochmal. Werde mich nochmals intensiv mit diesen Routinen beschäftigen.

Ich hatte auch nicht vor die MICROSOFT-Verfechter in irgendeiner Weise anzugreifen. Mir fällt eben nur immer wieder auf, dass man unter WINDOWS häufig relativ aufwändige "Umwege" gehen muss um das gleiche Ergebnis zu erzielen, das man unter Linux mit einer kurzen Befehlszeile hin bekommt.

Nochmals Sorry, falls ich irgendwem auf die Nerven gefallen bin und VIELEN DANK für die Hilfe.


Dazu kurz noch erwähnt, dieses Forum ist eines der hilfreichsten, das ich bisher kenne. Ich habe zwar etwas Erfahrung mit Programmierung allgemein und auch mit Delphi, aber kein ausgesprochener Crack bin ich (noch) nicht. Und bisher konnten hier alle Probleme gelöst werden.

_________________
Der Mensch wächst mit seinen Aufgaben *** Wer kämpft kann verlieren, wer nicht kämpft hat schon verloren
thepaine91
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 763
Erhaltene Danke: 27

Win XP, Windows 7, (Linux)
D6, D2010, C#, PHP, Java(Android), HTML/Js
BeitragVerfasst: Do 13.08.09 15:19 
thommy msdn Hilfe aus Delphi oder msdn.com und die Routinen eingeben da steht alles was man wissen muss.
Und trotzdem sag ich dir nochmal das ist nicht was du suchst. ^^