Command Prompt von VS .NET jederzeit zur Hand

Veröffentlicht: 21. Nov 2005
Von Mathias Schiffer

Das Visual Studio .NET Command Prompt ist ein praktisches Kommandozeilenwerkzeug mit nützlich gesetzten Pfadeinstellungen und Umgebungsvariablen. Noch praktischer wird es, wenn es jederzeit schnell und kontextsensitiv zur Hand ist.

Das Visual Studio .NET Command Prompt ("Eingabeaufforderung") kennen Sie nicht zuletzt aus dem "Visual Studio .NET Tools"-Startmenüeintrag einer Visual Studio .NET-Installation. Dort jedoch führt es ein viel zu tristes Leben - ist es doch in vielen Situationen nützlich, in denen Kommandozeilenwerkzeuge aus dem .NET Framework zum Einsatz kommen können. Startmenü-Klickorgien sind hier nicht angebracht. In diesem MSDN Quickie stellen wir Ihnen daher Möglichkeiten vor, diese spezielle Eingabeaufforderung direkter verwenden zu können.

Auf dieser Seite

 Command Prompt per Shortcut oder Schnellstartleiste aufrufen
 Command Prompt als externes Visual Studio .NET-Tool
 Command Prompt als Explorer-Kontextmenü-Erweiterung
 Kombiniertes Command Prompt- und Befehlsfenster

Command Prompt per Shortcut oder Schnellstartleiste aufrufen

So trivial diese ersten beiden Möglichkeiten auch sind: Sie sind effizient. Ziehen Sie einfach den Eintrag "Visual Studio .NET Command Prompt" bei gedrückter Steuerungstaste aus dem Startmenü heraus auf die Schnellstartleiste. Nutzen Sie die Schnellstartleiste nicht oder gefällt Ihnen die prominente Platzierung dort nicht, so können Sie die Kopie der Startmenü-Verknüpfung auch auf dem Desktop anlegen. Auf der Eigenschaftenseite der Verknüpfung können Sie dann eine Tastenkombination als "Shortcut" vergeben. So wird die .NET-Eingabeaufforderung jederzeit per Tastenkombination aufrufbar.

Command Prompt als externes Visual Studio .NET-Tool

Zweckgebundener ist die Möglichkeit, die .NET-Eingabeaufforderung in Visual Studio .NET als externe Anwendung einzubinden. Zum allgemeinen Vorgehen gibt Ihnen der MSDN Quickie "Projektmappen-Verzeichnis aus VS.NET heraus im Explorer öffnen" hilfreiche Hinweise. An dieser Stelle soll daher eine Kurzanleitung ausreichen:

Starten Sie Visual Studio .NET und wählen Sie aus dem Menü "Extras" den Menüpunkt "Externe Tools" aus. Betätigen Sie dort den Button "Hinzufügen" und füllen Sie die verfügbaren Felder aus wie folgt:

Titel: Visual Studio .NET &Command Prompt
Befehl: %comspec%
Argumente: \k C:\PROGRA~1\MICROS~2.NET\Common7\Tools\vsvars32.bat
Ausgangsverzeichnis: $(ProjectDir)

Passen Sie den Pfad im Feld "Argumente" entsprechend Ihrer Installationsgegebenheiten an, entscheidend sind der Kommandozeilenschalter /K und der Pfad zur Batchdatei vsvars32.bat. Bedauerlicherweise ist hier eine Angabe des Pfades mit Leerzeichen (auch in Anführungszeichen) nicht möglich. Daher müssen Sie diesen Pfad zunächst in seine 8.3-Darstellung umwandeln. Dabei hilft Ihnen bei Bedarf der MSDN Quickie "Kurze und lange Dateinamen konvertieren".

Definition der .NET-Eingabeaufforderung als externes Tool in VS .NET
Abbildung 1: Definition der .NET-Eingabeaufforderung als externes Tool in VS .NET

Betätigen Sie nun die OK-Schaltfläche, so beschwert Visual Studio .NET sich darüber, dass "%comspec%" kein gültiger Dateipfad sei. Ignorieren Sie diese Fehlermeldung - COMSPEC enthält als Umgebungsvariable den Pfad zum Kommandozeileninterpreter (standardmäßig COMMAND.COM oder CMD.EXE) und lässt sich trotz der Ermahnung auch in diesem Fall korrekt einsetzen.

Ab sofort finden Sie im Extras-Menü einen neuen Menüpunkt, über den Sie das Visual Studio .NET Command Prompt mit dem Projektverzeichnis des jeweils aktiven Projekts als Arbeitsverzeichnis starten können. Wünschen Sie standardmäßig ein anderes Arbeitsverzeichnis, so können Sie dieses im vorgenannten Dialog im Feld "Ausgangsverzeichnis" nach Ihrem Belieben definieren.

Command Prompt als Explorer-Kontextmenü-Erweiterung

Interessant und besonders kontextsensitiv einsetzbar ist die Variante, die .NET-Eingabeaufforderung vom Windows Explorer aus über das Kontextmenü aufzurufen. So lässt sich das Tool nicht nur jederzeit aus dem Windows Explorer heraus starten, sondern öffnet sich auch gleich mit jeweiligen Arbeitspfad.

Um diesen Komfort im Windows Explorer genießen zu können, sind einige Erweiterungen an der Registry notwendig. Kopieren Sie den folgenden Codekasten in einen Texteditor und speichern Sie die Inhalte in einer Datei DOTNETPROMPT.REG:

Windows Registry Editor Version 5.00
  
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\VSCP]
@="VS.NET Eingabeaufforderung"
  
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\VSCP\command]
@="cmd.exe /k \"c:\\Programme\\MICROSOFT VISUAL STUDIO .NET 2003\\Common7\\Tools\\vsvars32.bat\""
  
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Drive\shell\VSCP]
@="VS.NET Eingabeaufforderung"
  
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Drive\shell\VSCP\command]
@="cmd.exe /k \"c:\\Programme\\MICROSOFT VISUAL STUDIO .NET 2003\\Common7\\Tools\\vsvars32.bat\""

Starten Sie diese Datei durch einen Doppelklick und bestätigen Sie die Rückfrage, ob die Daten tatsächlich in die Windows-Registrierungsdatenbank eingetragen werden sollen.

Ab sofort können Sie im Windows Explorer aus dem Kontextmenü für Verzeichnisse und Laufwerke das Visual Studio .NET Command Prompt so starten, dass die ausgewählten Pfade/Laufwerke die Arbeitspfade der Eingabeaufforderung sind.

Kombiniertes Command Prompt- und Befehlsfenster

Der Favorit des Autors ist die folgende Möglichkeit für den Einsatz des Visual Studio .NET Command Prompts. Diese Möglichkeit bietet eine Kombination aus dem Befehlsfenster der Entwicklungsumgebung, zu dem Sie im MSDN Quickie "Befehls- und Kommandozeilenfenster in Visual Studio .NET" einige nützliche Tipps finden, und einer vollwertigen .NET-Eingabeaufforderung.

Der Schlüssel zu dieser Lösung ist eines der ".NET PowerToys" von Microsofts GotDotNet-Website. Es nennt sich "VSCMDShell" und ist in verschiedenen Versionen für Visual Studio .NET 2003 und Visual Studio 2005 hier herunterzuladen.

Haben Sie das passende Paket installiert, so steht Ihnen beim nächsten Start von Visual Studio .NET im Extras-Menü an erster Stelle der neue Menüeintrag "VSCmdShell Window" zur Verfügung. Der Autor hält eine Positionierung im Menü "Ansicht" für deutlich besser geeignet - dank freier Anpassbarkeit der Visual Studio .NET-Menüs ist das entsprechende Verschieben des Menüpunkts natürlich kein Problem.

Das VSCmdShell Window in voller Aktion
Abbildung 2: Das VSCmdShell Window in voller Aktion

Wählen Sie den Menüpunkt an, so öffnet sich das versprochene Fenster, das Sie selbstverständlich wie gewohnt auch in der MDI-Umgebung andocken können. Wie die anderen Ausgabefenster der Entwicklungsumgebung merkt auch dieses sich über verschiedene Sessions hinweg seine Position und seinen Andockstatus. Komfort pur!

Mathias Schiffer widmet sich als freier Technologievermittler und Entwickler großen Projekten ebenso wie arbeitserleichternden Alltagslösungen. Seit Jahren gibt er sein Wissen und seine Erfahrungen in unzähligen Publikationen und Beratungen auch an andere Entwickler und Entscheider weiter. Sie erreichen Mathias Schiffer per E-Mail an die Adresse Schiffer@mvps.org.


Anzeigen: