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...