2012-04-26 12 views
0

protobuf-csharp-portを使用してプロトコルバッファを取得しようとしています。 .protoファイルを追加してカスタムツールを使用し、.csファイルを取得することで自動ビルドを行いたいと思います。カスタムツールでは、csharp-testパッケージからCmdToolを取得して登録するように指示されています。カスタムビルドツールを使用してC#ファイルを作成する

働いていたが、その後、私は

System.InvalidOperationException: Before a project can be instantiated, Engine.BinPath 
must be set to the location on disk where MSBuild is installed. This is used to evaluate 
$(MSBuildBinPath). 
at Microsoft.Build.Shared.ErrorUtilities.ThrowInvalidOperation(String resourceName, Object[] args) 
at Microsoft.Build.BuildEngine.Project..ctor(Engine engine) 
at CSharpTest.Net.CustomTool.VsInterop.CmdTool.GenerateCode(String defaultNamespace, 
    String inputFileName) in e:\Projects\Library\Tools\CmdTool\VsInterop\CustomTool.cs:line 50 

を取得するツールを実行している私は私の要素のうち道だし、何をすべきかいずれかの手がかりを見つけることができないよう、または$(MSBuildBinPathを取得する方法)またはEngine.BinPathが発生しています。

また、F7からprotogenを実行する方法が複雑であっても、それはいいと思います。

+0

の同様の質問:HTTP ://stackoverflow.com/questions/453820/protocol-buffers-in-c-sharp-projects-using-protobuf-net-best-practices-for-cod – heavyd

+0

その質問に対する受け入れられた回答がインストールされなかった場合他のprotobuf/C#のソリューション私は興奮するだろう。私はこのウサギの穴がどのくらい深く掘り下げられているのか悩んでいます。 –

+0

ああ..はい。 CmdToolの出力ウィンドウとログファイルを調べてみましたか? (http://help.csharptest.net/?CmdToolVisualStudio.html) – heavyd

答えて

1

私はVisual Studio 2008でまったく同じ問題を抱えていました。私は、ツールの作成者と協力して解決策を見つけ出し、彼のステップが私のために働いていました。

  1. ダウンロードNugetパッケージ "Csharptest.net.tools"

  2. ファイル名を指定して実行 "ツール/ net40/CmdTool.exe登録"

  3. 再起動VStudio

関連する問題