VisualStudio2012を入れての不具合?

VisualStudio を過去のバージョンをいくつかインストールしている人は自分だけでは無いと思います。
今回VisualStudio 2012をインストールした後で、過去のVisualStudioがエラーを吐くような状態になってしまい、ちょっと困っていた&解決策を見つけたので、メモがてら書いてみようと思います。

その今回困ったという現象が、VisualStudio 2012をインストールした後でVisualStudio 2010でのビルドがことごとく失敗するという物です。エラーメッセージとしては次のような物が出てきます。
LINK : fatal error LNK1123: COFF への変換中に障害が発生しました: ファイルが無効であるか、または壊れています。

そのときの画面の状態は以下のような感じです。

この現象が出てしまっている人はそれなりに居るようで、ほとんどの場合は次のような対処で問題を回避しているようです。

  • 埋め込みマニフェストをオフにする。
    (プロジェクトのプロパティで、マニフェストツール/入出力カテゴリで、埋め込みマニフェスト を”いいえ”にする)
  • あるいは、インクリメンタルリンクをオフにする
  • さらには、.rcのリソースファイルを削除(可能ならば)

でもこの問題の起こる原因は、VisualStudio 2010 にあり、VisualStudio 2012 の問題ではないということでした。問題解決のためには、VisualStudio 2010 の ServicePack (SP1)をインストールすることが必要でした。ここでSP1をインストールして再度同じプロジェクトをビルドしてみたところ、問題は起こらないようです。

問題が起こっている人は、VS10sp1-KB983509.exe (VisualStudio 2010 SP1)をインストールしてみてください。ちなみにVS2012を入れた後にインストールしても問題は起こらないようですよ。

まとめると、VisualStudioは複数インストールしてもいいが、その際に過去のバージョンのServicePackは事前に当てておきましょう、ということになるでしょうか。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする