あるソフトウエアを起動すると、「Microsoft Aisual C++ Runtime Library」と言うエラーが出ます

Anonymous
2015-02-27T02:23:02+00:00

Runtime エラーに付いて

あるソフトウエアを起動すると、「Microsoft Aisual C++ Runtime Library」と言うエラーが出ます。

自分で調べて今入っているC++のRuntimeを一旦アンインストールし、C++2005とC++2008とC++2010と言うRuntimeを新規にインストールしました。

再起動、Windows Updateも行いましたがまだエラーを吐きます。

PC環境は、

Winndows7の32ビット

CPUコア6 メモリ4GHz

なので問題ないと思います。

ソフト自体は他のPCでは立ち上げる事が出来問題ありません。

(3台あるPCのうち他2台は問題なく立ち上がります。3台ともOSは同じWIN7です。)

なぜか1台だけエラーを吐きますので、解決策を教えてください。

C++ Runtime をアンインストール再インストールは何回か試したけどダメです。

クリーンブートしてもエラーは出ます。

セキュリティーソフトを無効化してもダメです。

参考のためにソフトウエアをサーバーにおいておきます。

一応ウイルスチェックはしています。

http://mypace.huu.cc/teru_010/kasutamuVr0.4.exe

※モデレーター注 : 質問内容が分かりやすいようにタイトルを修正しました

変更前スレッドタイトル : 「Microsoft Aisual C++ Runtime Library」と言うエラー

家庭向け Windows | 以前の Windows バージョン | アプリ

ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。

0 件のコメント コメントはありません
質問作成者が受け入れた回答
Anonymous
2015-03-09T04:36:28+00:00

問題となっているアプリがネット上からダウンロードできたので、試しに動かしてみたところ、先に提供していただいたダンプと全く同じ状況を再現できました。

で、先ほど少しだけデバッグしてみたところ。。。

問題のエラー ダイアログは、VC++ ランタイム ライブラリ モジュールの不足で表示されているのではなく、このプログラム自身がランタイム ライブラリ (msvcrt.dll) が提供する abort() 関数をコールし、自身を強制終了させているために表示されていました。

つまり、このプログラム自身が処理中に何らかの問題を検出し自身を強制終了させているということで、問題はこのアプリ自身にある。。。ということになると思います。

Process Monitor というツールを使ってこのアプリの挙動を調べると、確かに IME および Text Service Framework に関連する処理でエラーが多数発生していましたが、個人的にはこれが原因とはちょっと考えにくい。。。と思っています。

ただ、それも断言はできないので、一応、言語のロケールや IME に関する設定で、正常動作環境とエラー発生環境で差異はないか、確認することをお勧めします。

また確証がある訳ではありませんが、個人的には IME や Text Service Framework の問題よりも、アプリ固有の環境設定に関する情報が何か足りないのではないか。。。と感じています。

私の PC 環境でこのアプリを動作させた場合、下記ファイルのオープンに失敗していることを確認しています。

<オープンに失敗しているファイル>

☆ C:\Users&lt;User Name>\AppData\Local\QtProject\qtlogging.ini

☆ C:\ProgramData\QtProject\qtlogging.ini

☆ <問題の EXE ファイルが格納されているフォルダ>\QtProject\qtlogging.ini

☆ <問題の EXE ファイルが格納されているフォルダ>\data\QtProject\qtlogging.ini

☆ <問題の EXE ファイルが格納されているフォルダ>\qt.conf

実際に今回の問題と関連があるのかはわかりませんが、上記ファイルに関して、正常動作環境とエラー発生環境で差異はないか、確認することをお勧めします。

(私のところには正常に動作する環境が無いので、どのような状態が正解なのか、判別のしようがありません。)

昼休みにデバッグした限りでは、この問題のプログラムは "ssse3" という文字列をチェック後に、abort() 関数を呼び出していました。

なので、"ssse3" という文字列が何かヒントになるかも。。。と思い、"<アプリ EXE ファイル名>" + "ssse3" をキーワードに Google で調べたら、このアプリの専用フォーラムで同様の事例が報告されていました。

このアプリの専用フォーラムをみる限り、この問題はかなりの人が遭遇しているしているようです。

私は、このアプリが対象とするハードウェアを持っていないのでフォーラム会員にはなれませんが、会員登録をすれば色々と詳しい情報がみれるみたいです。

なので、ここよりも対象アプリ専用フォーラムに問い合わせることをお勧めします。

(私が調べた限りでは、VC++ ランタイム ライブラリの問題ではないと思います。)

この回答は役に立ちましたか?

0 件のコメント コメントはありません

55 件の追加の回答

並べ替え方法: 古い順
  1. 削除済み

    この回答は当社の行動規範に違反したため削除されました。 アクションを実行する前にこの回答を手動で報告したか、自動検出機能により特定しました。 詳細については、当社の行動規範を参照してください。


    コメントはオフになっています。 詳細情報

  2. 削除済み

    この回答は当社の行動規範に違反したため削除されました。 アクションを実行する前にこの回答を手動で報告したか、自動検出機能により特定しました。 詳細については、当社の行動規範を参照してください。


    コメントはオフになっています。 詳細情報

  3. Anonymous
    2015-02-27T11:08:21+00:00

    返信ありがとうございます。

    プログラムのアンインストールで調べたのですが、

    起動できるPCに入っているruntimeは、C++2008が2個で、

    動作しない方にもバージョンまで全く同じものが2個入っています。

    ただ動かない方はC++2005とC++2010とC++2012とC++2013なども入っています。

    全く同じランタイムが入っているのになぜか片方だけランタイムを要求されます。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  4. Anonymous
    2015-02-27T11:11:26+00:00

    ご指導ありがとうございます。

    早速コマンドを実行してみました。

    上の方が動作するPC

    下の方が動作しないPC

     18,088 mscvr100_clr0400.dll    有る

     18,088 mscvr110_clr0400.dll   有る

    875,680 mscvr120_clr0400.dll   無い(875,688 ~ならある)

    690,688 mscvrt.dll        有る

    253,952 mscvrt20.dll       有る

     60,928 mscvrt40.dll       有る

    と言う事で、

    875,680 mscvr120_clr0400.dll

    と言うものの代わりに

    875,688 mscvr120_clr0400.dll

    が入っています。

    これが原因なのでしょうか?

    そうであったとしても、どうすれば875,680 mscvr120_clr0400.dllを入れることが出来るのかわかりません。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません