windows

Raw InputのGetRawInputBufferの正しい(?)使い方

新しいスレッドを立てる 新しいスレッド上で不可視のウィンドウを作成する 作成したウィンドウを指定してRaw Inputデバイス登録 GetMessage/PeekMessageを「呼ばない」ポーリングループを回す GetRawInputBufferのpcbSizeが0以外を返すよ!やったね! スレッ…

DirectInput?これからはRaw Input+XInputの時代でしょう?

PCに何枚もキーボードを刺して操作できることを最近知った。それで別々のことが出来るかというと、それぞれのキーボードから入力してみると、まるで一枚のキーボードから入力したかのようになってしまう。キーボードの入力状態を操作する旧来のWindows APIは…

DirectInputを使うソフトにキー入力情報を送信する

Windowsで、プログラムに対してキーボード入力があったと偽るには、SendMessage, PostMessageで、対象プログラムのスレッドメッセージキューにWM_KEYDOWN/WM_KEYUP等のキーボード系メッセージを積んだり、keybd_event/SendInputでキーボードインプットストリ…

UTF-8 TEXTを含むレコードの閲覧

SQLiteデータベースのTEXT項目をUTF-8文字列で格納しているとき、コンソールの管理ツールから見ようとすると、盛大に文字化けしまくってしまう。おそらく、コンソールの解釈する文字符号化方式がWindows-31Jだからだと思うけど、これでは困る。 どうにかして…

ADO とプリペアドステートメント

最近、入力値検査の不備を突いたSQLインジェクションが取りざたされているのを見ていて、Windows上で、共通のAPIによるデータベースへのアクセスを可能にするActiveXコンポーネントADO(ActiveX Data Objects)では、対策を講じられるかどうか不安になって調べ…