![]() |
Fehler nur bei Autostart aus Registry
Hallo,
ich habe ein mekrwürdiges Problem mit dem Autostart aus der Registry. Folgendes: in der Registry unter dem Schlüssel HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Run\ befindet sich ein Enitrag, der mein Programm aufrufen soll:
Delphi-Quellcode:
Beim Start des Programmes sollen ein paar Dateien geladen werden die sich im Unterverzeichnis von dem Programmverzeichnis befinden:
D:\XXX\XXX\XXX\XXX.exe /run
Delphi-Quellcode:
Das funktioniert aber leider nicht, es iwrd immer der Else-Zweig ausgeführt. Starte ich das Programm manuell, also nicht als Autostart, geht es wunderbar aber, und das verstehe ich nicht, wenn ich unter Ausführen, das selbe wie oben, D:\XXX\XXX\XXX\XXX.exe /run, eintrage und öffne geht es auch wunderbar. Also muss da doch ein Unterschied sein, den ich aber nicht verstehe. Ich hoffe mir kan jemand helfen.
If FileExists(ExtractFilePath(Application.ExeName) + 'Data\msn.mjd') then
begin AssignFile(MSNFile, 'Data\msn.mjd'); Reset(MSNFile); for i := 0 to FileSize(MSNFile) - 1 do begin . . . end; CloseFile(MSNFile); end Else ShowMessage('Fehler'); Gruß Mazel |
Re: Fehler nur bei Autostart aus Registry
Delphi-Quellcode:
Da fehlt doch was im vergleich zu
AssignFile(MSNFile, 'Data\msn.mjd');
Delphi-Quellcode:
FileExists(ExtractFilePath(Application.ExeName) + 'Data\msn.mjd')
|
Re: Fehler nur bei Autostart aus Registry
Hallo,
versuch mal
Delphi-Quellcode:
If FileExists(ExtractFilePath(Application.ExeName) + 'Data\msn.mjd') then
begin AssignFile(MSNFile, ExtractFilePath(Application.ExeName) + 'Data\msn.mjd'); Reset(MSNFile); for i := 0 to FileSize(MSNFile) - 1 do begin . . . end; CloseFile(MSNFile); end Else ShowMessage('Fehler'); |
Re: Fehler nur bei Autostart aus Registry
Nochwas:
Mir ist eben aufgefallen dass er nicht den Else-Zweig ausführt, dafür aber die Datei nicht liest aber es kommt kein Fehler. Außerdem habe ich noch diese Funktion im Programm die mir auch immer wieder den Fehler gibt, dass die Dateien nicht gefunden werden können, alles aber nur beim Autostart aus der Registry:
Delphi-Quellcode:
procedure TMain.ApplicationEventsException(Sender: TObject; E: Exception);
begin Application.MessageBox(PChar('Folgender Fehler ist aufgetreten: '+ E.Message + '.' + #10 + 'Die Anwendung wird nun geschlossen. Bei erneuten auftreten des Fehlers wenden Sie sich bitte an den Autor Marcel Jänicke'), 'Fehler', 16); Close; end; [EDIT] @Cyberbob: ich werde es gleich probieren ;) [/EDIT] [EDIT2] OK, ich habe es eben probiert, es geht. Kann mir einer erklären warum das beim Autostart änders ist alsb beim normalen Start? [/EDIT2] Gruß Mazel |
Re: Fehler nur bei Autostart aus Registry
Weil das Programm beim Autostart im Autostart-Ordner sucht. Beim Kompilieren sucht das Programm im Projektordner.
|
Re: Fehler nur bei Autostart aus Registry
Wo ist den der Autostart-Ordner?
|
Re: Fehler nur bei Autostart aus Registry
In deinem Startmenü, es sei denn, du hast es per Registry-Autostart geladen...
|
Re: Fehler nur bei Autostart aus Registry
ASO, im Startmenü schaut er nach, das wusste ich nicht.
OK danke :thumb: Gruß Mazel |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:36 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