Guten Tag,
ich beantworte meine Fragen jetzt mal selbst
.
1. Darf die zweite Anwendung als Unterverzeichnis der ersten Anwendung "main.app" existieren, oder muss die in einem Verzeichnis außerhalb der main.app liegen?
Antwort: Meine Tests haben ergeben, dass die zweite App auch in der ersten App liegen darf.
2. Die Anwendung liegt auf einem USB-Stick und wird von dort gestartet. Wie ermittle ich das Laufwerk, auf dem die main.app läuft? Unter WINDOWS wäre das ja beispielsweise ExtractFileDrive, aber das liefert bei MacOS einen String der Länge Null.
Antwort: Sofern die zweite App in der ersten liegt, kann ich mit der Codezeile: fDir := '"' + IncludeTrailingPathDelimiter(ExtractFilePath(Param Str(0))); arbeiten. (Übrigens kann man natürlich auch "QuotedStr" verwenden). Was ich halt noch nicht weiß ist, welche Funktion mir nur das Laufwerk ausgibt auf dem die Anwendung läuft. Ich kann mir das natürlich selbst aus fDir oben zerlegen, aber gibt es da nicht ne schöne bestehende Funktion?
3. Kann der Code unten überhaupt für das Ausführen einer Anwendung "second.app" verwendet werden (unabhängig in welchen Verzeichnis die Datei liegt) ? Ich habe mittlerweile recht viele Variationen ausprobiert, aber leider bisher ohne Erfolg.
Antwort: Ja läuft einwandfrei auch zum Starten einer Anwendung. Und warum habe ich dann überhaupt die Frage gestellt? Das Problem scheint die zu startende second.app selbst gewesen zu sein. Die ist mit meinem alten MAC nicht mehr kompatibel. Was mich halt nur wundert ist, dass ich keinerlei Fehlermeldung erhalten habe. Wenn ich die Second.app per Doppelklick starte, dann bekomme ich den Hinweis, dass mein
OS zu alt ist. Starte ich über meine Funktion/Prozedur, dann kommt keine Meldung.
HINWEIS: Und meine Versuche das Problem einzukreisen schlugen auch fehl, da auch FileExists immer Null zu liefern scheint unter MAC. Naja XE ist ggf. auch nicht mehr das neueste vom neuen und vielleicht hat sich ja auch ne Menge getan in der Zwischenzeit.
Danke fürs mitlesen ... Gruß Hendrik
Falls ich mal ein "DANKE" vergesse, hier schon mal eins im Voraus: Danke für Eure Zeit!