Hello,
irgendwie macht mir die Portabilität der Applikation mit XAMPP noch wirkliche Probleme. Bisher humpelt sie auf Windows eXPerimental, Windows 2000, Windows Müll Edition, Windows 98 SE, Linux Ubuntu, Linux Debian so leidlich vor sich hin.
Wie ist es denn mit exec() nun richtig? Stellt mir exec() eine Shell zur Verfügung, oder nicht?
Wenn ich auf Win98SE die Sache wie folgt aufbaue, klappt alles ohne zu Mucken. Lasse ich die Extra-Shell (command.com) weg, dann wird augenscheinlich nach dem Befehlsinterpreter gesucht, und zwar in der Bootreihenfolge des Systems (hier: Disklaufwerk, CDROM, Festplatte)
define('MAGICMIMEFILE','E:/INTERNET/XAMPP/xampp/MimeTypes/bin/file.exe');
exec ('command.com /c '.realpath(MAGICMIMEFILE)." -bi ". escapeshellarg($filename), $_mime, $error);
Es würde mich nun nicht besonders stören, es so aufzubauen, wenn nicht die Befehlsinterpreter bei allen Systemen wieder anders heißen würden. Außerdem benötig ich die Konstruktion für die Linuxe und Windows eXPerimantal überhaupt nicht.
Konkrete Fragen:
1. Wie kann ich das OS feststellen, auf dem die Sache läuft?
2. Kann ich für den Befehlsinterpreter auf eine Systemvariable zurückgreifen, oder ihn anders ermitteln?
Irgendwie fällt mir nix mehr ein :-((
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau