2012-04-16 4 views
0

OpenCoverを使用してiisexpress.exeをプロファイルするには、2つのターゲットを同時に実行する必要があります。 以下のリンクは、私が持っている問題に関する情報に関連しています。MSBuild.ExtensionPackの使用方法

https://github.com/sawilde/opencover/issues/92#issuecomment-5143204

これは、CodePlexのからMsbuild.ExtensionPackを使用するように私に提案しました。

私はMSBuild Extensionのソースコードをダウンロードしました。

私はそれを編集しました。 MSBuild.ExtensionPack.tasksタスクファイルをBuildBinariesフォルダにコピーしました。

以下の行をプロジェクトファイルに追加しました。

私はExecMultipleTasksターゲットを実行しようとしていました。しかし、以下のエラーを取得します。

エラーMSB4036: "MSBuild.ExtensionPack.Framework.Parallel"タスクが見つかりませんでした。以下を確認してください。 1.)プロジェクトファイル内のタスクの名前は、タスククラスの名前と同じです。 2.)タスククラスは "public"で、Microsoft.Build.Framework.ITaskインターフェイスを実装しています。 3.)タスクは、プロジェクトファイルまたは「C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319」ディレクトリにある* .tasksファイルで正しく宣言されています。

この問題を解決する方法を教えてください。

ありがとう、

Venkat。

+1

msbuildで拡張パックをどのように参照していますか? –

+0

こんにちは、私はCodePlexからソースコードをダウンロードしてコンパイルし、dllを「C:¥Program Files(x86)¥MSBuild¥ExtensionPack」フォルダにコピーしました。私のやり方には問題があるようです。代わりにインストーラファイルを入手してインストールしました。それは働き始めた。以下は、私がエクステンションパックのタスクをどのように参照しているかのコード行です。 <プロジェクトのインポート= "C:¥Program Files(x86)¥MSBuild¥ExtensionPack¥4.0¥MSBuild.ExtensionPack.tasks" /> – user965291

答えて

0

C:\ Program Files(x86)\ MSBuild \ ExtensionPack \ 4.0 \ MSBuild.ExtensionPack.tasksファイルを開くと、MSBuild.ExtensionPack.Framework.ParallelタスクのDLLへのパス正しいものではありません。

<UsingTask AssemblyFile="$(ExtensionTasksPath)MSBuild.ExtensionPack.dll" TaskName="MSBuild.ExtensionPack.Framework.Parallel"/> 

私は、変数$(ExtensionTasksPathが)バージョンのビルド・パスを見つけられません想像します。そのパスにファイルをコピーするか、新しいパスを変更/ハードコードします。

1

あなたのアプリケーションが使用しているビジュアルスタジオのバージョンは?その32ビットがVSの場合、32ビットExtension Pack(MSBuild.Extension.Pack.4.0.12.0.zip \ 4.0.12.0 \ x86)をインストールします。それ以外の場合は64ビットになります。

+0

ありがとうございます!これはまさに私が必要としていたものです。 – Bonez024