トップページ > 過去ログ > 記事閲覧
GetHitKeyStateAll入力取得間隔
名前:レンタッカ 日時: 2010/10/23 18:05

byte KeyState; if (DX.TRUE == DX.CheckHitKey(DX.KEY_INPUT_RIGHT)) DX.GetHitKeyStateAll(out KeyState); 'System.StackOverflowException' のハンドルされ ていない例外が System.Windows.Forms.dll で発生 しました。  GetHitKeyStateAllの取得間隔が一瞬ならエラーは 発生しません。しかし、GetHitKeyStateAllの入力取 得間隔が継続的に発生すると、エラーが発生します。メインフォームのループ速度は100mm/sです。 1:システムの情報を出力します 2: DXライブラリ Ver3.03a 3: OS WindowsXP ( Build 2600 Service Pack 3 ) 104: CPU動作速度:大体2.77GHz 105: MMX命令を使用します 106: SSE命令が使用可能です 107: SSE2命令が使用可能です 108: CPUベンダ:GenuineIntel 112: CPU名: Intel(R) Pentium(R) D CPU 2.80GHz 116:COMの初期化... 成功しました 117:メモリ総量:1013.44MB 空きメモリ領域:267.26MB 119:タイマーの精度を検査します 120:精度結果 更新回数 マルチメディアタイマー:0 パフォーマンスカウンター:60 121: パフォーマンスカウンターを使用します タイマー分解能 : 2799990.000000 KHz 124: ソフトの二重起動検査... 二重起動はされていませんでした 126:ウインドウクラスを登録します... 登録に成功しました 128:フルスクリーンモード用のウインドウを作成します 129:ウインドウの作成に成功しました 139:カーソルを不可視にしました 139:IMEを無効にしました 140:DirectInput関係初期化処理 141: DirectInput7 の取得中... 成功 159: 引き続き初期化処理... 初期化成功 166: ジョイパッドの初期化... 180: 入力装置を見つけました 184: デバイスの登録名:JC - U911 game pad 184: デバイスの製品登録名:JC - U911 game pad 185: 周期的エフェクトの作成に失敗しました。 188: ジョイパッドの追加は正常に終了しました 189: ジョイパッドの初期化は正常に終了しました 189: マウスデバイスの初期化... 初期化成功 191: キーボードデバイスの初期化... 初期化成功 193:DirectInput 関連の初期化は正常に終了しました 194:DirectSound の初期化を行います 195:DirectSound インターフェースの取得を行います.... 成功 199:引き続きインターフェースの初期化処理... 成功 266: DirectSound デバイスを列挙します 269: モジュール名: ドライバ記述:プライマリ サウンド ドライバ 270: モジュール名: sthda.sys ドライバ記述:IDT Audio1 270: 最大サンプリングレート:192.00KHz 最小サンプリングレート:44.10KHz 272: 総サウンドメモリ領域:0.00KB 空きサウンドメモリ領域:0.00KB 272: 利用可能サンプリング精度 273: プライマリ 16bit = OK 8bit = NO 274: セカンダリ 16bit = OK 8bit = NO 275: 利用可能チャンネル 276: プライマリ MONO = OK STEREO = OK 277: セカンダリ MONO = OK STEREO = OK 279:DirectSound の初期化は正常に終了しました 281:DirectDraw オブジェクトの取得を行います.... 成功 287:引き続き初期化処理... 初期化に成功しました 291:IDirect3D9Ex オブジェクトを取得します.... IDirect3D9 オブジェクトを取得します.... 成功 300:IDirect3DDevice9 オブジェクトを取得します.... ハードウエア頂点演算を使用します 971:成功 973:Driver:ialmrnt5.dll Description:Intel(R) 82945G Express Chipset Family 974:画面のフォーマットは D3DFMT_R5G6B5 です 975:Zバッファのフォーマットは D3DFMT_D16 です 976:16bit カラーフォーマットは D_D3DFMT_R5G6B5 です 977:32bit カラーフォーマットは D_D3DFMT_X8R8G8B8 です 978:アルファ付き 16bit カラーフォーマットは D_D3DFMT_A4R4G4B4 です 979:アルファ付き 32bit カラーフォーマットは D_D3DFMT_A8R8G8B8 です 980:アルファテスト用 16bit カラーフォーマットは D_D3DFMT_A1R5G5B5 です 981:アルファテスト用 32bit カラーフォーマットは D_D3DFMT_A8R8G8B8 です 981:DXT1テクスチャフォーマットは D_D3DFMT_DXT1 です 982:DXT2テクスチャフォーマットは D_D3DFMT_DXT2 です 983:DXT3テクスチャフォーマットは D_D3DFMT_DXT3 です 984:DXT4テクスチャフォーマットは D_D3DFMT_DXT4 です 985:DXT5テクスチャフォーマットは D_D3DFMT_DXT5 です 986:描画用 16bit カラーフォーマットは D3DFMT_R5G6B5 です 987:描画用 32bit カラーフォーマットは D_D3DFMT_X8R8G8B8 です 988:描画用アルファ付き 32bit カラーフォーマットは D_D3DFMT_A8R8G8B8 です 989:Zバッファを作成します.... 成功 991:プログラマブルシェーダーを使用しません 995:フォントの初期化を行います 1001:フォントの初期化は正常に終了しました 1002:文字コードバッファの初期化を行います... 完了しました 1017:ChangeWindowMode実行 1018:ウインドウモードフラグが立てられました 1018:ウインドウスタイルをウインドウモード用に変更します... 完了 1063:画面モード変更処理を開始します 1064: フォントの初期化を行います 1073: フォントの初期化は正常に終了しました 1344: DirectDraw オブジェクトの取得を行います.... 成功 1347: 引き続き初期化処理... 初期化に成功しました 1370: IDirect3D9Ex オブジェクトを取得します.... IDirect3D9 オブジェクトを取得します.... 成功 1394: IDirect3DDevice9 オブジェクトを取得します.... ハードウエア頂点演算を使用します 2303: 成功 2306: Driver:ialmrnt5.dll Description:Intel(R) 82945G Express Chipset Family 2307: 画面のフォーマットは D3DFMT_X8R8G8B8 です 2307: Zバッファのフォーマットは D3DFMT_D16 です 2308: 16bit カラーフォーマットは D_D3DFMT_R5G6B5 です 2311: 32bit カラーフォーマットは D_D3DFMT_X8R8G8B8 です 2318: アルファ付き 16bit カラーフォーマットは D_D3DFMT_A4R4G4B4 です 2319: アルファ付き 32bit カラーフォーマットは D_D3DFMT_A8R8G8B8 です 2320: アルファテスト用 16bit カラーフォーマットは D_D3DFMT_A1R5G5B5 です 2320: アルファテスト用 32bit カラーフォーマットは D_D3DFMT_A8R8G8B8 です 2323: DXT1テクスチャフォーマットは D_D3DFMT_DXT1 です 2330: DXT2テクスチャフォーマットは D_D3DFMT_DXT2 です 2335: DXT3テクスチャフォーマットは D_D3DFMT_DXT3 です 2336: DXT4テクスチャフォーマットは D_D3DFMT_DXT4 です 2337: DXT5テクスチャフォーマットは D_D3DFMT_DXT5 です 2338: 描画用 16bit カラーフォーマットは D_D3DFMT_R5G6B5 です 2339: 描画用 32bit カラーフォーマットは D_D3DFMT_X8R8G8B8 です 2339: 描画用アルファ付き 32bit カラーフォーマットは D_D3DFMT_A8R8G8B8 です 2340: Zバッファを作成します.... 成功 2342: プログラマブルシェーダーを使用しません 2345: フォントの初期化を行います 2350: フォントの初期化は正常に終了しました 2351: ウインドウスタイルをウインドウモード用に変更します... 完了 2353:画面モード変更処理は正常に終了しました 5463:フォントの初期化を行います 6470: ウインドウを閉じようとしています 6481: ウインドウが破棄されようとしています 6482: ソフトを終了する準備が整いました 6488:フォントの初期化は正常に終了しました 6498:DirectInput 関連の終了処理... 完了 6504:DirectSound の終了処理は正常に終了しました 6506: 6506:Alloc memory dump 6507: Total size:0(0.000kb) Alloc num:0 6508:

Page: 1 |

Re: GetHitKeyStateAll入力取得間隔 ( No.1 )
名前:管理人 日時:2010/10/24 03:31

GetHitKeyStateAll は 256個分の byte型の変数が必要ですので、以下の様に変更してみてください byte [] KeyState = new byte[256]; DX.GetHitKeyStateAll( out KeyState[0] );
Re: GetHitKeyStateAll入力取得間隔 ( No.2 )
名前:レンタッカ 日時:2010/10/24 18:31

byte [] KeyState = new byte[256]; DX.GetHitKeyStateAll( out KeyState[0] ); その方法で動作できました。ありがとうございます。

Page: 1 |