Finanzamt 73 Geschrieben 9. Mai 2005 Melden Teilen Geschrieben 9. Mai 2005 Hallo! Ich habe die Kontexte meiner Explorermenüs mit einem "Konsole starten" erweitert, sodaß beim Rechtsklick CMD in dem jeweiligen Laufwerk/Ordner gestartet wird. Dazu habe ich %SystemRoot%\System32\CMD.EXE /K cd"%1%" im Schlüssel HKEY_CLASSES_ROOT\Directory\Shell mit einem neuen Schlüssel "KonsoleStarten" und dem o.g. Wert unter "Command" eingetragen. Die Sache läuft wunderbar, solange ich mich mit dem Explorer in einem Verzeichnis mit Laufwerksbuchstaben befinde (ob lokal vorhanden oder gemappt spielt keine Rolle). Sobald ich mich mit dem Explorer aber in einem UNC-Zweig befinde (z.B. durch Start "Explorer \\800\c$\" und klicke auf den dortigen Ordner \Transfer, kommt diese Fehlermeldung: "CMD.EXE wurde mit \\800\c$ (Beispiel) als aktuellem Verzeichnis gestartet. UNC-Pfade werden nicht unterstützt. Stattdessen wird das Windows-Verzeichnis als aktuelles Verzeichnis gesetzt. "\\800\c$\Transfer" ist ein ungültiger aktueller Verzeichnispfad. UNC-Pfade werden nicht unterstützt." Die letzte Zeile der Fehlermeldung ("800\...") kommt vom Befehl cd"%1%" und läßt sich durch Eingabe an der Konsole replizieren. Weil ich gerne auch in UNC-adressieren Netzlaufwerken direkt mit der Konsole arbeiten möchte, meine Fragen: - Kennt jemand eine Konsole, mit der das möglich ist? - Kennt jemand ein Workaround / eine Einstellung für CMD mit UNC-Unterstützung? - Gibt es eine Möglichkeit "CD \\Computername\Freigabename\Ordner" über eine Utility zu bewirken? Schonmal vielen Dank fürs Überlegen, Euer Finanzamt Zitieren Link zu diesem Kommentar
thorgood 10 Geschrieben 9. Mai 2005 Melden Teilen Geschrieben 9. Mai 2005 Hi Finanzamt, versuch es so. Auf einem UNC Pfad wird temporär ein freier Laufwerksbuchstabe gemappt. Verlässt du das Fenster mit exit wird das Mapping gelöscht, schliesst du über x bleibt es erhalten. Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\Directory\shell\CmdStartNet] @="KonsoleStarten Netz" [HKEY_CLASSES_ROOT\Directory\shell\CmdStartNet\command] @="cmd.exe /k pushd \"%L\"" thorgood Zitieren Link zu diesem Kommentar
Verti 10 Geschrieben 9. Mai 2005 Melden Teilen Geschrieben 9. Mai 2005 Guck dir mal bei MS den kb156276 an. Vielleicht hilft dir das. Zitieren Link zu diesem Kommentar
Finanzamt 73 Geschrieben 9. Mai 2005 Autor Melden Teilen Geschrieben 9. Mai 2005 @Thorgood: Danke für den Tip. Es funktioniert. Auf pushd mit der erweiterten Befehlssyntax wäre ich nie gekommen, weil PushD[ir] bei mir immer noch der gleichnamigen Uralt-Utility aus reinen Doszeiten verknüpft ist. @alle, die das auch in Erwägung ziehen: Man macht dann sinnvollerweise eine weitere Kontexterweiterung. Gegrüßt! Zitieren Link zu diesem Kommentar
Finanzamt 73 Geschrieben 9. Mai 2005 Autor Melden Teilen Geschrieben 9. Mai 2005 @verti: Danke für den Hinweis. Leider funktioniert das Ändern des Reg.-Wertes gemäß http://support.microsoft.com/?kbid=156276 nicht. Es bezieht sich wohl auf script- oder API-basierte Aufrufe via CreateProcess. Jedenfalls bewirkt DisableUNCCheck "1" nach meinen Versuchen keine Änderung im Verhalten beim Aufruf von z.B. CD [uNC-Pfad]. Der UNC-Pfad wird ja gewissermaßen als Parameter für CMD selbst mitgeschickt. Die im KB-Artikel genannte aktualisierte CMD für NT ist übrigens im SP6 enthalten und W2K ist davon nicht tangiert. Gegrüßt! Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.