トップページ > 記事閲覧
終了時にDXGI WARNINGが出る
名前:Ketty 日時: 2015/04/18 17:37

管理人様 いつも楽しくDXライブラリを利用させていただいております(^^) ■報告ですが、 Visual Studio Express 2012 for Windows Desktop にて、テスト版の3.13e(※最下部記載)を使用しますと、 アプリケーション終了時に、以下のような警告が出力されます。 DXGI WARNING: Process is terminating. Using simple reporting. Please call ReportLiveObjects() at runtime for standard reporting. [ STATE_CREATION WARNING #0: ] DXGI WARNING: Live Producer at 0x008ADBE8, Refcount: 2. [ STATE_CREATION WARNING #0: ] DXGI WARNING: Live Object : 0 [ STATE_CREATION WARNING #0: ] ■この警告は気にしなくてもよいものなのでしょうか? ↓こちらを読むと、何やらCOMオブジェクトを解放していないのではないかとのことが記載されておりますが、理解できておりません。 https://social.msdn.microsoft.com/Forums/vstudio/ja-JP/794f998d-e1cb-4c6a-812b-8c4c9a1ae6f4/direct3d101?forum=vcgeneralja ■再現ソース /* スクリーンに点を打つサンプルに対し、*/ /* ウィンドウモードでの起動とログ出力のオフの2点を施しているだけです */ #include "DxLib.h" // プログラムは WinMain から始まります int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { ChangeWindowMode( TRUE ) ; SetOutApplicationLogValidFlag( FALSE ) ; if( DxLib_Init() == -1 ) // DXライブラリ初期化処理 { return -1 ; // エラーが起きたら直ちに終了 } DrawPixel( 320 , 240 , 0xffff ) ; // 点を打つ WaitKey() ; // キー入力待ち DxLib_End() ; // DXライブラリ使用の終了処理 return 0 ; // ソフトの終了 } ■環境  OS:Windows7 Home Edition 64bit  開発環境:Visual Studio Express 2012 for Windows Desktop  DXライブラリのバージョン:3.13e(※↓こちらであげてくださっているテスト版です)  http://hpcgi2.nifty.com/natupaji/bbs/patio.cgi?mode=view&no=3532
メンテ

Page: 1 |

Re: 終了時にDXGI WARNINGが出る ( No.1 )
名前:管理人 日時:2015/04/19 00:05

ご報告ありがとうございます > ■この警告は気にしなくてもよいものなのでしょうか? 載せていただいたリンク先でも言われていますが、実害はありませんが放置して 良いものでもない、といった所です・・・ 載せていただいたプログラムを私の環境で実行したところ、現象は発生しませんでした 恐らくKettyさんと私の環境が異なることで私の環境では現象が発生しなかったのだと思いますので お手数で申し訳ありませんが SetOutApplicationLogValidFlag( FALSE ) ; を実行しない 場合に作成される Log.txt の内容を掲示板に貼り付けて頂けないでしょうか? m(_ _;m
メンテ
Re: 終了時にDXGI WARNINGが出る ( No.2 )
名前:Ketty 日時:2015/04/19 00:58

管理人様 お忙しい中、ご返信くださりありがとうございます(^^) > 載せていただいたプログラムを私の環境で実行したところ、現象は発生しませんでした なるほど、環境依存かもしれないということですね…(・・; > SetOutApplicationLogValidFlag( FALSE ) ; を実行しない > 場合に作成される Log.txt の内容を掲示板に貼り付けて頂けないでしょうか? 以下に、Log.txtの内容を掲載させていただきます。 先のコードから、SetOutApplicationLogValidFlag( FALSE ) ;の行だけをコメントアウトしたものを、 DebugでWin32ビルドし、 ウィンドウ起動〜点が描画される〜アプリケーションウィンドウの×ボタンで終了、までを実施した結果です。 私の目にはとくに異常をみつけられていませんが、ご参考にしていただければ幸いですm(__ )m 他に必要な情報がありましたらお伝えください。 0:システムの情報を出力します 2: DXライブラリ Ver3.13e 5: 論理プロセッサの数 : 4 8: OS Windows7 ( Build 7601 Service Pack 1 ) 111: 現時点のCPU動作速度:大体2.38GHz 112: MMX命令を使用します 112: SSE命令が使用可能です 113: SSE2命令が使用可能です 114: CPUベンダ:GenuineIntel 117: COMの初期化... 成功しました 2424:メモリ総量:4010.67MB 空きメモリ領域:299.20MB 2426:タイマーの精度を検査します 2430:精度結果 更新回数 マルチメディアタイマー:0 パフォーマンスカウンター:60 2436: パフォーマンスカウンターを使用します タイマー精度 : 2338.476000 KHz 2439: ソフトの二重起動検査... 二重起動はされていませんでした 2441:ウインドウクラスを登録します... 登録に成功しました 2442:ウインドウモード起動用のウインドウを作成します 2505:ウインドウの作成に成功しました 2507:ウインドウを表示します 2695:IMEを無効にしました 2700:ウインドウスタイルをウインドウモード用に変更します... 完了 2749:DirectInput関係初期化処理 2753: XInput DLL の読み込み中... 成功 2772: DirectInput7 の取得中... 成功 2816: 引き続き初期化処理... 初期化成功 2822: ジョイパッドの初期化... 2839: 入力装置を見つけました 2840: Device Instance Name : USB Classic Gamepad 2 2840: Device Product Name : USB Classic Gamepad 2 2841: 周期的エフェクトの作成に失敗しました。 2843: ジョイパッドの追加は正常に終了しました 2843: ジョイパッドの初期化は正常に終了しました 2844: マウスデバイスの初期化... 初期化成功 2845: キーボードデバイスの初期化... 初期化成功 2847:DirectInput 関連の初期化は正常に終了しました 2850:DirectSound の初期化を行います 2851:DirectSound インターフェースの取得を行います.... 成功 2859:引き続きインターフェースの初期化処理... 成功 2930: DirectSound デバイスを列挙します 2932: Module Name : Description : プライマリ サウンド ドライバー 2933: Module Name : {0.0.0.00000000}.{6be61d0a-ee18-4005-a33f-6e6bf69eb4f5} Description : スピーカー (Realtek High Definition Audio) 2933: Module Name : {0.0.0.00000000}.{4c550667-ab00-4c42-ab11-981831789764} Description : スピーカー (WsAudio_Device) 2934: 最大サンプリングレート:200.00KHz 最小サンプリングレート:0.10KHz 2935: 総サウンドメモリ領域:0.00KB 空きサウンドメモリ領域:0.00KB 2936: 利用可能サンプリング精度 2937: Primary 16bit = OK 8bit = OK 2938: Secondary 16bit = OK 8bit = OK 2938: 利用可能チャンネル 2939: Primary MONO = OK STEREO = OK 2940: Secondary MONO = OK STEREO = OK 2941:DirectSound の初期化は正常に終了しました 2942:d3d11.dll の読み込み.... 成功 2949:dxgi.dll の読み込み.... 成功 2951:API CreateDXGIFactory のアドレスを取得します.... 成功 2952:IDXGIFactory を作成します.... 成功 2959:API D3D11CreateDevice のアドレスを取得します.... 成功 2960:IDXGIAdapter を取得します.... 成功 2962:Direct3D 11 FeatureLevel 11_0 以上を対象とします 2962:ID3D11Device オブジェクトを取得します.... 失敗 2989:DirectDraw オブジェクトの取得を行います.... 成功 2997:引き続き初期化処理... 初期化に成功しました 3038:IDirect3D9Ex オブジェクトを取得します.... 成功 3041:IDirect3DDevice9Ex オブジェクトを取得します.... ハードウエア頂点演算を使用します 3304:成功 3305:Driver:igdumdx32.dll Description:Intel(R) HD Graphics Family 3306:画面のフォーマットは D3DFMT_X8R8G8B8 です 3307:16bit Zバッファフォーマットは D3DFMT_D16 です 3307:24bit Zバッファフォーマットは D3DFMT_D24X8 です 3308:32bit Zバッファフォーマットは D3DFMT_D24X8 です 3309:16bit カラーフォーマットは D3DFMT_R5G6B5 です 3309:32bit カラーフォーマットは D3DFMT_X8R8G8B8 です 3310:アルファ付き 16bit カラーフォーマットは D3DFMT_A4R4G4B4 です 3311:アルファ付き 32bit カラーフォーマットは D3DFMT_A8R8G8B8 です 3311:アルファテスト用 16bit カラーフォーマットは D3DFMT_A1R5G5B5 です 3312:アルファテスト用 32bit カラーフォーマットは D3DFMT_A8R8G8B8 です 3312:DXT1テクスチャフォーマットはD3DFMT_DXT1 です 3313:DXT2テクスチャフォーマットはD3DFMT_DXT2 です 3314:DXT3テクスチャフォーマットはD3DFMT_DXT3 です 3314:DXT4テクスチャフォーマットはD3DFMT_DXT4 です 3315:DXT5テクスチャフォーマットはD3DFMT_DXT5 です 3316:描画用 16bit カラーフォーマットは D3DFMT_R5G6B5 です 3317:描画用 32bit カラーフォーマットは D3DFMT_X8R8G8B8 です 3317:描画用アルファ付き 32bit カラーフォーマットは D3DFMT_A8R8G8B8 です 3318:描画用 ABGR 整数 16 ビット型カラーフォーマットは D3DFMT_A16B16G16R16 です 3318:描画用 ABGR 浮動小数点 16 ビット型カラーフォーマットは D3DFMT_A16B16G16R16F です 3319:描画用 ABGR 浮動小数点 32 ビット型カラーフォーマットは D3DFMT_A32B32G32R32F です 3320:描画用1チャンネル整数 8 ビット型カラーフォーマットは D3DFMT_A8R8G8B8 です 3320:描画用1チャンネル整数 16 ビット型カラーフォーマットは D3DFMT_G16R16 です 3321:描画用1チャンネル浮動小数点 16 ビット型カラーフォーマットは D3DFMT_R16F です 3322:描画用1チャンネル浮動小数点 32 ビット型カラーフォーマットは D3DFMT_R32F です 3323:描画用2チャンネル整数 8 ビット型カラーフォーマットは D3DFMT_A8B8G8R8 です 3323:描画用2チャンネル整数 16 ビット型カラーフォーマットは D3DFMT_G16R16 です 3324:描画用2チャンネル浮動小数点 16 ビット型カラーフォーマットは D3DFMT_G16R16F です 3324:描画用2チャンネル浮動小数点 32 ビット型カラーフォーマットは D3DFMT_G32R32F です 3325:一度に描画できるプリミティブの最大数:1048575 3326:対応している最大頂点インデックス:16777215 3326:同時にレンダリングできるバッファの数:4 3327:最大テクスチャサイズ 幅:8192 高さ:8192 3328:テクスチャステージテンポラリレジスタ:使用可 3328:減算合成のハードウェア対応:ネイティブ 3329:ハードウェア頂点シェーダーバージョンコード:300 3330:エミュレーション頂点シェーダーバージョンコード:エミュレーション無し 3330:ピクセルシェーダーバージョンコード:300 3372:バックバッファロック転送の時間:6916nsec 一時的な描画可能バッファを使用した転送の時間:1105nsec 3373:バックバッファロックを使用しません 3374:Zバッファを作成します.... 成功 3436:プログラマブルシェーダーを使用します 3537:フォントの初期化を行います 3539:フォントの初期化は正常に終了しました 3540:文字コードバッファの初期化を行います... 完了しました 7122:ウインドウを閉じようとしています 7137:ウインドウが破棄されようとしています 7149:ソフトを終了する準備が整いました 7161:フォントの初期化を行います 7165:フォントの初期化は正常に終了しました 7201:Direct3DDevice9 の解放 2 7234:d3d9.dll の解放 1 7236:DirectInput 関連の終了処理... 完了 7276:DirectSound の終了処理は正常に終了しました 7310: 7311:Alloc memory dump 7311: Total size:0(0.000kb) Alloc num:0 7312:
メンテ
Re: 終了時にDXGI WARNINGが出る ( No.3 )
名前:管理人 日時:2015/04/19 02:28

ログを貼り付けていただきありがとうございます、原因が分かりました Direct3D 11 の機能レベル D3D_FEATURE_LEVEL_11_0 に対応していなかった場合は Direct3D 11 の使用を辞めて Direct3D 9 を使用するのですが、その際に途中まで 初期化作業を行った Direct3D 11 の後始末が正しく行えていませんでした 修正版をアップしましたので、よろしければお試しください m(_ _;m https://dxlib.xsrv.jp/temp/DxLibVCTest.exe // VisualC++ 用 https://dxlib.xsrv.jp/temp/DxLibBCCTest.exe // BorlandC++ 用 https://dxlib.xsrv.jp/temp/DxLibGCC_DevCppTest.exe // Dev-C++ 用 https://dxlib.xsrv.jp/temp/DxLibGCC_MinGWTest.exe // MinGW 用 https://dxlib.xsrv.jp/temp/DxLibDotNet.zip // .NET用 https://dxlib.xsrv.jp/temp/DxLibMakeTest.exe // ソース (中身を既存のライブラリのファイルに上書きして、BCCをお使いの 場合は『再構築』を、VCをお使いの場合は『リビルド』を、 Dev-C++をお使いの方は「Rebuild All(Ctrl+F11)」をして下さい)
メンテ
Re: 終了時にDXGI WARNINGが出る ( No.4 )
名前:Ketty(解決) 日時:2015/04/19 12:48

迅速にご対応くださり、ありがとございました。 あげてくださったVisualC++ 用にて事象が発生しなくなることを確認できました(^^) 解決とさせていただきます。
メンテ

Page: 1 |

題名
名前
コメント
パスワード (記事メンテ時に使用)

   クッキー保存