2009-05-18 8 views
0

生成されたpdbをgacフォルダにコピーするポストビルドスクリプトを作成したいと思います。copy $(TargetDir)$(TargetName).pdb C:\ Windows \アセンブリ\ GAC_MSIL \ $(TargetName)\?パブリックトークン?しかし、私は現在のビルドプロジェクトの公開トークンが必要です、これを得る方法はありますか?msポストイベントマクロで公開トークンを取得する方法

答えて

0

あなたの質問から、私はあなたがVisual Studioのポストビルドイベントにすばやく追加できるものを探していると思います。 XCOPYを使用する場合は、宛先パスにワイルドカードを指定できます。それはあなたのために十分であるかもしれない:

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

別のオプションは、フレームワークを提供SN.exeを使用して、公開キートークンを抽出しようとすることです。

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\" 

実際には、ターゲットディレクトリにはアセンブリバージョンと公開鍵トークンが含まれていませんか?

最後に、タスクを含むMSBuildExtensionsライブラリをダウンロードすることができます(または自分でカスタムタスクを実装することもできます)。ただし、この場合は、projファイルを手動で編集する必要があります。

また、このblog entryをチェックしてください - それはあなたにとって興味深いかもしれません。

関連する問題