MFC42.dllにアクセスできません。

なんでか知らんけどアプリケーションが起動しなかったのでそのトラブルシューティングをメモ。

  1. 普段使いユーザーでログイン
  2. アプリケーションが起動しない!
  3. 起動するアプリケーションもある→システム全体の問題ではなさそう
  4. 同じようなメッセージで別のアプリも起動しない→でもアプリ固有の問題ではなさそう
  5. adminユーザーでは起動する→アプリは正しくインストールされている。アクセス権がらみと想像
  6. 普段使いユーザーにadmin権限を与えてみる→起動した。やっぱりアクセス権っぽい。
  7. ぐぐってみると以下のような文を発見→やっぱりアクセス権らしい。以前は大丈夫だったのでNTFSによるアクセス権の問題と想像する。
  8. アクセス権を戻し、Dependency Walker*1で依存関係をチェック→MFC42.dllにマークが。なんでや?
  9. adminユーザーでmfc42.dllのアクセス権をチェック→なぜか一般ユーザーは使えない設定に。なんでや?
  10. とりあえずそこらへんのファイルと同じ設定にする。→起動した!なんでかわからんけどとりあえずいいや。

440 名前: 名無しさん@お腹いっぱい。 投稿日: 02/05/12 01:35
MSDNで 0xc00000022 を検索してみたら、ファイル(この場合だとbash.exe) へのアクセス権が無いと言われてるようで

っつうわけでMFC42.dllのアクセス権が問題で起動しなかったわけですが、これはどこかへいって「直してくれ」といわれてもできんなぁ。フィールドサポートの皆さんは普段からこんな大変なことをやっているのか。頭が下がります。はい。

*1:VC付属のDLLとかの依存関係をチェックするソフト。google:Dependency Walker