AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Installations- bedingt -> Neustart des Computers
Thema durchsuchen
Ansicht
Themen-Optionen

Installations- bedingt -> Neustart des Computers

Ein Thema von Gast · begonnen am 23. Jul 2002 · letzter Beitrag vom 25. Jul 2002
Antwort Antwort
Gast
(Gast)

n/a Beiträge
 
#1

Installations- bedingt -> Neustart des Computers

  Alt 23. Jul 2002, 09:41
Hallo Systemprofis 8)

Wie versprochen keine Anfänger (wie ich hoffe) Fragen mehr...

Aus einem Delphiprogramm her muss ein Neustart des Computers erzwungen werden (unabhängig von Betriebssystem).
Direkt nach dem Neustart des Computers sollte automatisch das Programm, dass das Neustart des Computers veranlasst hat,... aktiviert werden.

Fragen:

1.) Wie erzwinge ich ein Neustart des Computers unabhängig von dem Betriebssystem (z.B. Win 98 / Win 2000 usw...)

2.) Wie sollte (und vor allem Wo?) ich unmittelbar nach dem Neustart automatisch zu meinem Programm zurückzugelangen (und zwar natürlich NUR einmal!) ?


Gruß

Paul Jr.
  Mit Zitat antworten Zitat
OregonGhost

Registriert seit: 8. Jun 2002
Ort: Lübeck
1.216 Beiträge
 
Delphi 3 Professional
 
#2
  Alt 23. Jul 2002, 10:10
Also, zu Frage 2: In der Registry gibt es zu diesem Zweck einen Schlüssel RunOnce bzw. RunServicesOnce. RunOnce gibt es glaub ich auf jeden Fall auf jedem Windows, deshalb solltest du vielleicht den nehmen. Weiß gerade net genau, wo der ist, aber einmal Registry durchsuchen, dann hast du ihn ;c)
Der Schlüssel dient genau deinem Zweck. Trage hier einen Wert ein (Name = Name des Programms, Wert = Kommandozeile des Programms), dann wird er beim nächsten Systemstart ausgeführt.

Zu 1 weiß i net so genau, aber muss wohl mit ExitWindowsEx() gehen.
Parameter 2 ist dwReason, und für WinXp solltest du hier vielleicht SHTDN_REASON_MAJOR_SOFTWARE or SHTDN_REASON_MINOR_INSTALLATION angeben.
Für Parameter 1 solltest du vielleicht EWX_REBOOT angeben.

Und um Himmels Willen, vergiss nicht, dass du dem User die Möglichkeit geben musst, das Installationsprogramm zu beenden und den Neustart später selbst durchzuführen - nichts regt mich mehr auf als ein Installationsprogramm, das bei der Frage "Darf ich neustarten?" nur einen OK-Button anbietet ;c)
Oregon Ghost
---
Wenn NULL besonders groß ist, ist es fast schon wie ein bisschen eins.
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#3
  Alt 23. Jul 2002, 11:28
Hi, Paul Jr.

1. "RunOnce" befindet sich standardmäßig in HKEY_LOCAL_MACHINE. Ob´s eine Entsprechung in HKEY_CURRENT_USER gibt, weiß ich nicht - aber das könnte man ja mal ausprobieren. Nicht wahr?

2. Es gibt doch einige Beispiele zum Thema "Shutdown von NT-Systemen". So hat z.B. Pit hier die Funktion gepostet, die wohl im neuen EDH enthalten sein wird. Im Prinzip sollte es reichen, sich das Shutdown-Recht (salopp gesagt) zu holen und dann das System mit "EWX_REBOOT" zu rebooten (wie OG schon sagte).

Wieder so ´ne Anfängerfrage.
*hi hi*
(Sorry, Paul, konnte ich mir nicht verkneifen. )

Gruß,
Mathias.
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#4
  Alt 23. Jul 2002, 13:24
RunOnce gibt es in HKCU und HKLM in allen Win Systemen seit Win95 - wenn es um noch ältere geht, dann sollte es wohl eine der ini Files sein (WIN.INI oder so):

HK??\Software\Microsoft\Windows\CurrentVersion\Run once

Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Gast
(Gast)

n/a Beiträge
 
#5
  Alt 24. Jul 2002, 14:51
Hallo Männer, 8)

danke für Eure Hilfe

Gruß

Paul Jr.

P.S.

Hi Mathias ...nun vielleicht treffen wir uns eines Tages in dem Datenbankwesen...?
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#6
  Alt 25. Jul 2002, 22:04
Moin Paul jr.,

noch mal zu Deiner ersten Frage.
Ich bin gerade, mal wieder , über die Funktionen der Setup API gestolpert.

Schau Dir doch mal im PSDK die Funktion SetupPromptReboot an.
Vielleicht ist die ja was für Dich. (klingt gemäss Beschreibung jedenfalls so).
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:13 Uhr.
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