プロが教える店舗&オフィスのセキュリティ対策術

こんにちは、こんばんは。閲覧ありがとうございます。

最近知り合いに東方の同人ソフトを頂いたのですが、エラーばかりが発生し、プレイできません…

エラーウィンドウのタイトル
Microsoft Visual C++ Debug Library

エラーメッセージの内容
Debug Assertion Failed!

Program: D\thLabyrinth_ver3\thLabyrinth_ver3.exe
File: f\dd\vctools\crt_bid\self_x86\crt\src\fputc.c
Line: 44

Expression: (str != NULL)

For information on how your program can cause an assertion failure, see the Visual C++ documentation on asserts.

(Press Retry to debug the application)
と表示され、選択肢は中止、再試行、無視の3つです。
いずれも押しても意味がありませんでした。
Pcに不慣れで全く理解できません。
詳しい方、改善策等をよろしくお願いいたします。

A 回答 (2件)

>For information on how your program can cause an assertion failure, see the Visual C++ documentation on asserts.


ssertsがあってはいけない引数やメンバ変数で受け取ったので停止したという事で。
>File: f\dd\vctools\crt_bid\self_x86\crt\src\fputc.c
>Line: 44
fputc.cの44行目にデバッグエラーが出ているという事で、古いバージョンのVisual C++には無い命令かもしれません、だからといってそれより新しいVisual C++がWindows2000に適用できる保証はありません(Windows2000には無い機能があるからです)
逆に検証するならXPのPCで正常に動くのか?動くとしたらWin2000は対応していないプログラムという事ですから、改善以前の問題でWindowsを変える以外方法はありません。
選択肢は、PCを諦めるか、ソフトを諦めるかの2択でしょう。
どうしてもと言うならVisual C++の現状より新しい物をインストールしてみるしかありませんが、それすら入手できるか判りません(サポートが終わっているのと現状のバージョンが判らないので)そして新しいVisual C++が使える可能性があるとしたらSP4の数年後にでた最終アップデート ロールアップ1
http://www.microsoft.com/ja-jp/download/details. …
を適用してからになると思います。
    • good
    • 0
この回答へのお礼

回答ありがとうございました。
たしかにw2kはもう化石ですからね…
いろいろ試してダメそうなら諦めます。

お礼日時:2014/09/27 09:36

>再試行


>意味がありませんでした

アサートが発生した時「再試行」をクリックすれば、ソースファイルが表示されます。
ASSERT ()の中に記述されている条件が満たされていないので、それを満たすようにします。(アサート/コメントが英語で書かれていることもあり)

>東方の同人ソフト

東方シリーズは、紅魔郷、妖々夢、永夜抄、花映塚などいろいろあります。具体的に書いた方がよいのでは?(当方はゲームしないので・・・)
パッチをダウンロードし、手動で対象のフォルダまで移動し、実行するタイプもあるようで、バグがあると
更に、インストール先などをスクリプトで指定できるインストーラ作成(インストールした東方シリーズのソフトの場所に置き、パッチをあてるという処理をインストーラ側が自動で実行するようにスクリプトを書き作る)したりとVisual C++は、<pcに不慣れで全く理解できません>方にはハードルが高いように思えます。
    • good
    • 0
この回答へのお礼

回答ありがとうございました。
…ややこしいですね。
知り合いに聞いてみることにします。

お礼日時:2014/09/27 09:34

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!