アプリケーションの1つをVS2010からVS2012に移動することを検討していました。ソリューションはかなりの数のプロジェクトで構成されているので、主要な部分の概要を説明します。
エントリポイントは、.NET3.5SP1に基づくWPFアプリケーションです。このプロジェクトは、VS2008のVC90ライブラリでコンパイルされた.NET2.0クラスライブラリと.NET2.0 C ++/CLRライブラリを参照します。.NET2.0クラスライブラリもC++ライブラリを使用します。
私は外部バイナリをあまり使用しません。実際、WiX以外にあるのは、WPF Toolkit(http://wpf.codeplex.com/releases/view/29117)だけです。
では、どうなりますか?Win8上のVS2010(VC90ライブラリ用にインストールされたVS2008)を使用してアプリケーションをコンパイルすると、すべてのプラットフォームですべてが正常に実行されます。ここで、ソリューションをVS2012に移植し(もちろん、VC90ライブラリ用にVS2008とVS2010をインストールして)、ビルドを作成すると、Win7、Win8、およびServer2008R2で正常に機能します。ただし、XPおよびServer 2003で起動すると、VS2012によって作成されたバイナリがクラッシュします。インストールされている.NET 3.5 SP1を確認し、VS2010によって作成されたバイナリを使用して検証しました。彼らが働きます。
エラーは、単純なクラッシュレポートウィンドウと次の詳細を含むイベントログエントリです。.NETランタイム2.0エラーレポート障害のあるアプリケーションapplication.exe、バージョン1.0.0.0、スタンプ50a39d24、障害のあるモジュールkernel32.dll、バージョン5.2.3790.4480、スタンプ49c51e7e 、デバッグ?0、障害アドレス0x0000bef7。
これは私にはまったく役に立ちません。これを修正する方法や、さらに調べる場所についてのアイデアはありますか?
前もって感謝します!