Jörg Tewes <[EMAIL PROTECTED]> wrote on 27.02.04: > Donnerstag, 26.02.04 Michael Heydekamp schrub...
>> Jörg Tewes <[EMAIL PROTECTED]> wrote on 25.02.04: >>> Ich habe gerade mal C/X/S bei FreeXP aktiviert und da wird der >>> COMMAND.COM im falschen Verzeichnis gesucht. FreeXP sucht den >>> COMMAND.COM in C:\WINNT\System32, XP2 in C:\WINXP\System32. >> Na super, dann haben wir schon mal die offensichtliche Ursache. >> Jetzt müssen wir nur noch herausfinden, wieso in C:\WINNT\System32 >> gesucht wird. >> Nächster Schritt: Wirf mal bitte Deine komplette Ausgabe von "set" >> rüber (am besten die aus CMD *und* COMMAND). > Kommt > CMD.EXE [...] > COMMAND.COM [...] Hmm, nix mit "WINNT" zu sehen. Trotzdem mußt Du es ja irgendwie hinbekommen haben, FreeXP vorzugaukeln, Dein COMMAND.COM befände sich in C:\WINNT\System32. Irgendwo in den Eigenschaften einer PIF-Datei vielleicht (evtl. kopiert von einem früheren System)? Befehl in 'ner Batch oder irgendwas in der Richtung? Jedenfalls habe ich den Code durchforstet, an keiner einzigen Stelle wird fest verdrahtet auf das Verzeichnis "WINNT" geprüft. Aber dabei habe ich etwas ganz anderes gefunden, was im Zusammenhang mit dem Aufruf externer Programme unter Windows ganz interessant ist (xp1o.pas, XPWinShell): ----------8<---------- [...] winnt:=win and (lstr(getenv('OS'))='windows_nt'); [...] if winnt then prog:='cmd /c start cmd /c '+batfile else prog:='start command /c '+batfile end; [...] ----------8<---------- Aha...??? Da haben wir doch bereits den berühmten Start von CMD.EXE, der offenbar dann ausgeführt wird, wenn die Umgebungsvariable "OS" den Wert "Windows_NT" hat. Und siehe da: > OS=Windows_NT Das ist bei Dir (und vermutlich allen anderen Win2K/XP-Usern) der Fall. Wann allerdings die "WinXPShell" Routine überhaupt benutzt wird, das muß man sich nochmal genauer ansehen. Der Code ist BTW genau so auch in XP2 drin (nicht aber in der originalen 3.20 von Peter, wenn ich nix übersehen habe). >>> Letzteres ist das Verzeichnis was über %SYSTEMROOT% zu finden ist, >>> ersteres ist das Standardverzeichnis unter WinNT und W2k, aber >>> nicht bei WinXP. Es scheint das FreeXP hier nicht die Systemroot >>> Variable auswertet >> Gerade XP2 wertet die garantiert nicht aus, das weiß gar nix von >> WinNT und Konsorten. > Stimmt fiel mir kurz nach abschicken auch auf. Bzgl. %SYSTEMROOT% stimmt das zwar, aber siehe oben. Xpost & f'up2 c.f.d Michael ------------------------------------------------------------------------ FreeXP Entwickler-Mailingliste [EMAIL PROTECTED] http://www.freexp.de/cgi-bin/mailman/listinfo/dev-list