Visual Studio 2005にサービスパックを当てると、Cランタイムがアップデートされる

サービスパックを当てると、自分の作ったアプリケーションが他の環境で動作しなくなります。最近ハマりました。(5分で解決したけど)

何故、動作しないかというと、C++のランタイムのバージョンが微妙に上がっているからです。


エラーメッセージみたらSxSがどーのこーのと、書かれていました。最近じゃIDEでコンパイルすると勝手にmanifest埋めてくれるのね。

しかし、何せ今日現在、新しいランタイムを簡単に取得する方法がありません。今まではとりあえずコレいれてね、で済んだのにいくら探してもWeb上にないんです。

(追記)4月10日になってやっと公開されました。これを入れれば解決です。

仕方がないので、ローカルにある再配布可能なファイル(上位エディション限定?)である「vcredist_x86.exe」を調べてみたところ、ちゃんと最新のものに置き換わっている為、これを配布すれば動作します。デフォルトでは、「C:Program FilesMicrosoft Visual Studio 8SDKv2.0BootStrapperPackagesvcredist_x86vcredist_x86.exe」に有るはずです。

そりゃないぜ、MSさんよ。

# 当然ですが、静的リンクした場合はランタイムの配布が不要です。



(2007/03/01) 再配布可能ファイルを見つけた為、追記。

(2007/04/23) 再配布可能ファイルがWeb上で公開されたため、訂正。

Leave a Reply

最初のコメントを頂けますか?

更新通知を受け取る »
avatar
wpDiscuz