Darkleo’s Blog
Ein Schatz, der seinen Besitzer überallhin begleitet.

Hilfreiche Externe Tools in Visual Studio

February 12th, 2008 by darkleo

Bei der Arbeit mit Gac müsste ich oft den public key token in den web.configs eingeben und das alles über umständliche Wege und auch das Installieren und Deinstallieren von Assemblys sollte schneller gehen können.

Hier ist die Abhilfe über Externe Tools von VisualStudio [Tools]->[External Tools...]
externe_tools_menu.jpg 
externe_tools.jpg
Die Einstellungen
"Use Output window" + "Treat output as Unicode" ermöglicht eine einfachere Ausgabe im Output-Fenster.
"Promt for arguments" für eigene Parametereingaben
"Close on exit" um das Consolen-Fenster automatisch nach der Verarbeitung zu beenden

Hilfreiche Tools
Darkleo SN
Command: C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin\sn.exe
           oder C:\Programme\Microsoft Visual Studio 8\SDK\v2.0\Bin\sn.exe
Arguments: -Tp "$(TargetPath)"

Darkleo SecUtil
Command: C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin\secutil.exe
    oder C:\Programme\Microsoft Visual Studio 8\SDK\v2.0\Bin\secutil.exe
Arguments: -hex -s $(TargetPath)

Darkleo GAC Install
Command: C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin\gacutil.exe
oder C:\Programme\Microsoft Visual Studio 8\SDK\v2.0\Bin\gacutil.exe
Arguments: -i $(TargetPath)

Darkleo GAC Uninstall
Command: C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin\gacutil.exe
oder C:\Programme\Microsoft Visual Studio 8\SDK\v2.0\Bin\gacutil.exe
Arguments: -u $(ItemFilename)

Zum Portieren (Import/Export) der Extrernal Tools von VS 8.0 auf VS 9.0 ist es Hilfreich zu wissen, dass External Tools in der Regestry abgelegt werden:
HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\8.0\External Tools
HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\9.0\External Tools

WSS External Tools: Automation in Visual Studio 2005 for WSS v3 Feature Development  

Für alle die Selbst Tools einbinden wollen, ist hier die Liste der einzelnen Parameter.

Name Argument Beschreibung
Elementpfad $(ItemPath) Der vollständige Dateiname der aktuellen Quelle (als Laufwerk + Pfad + Dateiname definiert); leer, wenn das aktive Fenster kein Quellfenster ist.
Elementverzeichnis $(ItemDir) Das Verzeichnis der aktuellen Quelle (als Laufwerk + Pfad definiert); leer, wenn das aktive Fenster kein Quellfenster ist.
Elementdateiname $(ItemFilename) Der Dateiname der aktuellen Quelle (als Dateiname definiert); leer, wenn das aktive Fenster kein Quellfenster ist.
Elementerweiterung $(ItemExt) Die Dateinamenerweiterung der aktuellen Quelle.
Aktuelle Zeile &(CurLine) Die aktuelle Zeilenposition des Cursors im Editor.
Aktuelle Spalte &(CurCol) Die aktuelle Spaltenposition des Cursors im Editor.
Aktueller Text &(CurText) Der markierte Text.
Zielpfad $(TargetPath) Der vollständige Dateiname des zu erstellenden Elements (als Laufwerk + Pfad + Dateiname definiert).
Zielverzeichnis $(TargetDir) Das Verzeichnis des zu erstellenden Elements.
Zielname $(TargetName) Der Dateiname des zu erstellenden Elements.
Zielerweiterung $(TargetExt) Die Dateinamenerweiterung zu erstellenden Elements.
Projektverzeichnis $(ProjDir) Das Verzeichnis des aktuellen Projekts (als Laufwerk + Pfad definiert).
Projektdateiname $(ProjFileName) Der Dateiname des aktuellen Projekts (als Laufwerk + Pfad + Dateiname definiert).
Projektmappenverzeichnis $(SolutionDir) Das Verzeichnis der aktuellen Projektmappe (als Laufwerk + Pfad definiert).
Projektmappen-Dateiname $(SolutionFileName) Der Dateiname der aktuellen Projektmappe (als Laufwerk + Pfad + Dateiname definiert).

Posted in .NET, Macro, VisualStudio

Leave a Comment

Please note: Comment moderation is enabled and may delay your comment. There is no need to resubmit your comment.