Last Update: 2002/05/17
2001年06月
28293031123
45678910
11121314151617
18192021222324
2526272829301

2001年06月21日

買った。

・・・のは例によって、昨日なんだけど。

スレイヤーズすぺしゃる 17巻 小さな濃いメロディ 神坂一

これといー、ゴクドーくんといー、本編終わってるのに 外伝だけ続くのはどーなんだろ。

ま、今回の2作品はけっこー好きだったからいいんだけどね。

にしても、神坂一ってきっちり連載終わらせてるからえらいよな〜。 書きかけのまんまってないし。 ちょっとは見習え〜(笑)>あかほり

Win32 SDKぷろぐらみんぐ。

標準出力を横取りする仕組みを作った。 ま、ほとんどWebからのカッペなんであんまり理解できてないんだけど。 CreateProcessに渡すSTARTUPINFO構造体が鍵ってところまでは突き止めたんだけど、 パイプを作ったりしてる部分がまだいまいちわからない。 もーちょっとちゃんと理解できたらここに方法を書くことにしようか。

とはいえ、これで新ももめも(仮称)ではコンソールアプリも そのまんま使えるランチャーになってくれそうだぞ。 標準入力も横取りできたほうがいいんだろーけど、 うまいインターフェースが思い浮かばないんでとりあえず保留にしとこう。

とりあえず、早くUIを作らないとな〜。 会社じゃVC++を使えないからWTLなテストが遅々として進まないのよ。

ついでに初めてCreateThreadも使ってみた。 これってなんでVBで使うとよろしくないんだっけ。 なんかふつーに使えそうな気がするんだけどな。。。 暇ができたら試してみよう。

そうそう。

ダイアログベースじゃないウィンドウに コントロールを乗っける方法がわからなくて悩んでたんだけど、 CreateWindow(Ex)でWS_CHILDなウィンドウを作ればいいだけだったんだね。 ちょっと感動。 さらに、そのコントロールから通知されるメッセージはWM_COMMANDで 処理すればいいことも判明。 WM_COMMANDのLOWORD(wParam)が通知元のコントロールのIDで HIWORD(wParam)が通知されるメッセージだから、

case WM_COMMAND:
  switch(LOWORD(wParam)){
  case IDC_EDIT1:
    switch(HIWORD(wParam)){
    case EN_CHANGE:
      ::MessgeBox(hWnd, "へんこうされたのだ。", "テストメッセージ", MB_OK);
      break;
    }
    break;
  }

ってな感じで書けばいいわけだ(たぶん)

さらに言うと、lParamにはそのコントロールのウィンドウハンドルが入ってるらしい。 これも要チェックだぁね。

でも、WM_COMMANDで通知されないメッセージを処理する方法は 相変わらずわからない。 サブクラス化するしかないのかな〜。

ほーむ。 | いぬ。 | さる。 | きじ。 || まえ。 | こんげつ。 | つぎ。
ももたろ<info@momo-lab.net>