を使用してロードされたとき、私はSQL管理オブジェクト(Microsoft.SqlServer.Smo.dll)を使用するアプリケーションを持って作業していませんそれは作品「useLegacyV2RuntimeActivationPolicyは=真」私は、それは.NET 4で動作させるために、アプリケーションがProcess.Start
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0"/>
</startup>
、私はそれが動作しません
System.Diagnostics.Process.Start("myApplicationThatUsesSmo.exe")
を使用して、別のアプリケーションからこのアプリケーションを実行する場合:app.configファイルで、このブロックを挿入する必要があります。 LegacyV2Runtimeはアクティブ化されていません。
私はこの実装を使用:
http://reedcopsey.com/2011/09/15/setting-uselegacyv2runtimeactivationpolicy-at-runtime/
LegacyV2Runtimeがロードされ、それがないかどうかをチェックします。アプリケーションを直接実行した場合、またはVS2010から実行した場合、テストは成功し、Smoが機能します。
誰も私が逃していることを知っていますか?
まあ、非常に奇妙な、あなたはProcess.Startを(使用する場合にapp.configファイルが動作しないことは良い理由が)確かにありません。 Windowsと同じ方法で実行可能ファイルを開始します。 Fuslogvw.exeを使用して、すべてのバインディングを記録して、洞察を得ようとします。 –