PIYO - Tech & Life -

サイドバイサイド構成が正しくないエラーは依存モジュールのバージョン確認で解消

この間はリンクしたライブラリの影響で起動できない問題があったが、今度はもらった実行ファイルが動かないという問題が起きた。

ちなみに以前のはこちら。

VS2005 アプリケーション構成が正しくない - ぴよログ

今回はもらった実行ファイルを動かそうとしたら「サイドバイサイド構成が正しくないうんぬん」という、これまた同じエラーでそこそこよく見るものが出てしまった。

このエラーは詳細な情報を見ることができる。

そのためには管理ツールというものを起動する必要がある。エクスプローラとかにあるコンピュータ(またはPCなど)となっているところを右クリックすると「管理」というメニューが出てくる。

これをクリックすると次のような管理ツールが開く。

左側のツリーから「コンピュータの管理」→「システムツール」→「イベントビューアー」→「Windowsログ」→「Application」と辿ることでさきほどのエラーのログが溜まっているところにたどり着く。

で、真ん中のビューで「エラー、SideBySide」などとなっているところを選択すると下の部分にもう少し詳しい情報が出ていることがわかる。

その部分を引用すると、

"C:\hogehoge\hoge.exe" のアクティブ化コンテキストの生成に失敗しました。 
従属アセンブリ Microsoft.VC80.MFC,processorArchitecture="x86",
publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.6195" 
が見つかりませんでした。 詳細な診断を行うには sxstrace.exe を実行してください。

このように書かれていることがわかった。めちゃくちゃ要約すると実行ファイルが依存しているモジュールがに当たらないというわけだ。

開発環境のバージョンや再頒布パッケージが足りないことが主な原因で、不足しているモジュールをインストールすれば解決することもある。

このモジュールは大体C:\Windows\WinSxSに入っていて、エラーとなる場合は該当バージョンが存在しないことも見ればわかる。

で、どうすれば解決できるかというと、見つからなかったモジュールのバージョンでググってやればよい。今回の場合は8.0.50727.6195がそれに該当する。

検索してみると、それっぽい情報がいくつか出てくるし、マイクロソフトのダウンロードページも出てくる。

8.0.50727.6195 - Google 検索

今回に関しては関係するアップデートをインストールしたら問題のエラーも起こらなくなり、アプリケーションを起動できた。

余談

ちなみに、前回似たようなエラーではまったこちらの問題については、該当バージョンを入れても直らなかったので全く別の問題のようだ。とりあえず動いているのでよしとする。

VS2005 アプリケーション構成が正しくない - ぴよログ