2009-05-18 10 views
0

Ich möchte ein Postbuild-Skript erstellen, das die generierte pdb wie folgt in den gac-Ordner kopiert: copy $ (TargetDir) $ (TargetName) .pdb C: \ Windows \ Assembly \ GAC_MSIL \ $ (TargetName) \? Öffentlicher Token? aber ich brauche das öffentliche Token des aktuell erstellten Projekts, gibt es eine Möglichkeit, das zu bekommen?So erhalten Sie öffentliche Token in ms nach Ereignismakros

Antwort

0

Von Ihrer Frage, ich denke, Sie suchen nach etwas, das Sie schnell zu Ihrem Post-Build-Ereignis von Visual Studio hinzufügen können. Wenn Sie XCOPY verwenden, können Sie im Zielpfad einen Platzhalter angeben. Das könnte für Sie ausreichend sein:

XCOPY "$(TargetDir)$(TargetName).pdb" "%WINDIR%\Assembly\GAC_MSIL\$(TargetName)\*\" 

Eine weitere Option ist, um zu versuchen, den öffentlichen Schlüssel-Token zu extrahieren mit der SN.exe mit Rahmen versehen. Dies könnte etwa so aussehen:

FOR /F "usebackq tokens=5" %%T in (`sn.exe -q -T "$(TargetDir)$(TargetName).dll"`) DO COPY ""$(TargetDir)$(TargetName).pdb" "%WINDIR%\Assembly\GAC_MSIL\$(TargetName)\%%T\" 

In Wirklichkeit ist aber nicht das Zielverzeichnis der Assemblierung-Version sowie das öffentliche Schlüsseltoken enthält?

Schließlich können Sie immer die MSBuildExtensions Bibliothek herunterladen, die eine Assembly Aufgabe enthält (oder eine benutzerdefinierte Aufgabe selbst implementieren). In diesem Fall müssen Sie Ihre proj-Datei jedoch manuell bearbeiten.

Überprüfen Sie auch diese blog entry - es könnte für Sie von Interesse sein.

Verwandte Themen