どのように解決できます:カスタムMSBuildタスクが必要で組み立て外AppBase

StackOverflow https://stackoverflow.com/questions/690432

質問

いカスタムタスクをしたい時に実行す棟私C#プロジェクト.このタスクであMyTask.dllは、参照の他の組立MyCommon.DLL.

問題はMyCommon.dll り"..\Common\MyCommon.dll"との対比MyTask.dllに、海外でのAppBase dirのためのMSBuildます。いるものであることが確認できたが実際の問題を分析しMSBuildのログを見た核融合の報告に結合失敗。

めにどうしたらいいのだろうかを統合することにより、核融合の探しMyCommon.dll の構築ですか?注の動きの組み立ても私のアプリによっても異なります。

更新:もういっちょうらを用いたピる.他のソリューション全てを必要とシステム全体の変更は、いなだけじゃない傷を付けても必要です。

役に立ちましたか?

解決

なのでコピーしょうか?ただ思っている。してコピーしたばかりでございますので、これを削除してしまった一度だけ行っています。

他のヒント

見て、多様なソリューション:

1: 追加議会におけるGAC(組み立てない名称)

gacutil /I <assembly name> 

2: アセンブリを配置すよ Codebasesやプロービング, に、お 機です。config ファイルまたは msbuild.exe.config .

<configuration>
   <runtime>
      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
         <dependentAssembly>
            <assemblyIdentity name="MyCommon"
                              publicKeyToken="32ab4ba45e0a69a1"
                              culture="neutral" />
            <codeBase version="2.0.0.0"
                      href="file://C:/yourpath/MyCommon.DLL"/>
         </dependentAssembly>
      </assemblyBinding>
   </runtime>
</configuration>

3: コピーの組み立てが同じディレクトリの前に削除してください後、David Mは言った。

オプションが使用 ILMerge マネジメントの依存関係の課題はます。

これらすべてのソリューション"が作りの依存関係する複雑な環境にがあってしかるべきだと思うく更新のプロービングパス実行時に..

具体的にはMSBuildを許可すべき追加プロービングパスでおります。projファイルの指定に依存dll

を定義することができるカスタムUsingTask:

<UsingTask TaskName="Task" AssemblyFile="Assembly.dll" />

でもお客さんは追加の依存関係?こんばんは、まらしぃです。このようなもの

<UsingTask TaskName="Task" AssemblyFile="Assembly.dll">
<DependantAssembly AssemblyFile="dependant.dll"/>
</UsingTask>

が、これかをサポー---

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top