Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Autostart über Registry (https://www.delphipraxis.net/2541-autostart-ueber-registry.html)

bubabo 28. Jan 2003 16:15


Autostart über Registry
 
Hallo,
ich habe ein Programm geschrieben, das bei jedem Windows-Start gestartet werden
soll (Also Autostart). Dies läuft alles über die Registry ab, nicht über den
Autostartordner.
Der erste Compilierversuch gelang. Beim Neustart erhalte ich allerdings die Fehlermeldung: "Datei nicht gefunden"
Nach Bstätigung dieser Meldung läuft das Programm wieder. Dann habe ich aber beim Schließen wieder eine Fehlermeldung: "E/A-Fehler 103".

Ich wollte das Programm ändern, doch beim Compilieren krieg ich folgende Fehlermeldung:

"[Fataler Fehler] Ausgabedatei 'Pfad der Datei' kann nicht erstellt werden"

Kann mir da jemand weiterhelfen?

Daniel B 28. Jan 2003 16:21

Re: Autostart über Registry
 
Hallo bubabo,
Zitat:

Zitat von bubabo
Dies läuft alles über die Registry ab, nicht über den
Autostartordner.

*kopfschüttel*
Zitat:

beim Schließen wieder eine Fehlermeldung: "E/A-Fehler 103".
Sag das die Datei nicht offen ist. Öffnest DU sie zum richtigen Zeitpunkt? Schliesst Du sie auch wieder, falls Du vorher was damit machst?
Ein bisschen Code wäre nciht schlecht, wo Du was mit der Datei machst.
Zitat:

Ich wollte das Programm ändern, doch beim Compilieren krieg ich folgende Fehlermeldung:
Ja wie jetzt? Kannst Du kompilieren und den Rechner neustarten oder nicht?

Grüsse, Daniel :hi:

bubabo 28. Jan 2003 16:42

Damit schreibe ich den Wert in die Registry

Delphi-Quellcode:
regist := TRegistry.create;
      regist.rootkey := HKEY_LOCAL_MACHINE;
      regist.OpenKey('\SOFTWARE\Microsoft\Windows\CurrentVersion\Run',true);
         regist.writestring('Name des Programms','Pfad der Exe-Datei');
         regist.closekey;
[/code]

Christian Seehase 28. Jan 2003 16:48

Moin Bubabo,

hast Du auch daran gedacht, den Eintrag wieder aus der Registry zu nehmen, bzw. das Programm zu beenden, bevor Du es bearbeitest?
Wenn es noch läuft, kann die EXE ja nicht neu erstellt werden.

bubabo 28. Jan 2003 17:03

Geschlossen hab ich's mit der deletekey-Anweisung


Hat jemand vielleicht eine andere Methode ein Programm automatisch zu starten?

RomanK 28. Jan 2003 17:05

Hoi,
damit schließ du aber nich die Anwendung ...

bubabo 28. Jan 2003 17:12

Nein, den Registry-Eintrag hab ich mit deletekey geschlossen.
Das Programm soll doch aber beim Systemstart geöffnet werden und auch laufen. Es soll nicht gleich geschlossen werden.

Christian Seehase 28. Jan 2003 17:57

Moin Bubabo,

also so wie ich es bisher verstanden hatte, konntest Du das Programm nicht mehr kompilieren, oder?

Jan 28. Jan 2003 18:24

Hallo ihrs,
Irgendwie habe ich hier kein Wort verstanden, kann mich mal jemand aufklären was das Problem von bubabo ist?
Hat er jetzt ein Problem mit dem autostart oder damit sein Programm zu kompilieren, weiterhin frage ich mich was er genau bei jedem Windowsstart ausführen will, das Programm selber, oder ein fremdes Programm?

Zitat:

Zitat von Christian Seehase
hast Du auch daran gedacht, den Eintrag wieder aus der Registry zu nehmen, bzw. das Programm zu beenden, bevor Du es bearbeitest?
Wenn es noch läuft, kann die EXE ja nicht neu erstellt werden.

Was bitteschön hat denn ein Eintrag in diesen Key der Registry mit dem Erstellen der exe zu tun?
Ich verstehe nur Bahnhof.
Naja, BB
Jan

nailor 28. Jan 2003 18:51

Zitat:

Zitat von Jan
Was bitteschön hat denn ein Eintrag in diesen Key der Registry mit dem Erstellen der exe zu tun?

Delphi will beim Kompilieren die alte exe mit der neuen Überschreiben. Hat man die alte exe jetzt aber im Autostart, und schließt sie nicht, dann ist sie für Windows noch geöffnet - und darf also nicht überschrieben werden. Das führt dazu, dass Delphi nicht kompiliert.

Man muss also die Anwendung manuell beenden, oder sie aus dem Autostart löschen UND Windows einmal neustarten.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:29 Uhr.
Seite 1 von 4  1 23     Letzte »    

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