トップページ > 過去ログ > 記事閲覧
Win98,Me環境でフリーズする現象
名前:卑しい人 日時: 2007/02/14 21:36

はじめまして。卑しい人と申します。 DXライブラリを使用するにあたって、今回数台のWin98 or WinMe搭載PCで 以下のような現象が確認できたので報告させて頂きに参りました。 よろしくお願い致します。 ver2.22f を用いて作成された SetScreenMemToVramFlag(FALSE); を使用する プログラムを実行すると、OSごとフリーズして再起動せざるを得ない状況に陥る。 (ウィンドウは真っ黒のまま) これは使用するDXライブラリを ver2.22b から ver2.22f へと更新するにあたって 起こったものです。ver2.22b を使用したプログラムでは正常に動作していたのですが、 ver2.22fに差し替えて以降、上の様な現象が発生するようになってしてしまいました。 DXライブラリを ver2.22b に戻してビルドしなおすことでこの現象は抑えられますが、 この現象が起こって以来、何故かそれまで正常に動作していたはずの SetUse3DFlag(FALSE); のみによるソフトウェアモードへの切り替え時にさえ同様の 現象が引き起こされるようになってしまいます。(ver2.22b,ver2.22f問わず起こりました。) なおこの現象が起こる前からそうだったのかは特定できないのですが、ver2.22bを 用いてSetScreenMemToVramFlag(FALSE);を用いた場合でも、表画面への描画 をしようとすると同様のフリーズが起こってしまいました。 グラフィック描画関係の操作のみが影響していることを確認するため、 検証は四角形を表示するだけの簡単なプログラムで行いました。 (SetScreenMemToVramFlag(FALSE); は DxLib_Init(); より前に呼び出しています。) 念のためver2.23でも試してみましたが、やはりver2.22fと同様の結果が出ました。 こちらが少々勘違いをしている所もあるかもしれませんが、よほどとんでもない 勘違いでもしていない限りDXライブラリの不具合かと思われましたので、 ここに報告させていただきました。長々と失礼しました。

Page: 1 |

Re: Win98,Me環境でフリーズする現象 ( No.1 )
名前:管理人 日時:2007/02/16 12:24

 卑しい人さん始めまして、DXライブラリの管理人です。  ご報告有難うございます。週末に調べてみます。  ただ、95カーネル系OS(95,98,98SE,ME)上での DirectX の描画機能は不安定ですので、 より確実に動作させることを考えると DirectX の描画機能を使わない方が良いかもしれません。  最新バージョンには DirectX の描画関係の機能を全く使用しないように するための関数 // DirectDrawを使用するかどうかをセットする int SetUseDirectDrawFlag( int Flag );  がありますので、宜しければ以下のバージョンに置き換えた上で http://homepage2.nifty.com/natupaji/DxLib/DxLibVCTest.exe //VC用 http://homepage2.nifty.com/natupaji/DxLib/DxLibBCCTest.exe //BCC用 (中身を既存のライブラリのファイルに上書きして、BCCをお使いの 場合は『再構築』、VCをお使いの場合は『リビルド』をして下さい)  DxLib_Init の前に SetUseDirectDrawFlag( FALSE );  という記述を増やして、DirectX の描画機能を使わないように して実行してみて下さい。m(_ _)m
Re: Win98,Me環境でフリーズする現象 ( No.2 )
名前:卑しい人 日時:2007/02/16 21:11

ありがとうございます。 問題無さそうなので SetUseDirectDrawFlag( FALSE ); を使う方向で検討します。

Page: 1 |