AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Probleme auf neuem Rechner

Ein Thema von Rawsche · begonnen am 26. Jul 2019 · letzter Beitrag vom 27. Jul 2019
Antwort Antwort
jsp

Registriert seit: 9. Aug 2003
50 Beiträge
 
#1

AW: Probleme auf neuem Rechner

  Alt 26. Jul 2019, 13:34
Le roi est mort, vive le roi

Sorry, es ist einfach zu heiss
  Mit Zitat antworten Zitat
Rawsche

Registriert seit: 18. Jul 2018
16 Beiträge
 
#2

AW: Probleme auf neuem Rechner

  Alt 26. Jul 2019, 13:48
Danke erstmal für eure Rückmeldung. Ich verstehe, dass ihr nicht zufrieden seid mit meiner Art den Neustart herbeizuführen. Ich werde mich da sicherlich auch nochmal intensiver mit beschäftigen. Mein Problem bleibt aber auch so bestehen:

Ich habe mal versucht ein anderes Programm per ShellExecute einfach aufzurufen ohne mein Programm zu schließen. Das sah so aus:
Code:
ShellExecute(Handle, 'open', PChar('C:\Datei.exe'), Nil, Nil, 1);
Die ausgewählte Datei funktionierte einwandfrei und lag auch am richtigen Ort mit dem richtigen Namen. Trotzdem passierte wieder nichts Sichtbares...

Vielleicht mache ich irgendetwas grundlegend falsch?!
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#3

AW: Probleme auf neuem Rechner

  Alt 26. Jul 2019, 14:03
Zitat:
Danke erstmal für eure Rückmeldung. Ich verstehe, dass ihr nicht zufrieden seid mit meiner Art den Neustart herbeizuführen. Ich werde mich da sicherlich auch nochmal intensiver mit beschäftigen
Setz das Shellexecute ins FormDestroy und dann sollte alles funktionieren.
  Mit Zitat antworten Zitat
Rawsche

Registriert seit: 18. Jul 2018
16 Beiträge
 
#4

AW: Probleme auf neuem Rechner

  Alt 26. Jul 2019, 14:23
Zitat:
Danke erstmal für eure Rückmeldung. Ich verstehe, dass ihr nicht zufrieden seid mit meiner Art den Neustart herbeizuführen. Ich werde mich da sicherlich auch nochmal intensiver mit beschäftigen
Setz das Shellexecute ins FormDestroy und dann sollte alles funktionieren.
Habe es gerade versucht. Hat leider keinen Effekt. Das Programm startet trotzdem nicht.

Ich glaube aber, dass ich mittlerweile einen Grund gefunden haben könnte. Ich habe mir (wie von euch empfohlen) von ShellExecute den Rückgabewert anzeigen lassen...
Ergebnis: "The specified file was not found."

Da ich aber das File korrekt angegeben habe, war ich verwirrt.
Ich hab deshalb mal die .exe Datei in verschiedene Ordner gerückt und getestet.
Dabei hab ich folgendes herausgefunden. Wenn die .exe im Ordner oder Unterordner meines Benutzernamens liegt, dann kann sie nicht gefunden werden. Wenn ich sie tatsächlich einfach nur nach C:/ lege, dann kann sie gefunden werden.

Es hat also meiner Meinung nach etwas mit meinem Benutzernamen zu tun. Dieser hat leider ein Leerzeichen und ein Sonderzeichen in sich. Zwar nicht mein echter Name, aber in etwas sieht er so aus: "Max Müller".

Mit dem Problem habe ich schon einmal auf dem neuen Rechner gekämpft. Dort wurde nämlich die EnvironmentVariable APPDATA, nicht in "C:\Users\Max Müller\AppData\Roaming" sondern in "C:\Users\Max MǬller\AppData\Roaming" oder in "C:\Users\Max Müller\AppData\Roaming" aufgelöst. Diese Orte konnten natürlich dann nicht gefunden werden.
Gelöst habe ich das Problem damals, in dem ich die Zeichen "ü" und "Ǭ" manuell ersetzt habe.

Ich habe deshalb jetzt mal mein Programm mit dem Neustart nach C:/ geschoben. Der Neustart funktioniert nun wieder. Das kann aber ja keine echt Lösung sein, da das Programm ja von jedem Speicherort aus laufen können sollte...

Vielleicht helfen die Infos, damit mein Problem besser deutlich wird.
Was kann ich tun, um dieses Problem zu beheben?

Geändert von Rawsche (26. Jul 2019 um 14:28 Uhr)
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#5

AW: Probleme auf neuem Rechner

  Alt 26. Jul 2019, 14:26
Ich kann dir bei dem Problem mit den Umlauten nicht helfen.
Aber lass das shellExecute unbedingt im FormDestroy. Andernfalls machst du nur das, was Luckie schreibt.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#6

AW: Probleme auf neuem Rechner

  Alt 26. Jul 2019, 14:42
Welche Delphi Version verwendest du? Solltest du noch kein Unicode Delphi benutzen, ruf mal explizit ShellExecuteW mit PWideChar auf.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von juergen
juergen

Registriert seit: 10. Jan 2005
Ort: Bönen
1.176 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: Probleme auf neuem Rechner

  Alt 26. Jul 2019, 15:16
Hallo,

...Dieser hat leider ein Leerzeichen und ein Sonderzeichen in sich. Zwar nicht mein echter Name, aber in etwas sieht er so aus: "Max Müller"
Ich vermute es liegt am Leerzeichen...

ShellExecute(Handle, 'OPEN', PChar('"' + 'C:\Datei 2.txt' + '"'), nil, nil, 1);

Edit: Dateien sollte man im Root nicht speichern...
Jürgen
Indes sie forschten, röntgten, filmten, funkten, entstand von selbst die köstlichste Erfindung: der Umweg als die kürzeste Verbindung zwischen zwei Punkten. (Erich Kästner)

Geändert von juergen (26. Jul 2019 um 15:22 Uhr) Grund: Flüchtigkeitsfehler...
  Mit Zitat antworten Zitat
Fritzew

Registriert seit: 18. Nov 2015
Ort: Kehl
678 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: Probleme auf neuem Rechner

  Alt 27. Jul 2019, 16:29
Hallo zusammen,

ich denke das der einzige der das Problem hier richtig erkannt hat Jürgen ist:

Hallo,
Ich vermute es liegt am Leerzeichen...

ShellExecute(Handle, 'OPEN', PChar('"' + 'C:\Datei 2.txt' + '"'), nil, nil, 1);
Wieso nach
form1.close; die Application weg sein soll muss mir mal jemand erklären.
Das ist nämlich definitiv nicht so.
Die Application endet nicht einfach in einer Methode!!!!!!

Die Application wird beendet nach einer PostQuitMessage. Damit wird dann die Messageloop beendet.

Das hier fällt auf die Nase wenn Leerzeichen im Pfad sind.

ShellExecute(Handle, 'open',PChar(Application.ExeName), nil, nil, 0); deshalb in DoubleQuotes:

ShellExecute(Handle, 'open',PChar(AnsiQuotedStr(Application.ExeName, '"')), nil, nil, 0);
und natürlich ist es hilfreich auf Fehler zu prüfen...
Fritz Westermann
  Mit Zitat antworten Zitat
Rawsche

Registriert seit: 18. Jul 2018
16 Beiträge
 
#9

AW: Probleme auf neuem Rechner

  Alt 27. Jul 2019, 11:06
Welche Delphi Version verwendest du? Solltest du noch kein Unicode Delphi benutzen, ruf mal explizit ShellExecuteW mit PWideChar auf.
Ich benutze kein Delphi sondern Lazarus...
  Mit Zitat antworten Zitat
Ydobon

Registriert seit: 3. Mär 2006
264 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: Probleme auf neuem Rechner

  Alt 27. Jul 2019, 11:23
Und wenn du dir die richtige Version des Pfades zuerst holst. SHGetKnownFolderPath müsste doch auch Lazarus kennen.
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 01:13 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