VC++6.0のサンプルプログラム

[戻る]
さおり 2002/06/27(木) 23:19:55
こんばんは。さおりと申します。
VC++6.0のサンプルプログラムのことなのですが教えてください。

MSDNからサンプルプログラムのListHdrを読み込んで
ビルド→実行をするとエラーとなります。
エラーは「Debug assertion failed」とでます。

サンプルプログラムなのでプログラムのバグではないと
思いますが、インストール後にVC++の設定をいじった記憶も
ありません。
最初はUNICODE関係のファイルがなかったためエラーが
出ていましたがその関係のファイルを追加インストールしたら
現在にいたっています。

どなたか原因わかる方いらっしゃったら教えてください。
よろしくお願いします。

wood 2002/06/28(金) 07:33:50
Win XP
VC6.0(EP)(SP5)
やってみて単純リビルドしました

LINK : warning LNK4089: "SHELL32.dll" へのすべての参照は /OPT:REF によって廃棄
されます

リンクワーニング出ましたけど実行は特に問題ありませんでした

MSDNはPKG同胞のものです

さおり 2002/06/28(金) 12:12:23
wood様、返答ありがとうございます。

我が家のOSはWinMeで、VC++はエンタープライズ版です。
上記の通り、エラーは「Debug assertion failed」とでて
フレームウィンドウも立ち上がらずに強制終了になります。

サンプルプログラムがMEに対応してないことはありうるでしょうか?
それほど環境にシビアなプログラムではない気がしますが・・・
それともインストール時に不具合があるのでしょうか?

kazuma 2002/06/29(土) 00:13:35
> 最初はUNICODE関係のファイルがなかったためエラーが
> 出ていましたがその関係のファイルを追加インストールしたら
> 現在にいたっています。

Unicode版をビルドしているからMeで動かないのではないでしょうか?
もしそうなら、メニューの、
[ビルド]-[アクティブな構成の設定]
で、Unicode版でない構成を選べばいいです。

wood 2002/07/01(月) 07:06:36
>エラーは「Debug assertion failed」とでて
心当たりがあるのはMEはOSとして使ったことないのですが
XPはOSの設定によって自分のプログラムをデバック中に
OSが先にデバック報告してしまうことがあります
このことではないですか
もしそうなら「システムのプロパティ」の中に「エラー報告」
と言うものないですか?
これをOFFにすればよいのではないかと思います

さおり 2002/07/01(月) 08:22:07
kazuma様、wood様返答ありがとう御座います。
いろいろ試してみたのですが、エラーは直りませんでした。

先ず、unicode版に関しては、確かにunicode版じゃないものも
ありましたが状況は変わらず、Debug・releaseともに同じでした。

また、WinMeのシステム構成?ユーザーインターフェース?は
Win98や95とほとんど同じで、システムのプロパティにはエラー報告の
設定はありません。

ListHdr以外でもエラーの発生するサンプルがあるみたいです。
同じサンプルを知り合いのWinXPで動かしたところ正常動作していたので、
取り敢えずプログラムの稼動状況は見る事が出来たのですが・・・
まずは、コードをよくみて勉強する事にします。

kazuma 2002/07/01(月) 13:52:54
> ありましたが状況は変わらず、Debug・releaseともに同じでした。

Release版の場合「Debug assertion failed」とはならないと思いますけど。
実行するファイルを間違ってないですよね?

「Debug assertion failed」の場合、
(VCで) F5キーを押してデバッグ実行し、「Debug assertion failed」と出たところで、
「再試行」ボタンを押すと、ASSERTに失敗した部分のコードが表示されるので、
そのあたりから探っていくといいです。

さおり 2002/07/01(月) 23:16:20
さおりです。

Release版の際は確かに「Debug assertion failed」とはでません。
代わりに、ウィンドウも出ないままに強制終了となります。
Debugでいくらかは原因を調べようとしたのですが、
稚拙なわたしの知識ではどうにもならないようで
あきらめました。
そもそもサンプルのようなプログラムの作り方もさっぱり
わからず、参考にしようと思ってたので・・・

実際の実行画面をみながらコードを見ればより勉強になると
思いますが、今回はコードのみを見ることにします。

なんども返答くださってありがとうございます。

古いスレッドには追加発言できません。