1

C# を使用して Enterprise Architect アドインを構築しています。SVN リポジトリとやり取りする必要があります。VS2010 と SharpSVN をライブラリとして使用して、SVN リポジトリとやり取りしています。アドインを .NET 3.5 に変更すると、アドインが正常に動作します。しかし、別のアドインに問い合わせる必要があり、そのアドインは 4.0 としか互換性がありません。

しかし、アドイン コードを .NET 4.0 に変更すると、有名なエラーが発生します。

「混合モード アセンブリは、ランタイムのバージョン 'v2.0.50727' に対してビルドされており、4.0 ランタイムに読み込むことができず、何らかの構成などが必要です」

私はここでその問題に関するさまざまなトピックを読みましたが、app.config ファイルを追加することをお勧めします。タグ付き

<Configuration>
<startup useLegacyV2RuntimeActivationPolicy="true">
  <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
<runtime>
  <NetFx40_LegacySecurityPolicy enabled="true"/>
</runtime>
</Configuration>

同じように、さまざまな投稿からこれにタグを付けます。私はすべての人を試しましたが、それでも問題は残ります。VS2010 が Debug フォルダーにファイル名の設定ファイルを自動的に生成することを確認しました。

誰かが私に解決策を提案できますか? たとえば、私のアドイン名は MyAddIn なのでVS2010、上記のタグを使用して MyAddIn.dll と MyAddIn.dll.config を生成します。

しかし、問題はそこに残ります。Windows 7 64 ビットを使用しています。

どんな助けでも大歓迎です。

4

1 に答える 1

3

*.dll.config の設定は役に立たないため、必要なものを取得できません。dll は Enterprise Architect によってロードされるため、*.app.config ファイルを変更してそのような設定を含める必要があります。通常、dll は単なるアドインであるため、これは不可能です。

回避策は、.NET 4 に対して dll をコンパイルするだけでなく、.NET 4 に対してすべての依存関係をコンパイルする、.NET 4 への完全な移行を実行することです。

于 2012-11-05T07:58:39.750 に答える