verwendetes Datenbanksystem: <XML>
Hallo,
ich habe ein Programm geschrieben, welches ich als Shell in der Registry festgelegt habe.
Mein Problem ist, dass beim Starten die XML-Datei nicht gefunden wird.
Habe jetzt schon eine 5sekündige Schleife eingebaut in der ich überprüfe ob das File vorhanden ist. Diese bleibt erfolglos.
Starte ich das Programm über den TaskManager funktioniert es aber ohne Probleme.
Wer kann mir einen Tipp geben?
Gruß
Robin
Hallo br0ken-s0ul,
Wer kann mir einen Tipp geben?
Dann hast du wohl in der Registry etwas falsch eingetragen 😉
Wie sieht denn dort der Eintrag aus?
Bitte beachte [Hinweis] Wie poste ich richtig? Punkt 5.
Siehe auch Forumssuche nach registry shell
mfG Gü
Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.
"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"
Hey danke für die schnelle Antwort.
Zur registry: USR:Software\Microsoft\WindowsNT\CurrentVersion\Winlogon dort unter Shell habe ich den Explorer entfernt und mein Programm eingefügt.
Das Programm startet auch, aber die XML Datei wird nicht gefunden.
Ich möcht bewusst den Explorer nicht starten, da es ein kassensystem werden soll und der Zugriff auf das File System nicht gestattet sein soll.
Wenn ich das Programm dann manuell starte läuft es wie gesagt tadellos.
Gruß
Robin
Hmmmm, nutzt Du einen absoluten oder relativen Pfad? Falls relativ ist ggf. die WorkingDirectory in dem Fall inkorrekt?
Ich habe das File im selben Ordner wie das Programm und rufe im Programm dieses über die Working Directory + Datei auf. Das seltsame ist das vom "autostart" die XML nicht eingelesen werden kann, wenn ich dann aber direkt im Anschluss das Programm manuell ausführe funktioniert alles reibungslos.
Dann stimmt das WorkingDirectory nicht.
Ein üblicher Fehler, über den Du mit dem Stichwort auch die Lösung finden wirst.
Ansonsten bitt ich Dich in Zukunft Dich besser auszudrücken.
Kein Mensch weiß, was Du meinst, wenn Du sagst "geht nicht" oder "das XML File." - was geht nicht? Was für ein XML File meinst Du .... ?
Danke.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Das WorkingDirectory ist nicht immer das Verzeichnis in dem die exe liegt.
Schau Dir mal FAQ Artikel Pfad zur eigenen Anwendung (EXE) ermitteln an.
Sorry für die doofe frage, aber warum geht es nur nicht, wenn Windows das Programm automatisch startet. Wenn ich das Programm manuell starte geht es ohne auch nur ein Parameter geändert zu haben? Zumal ich das Programm über Ausführen Win-R mit genau dem dem gleichen Pfad, wie in der Registry hinterlegt, aufrufe.
Gruß
Robin
Das hat eben mit dem programmatischen Aufruf zutun. Nichts anderes macht Windows beim Start.
Wenn man in C# einen Prozess startet, dann muss man auch i.d.R. das WorkingDirectory setzen.
Schau Dir einfach an, was das WorkingDirectory ist, dann verstehst Du es vielleicht.
Working directory
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Ich werde mich darin einlesen. Auf jeden Fall muss ich euch ein riesiges Lob und Dankeschön aussprechen. Genau das war der Fehler und nun läuft es wie es soll. Danke an auch alle und gute Nacht.
Gruß
Robin