No Such Blog or Diary
RawInput というか WM_INPUT をフォーカスなしでも受け取るには
RegisterRawInputDevices での登録時に RIDEV_INPUTSINK をフラグ指定にすればいいらしい.ということで,グローバルフック使わずにほかのウィンドウへの入力を挿げ替えることができそう.これでキーの入れ替えソフトもC#で簡単に書けるかな.
参考:
- Comments: 0
- TrackBack (Close): -
Windowsのコンボボックスのカスタム化
聞かれて調べたのでメモ.
なにやらウィンドウプロシージャを乗っ取るらしい.ただ,コンボボックス内のエディットコントロールは独立したウィンドウプロシージャを持つらしいので,
HWND hwndEdit = GetTopWindow( hwndComboBox );
とかしてエディットコントロールのハンドラを取っとかないとはまる.あとは,GetWindowLong で元のプロシージャを取得して,SetWindowLong で新しいプロシージャを登録して,新しいプロシージャ内で CallWindowProc を使って元のプロシージャを呼べばいいらしい.
参考:
- Comments: 0
- TrackBack (Close): -
RawInput + SendInputs + GlobalHook
これらを使えば複数のキーボードによる入力を複数のウィンドウに分配できる気がするのだが… RawInput をグローバルhookするのが C# 単体だと無理だよなぁ.Low Level Hook みたいに DLL なしでもフックできると便利なのだが…
- Comments: 0
- TrackBack (Close): -
素朴な疑問と解決
C# で mmap 使いたいなぁと思って色々調べてたら, Windows だと MapViewOfFile という API だったのね.
それはさておき Marshal.StructToPtr は便利そうだ.
- Comments: 0
- TrackBack (Close): -
Windows Vista Beta2 を試してみる
どうやら日本語版が出ているようなので試しにメインマシンのあいてるディスクに入れてみた.取り合えずいろんなとこが半透明になってるところとかサイドバーの Gadgets (付箋とかメーターとか)がいい感じで結構遊べそう.ただ,いわゆるエクスプローラのディレクトリ構造のツリー表示の仕方がわからず作業不能.適当なファイラを探してくるべきか? あと,タスクバーにかかるようにウィンドウを移動したときに重なった部分の周辺がバグってたのも気になった.まだまだ表示は怪しそう.
- Comments: 0
- TrackBack (Close): -
coLinuxインストール用に
- 2006-05-24 (Wed)
- ソフトウェア ( Linux/coLinux Windows )
メモしておく.
大きなファイルを高速に生成:
fsutil file createnew root.img 6442450944
中身のデータを書き込まないので dd より高速.
ついでに,coLinux 0.6.3 にしたらブルースクリーンで落ちまくったやつの解決.boot.ini のオプション部分を書き換え:
/NoExecute=OptIn → /NoExecute=AlwaysOff
HT の環境下ではこれをやらないとダメだったらしい.
- Comments: 0
- TrackBack (Close): -