Re: C#でのキー取得 ( No.1 ) |
- 名前:Will 日時:2007/10/05 10:07
DX.GetHitKeyStateAll(out c[0]);
ではないですか?
|
Re: C#でのキー取得 ( No.2 ) |
- 名前:Dq 日時:2007/10/06 01:52
申し訳ありません、その書き方が正しいです。
その上でランタイムエラーが出ている状態です。
|
Re: C#でのキー取得 ( No.3 ) |
- 名前:Dq 日時:2007/10/16 02:50
Dxlibのcppコードと比較しつつ試行錯誤して
ようやく解決しました。
C#のchar型はunicodeを扱うため
8bitのデータでは無くなっているのが原因でした。
これが正しいとは限りませんが、DxDLL.csを[DllImport("DxLib.dll")]
extern static int dx_GetHitKeyStateAll(out byte KeyStateBuf);
public static int GetHitKeyStateAll(out byte KeyStateBuf)
{
return dx_GetHitKeyStateAll(out KeyStateBuf);
}
}
と書き直した上で、
byte[] c = new byte[256];
DX.GetHitKeyStateAll(out c[0]);
と書く事で無事C#でキー入力を得られました。
|
Re: C#でのキー取得 ( No.4 ) |
- 名前:Dq 日時:2007/10/16 02:53
また正しく書けていない。失礼しました。
DxDLL.csの修正は
[DllImport("DxLib.dll")]
extern static int dx_GetHitKeyStateAll(out byte KeyStateBuf);
public static int GetHitKeyStateAll(out byte KeyStateBuf)
{
return dx_GetHitKeyStateAll(out KeyStateBuf);
}
ですね。
|
Re: C#でのキー取得 ( No.5 ) |
- 名前:管理人 日時:2007/10/25 01:54
Dqさん始めまして、DXライブラリの管理人です。
どうもご迷惑お掛けしました。
ダウンロードページにアップしてあるC#用DXライブラリも
修正しておきました。
|