[D言語][Regnessem][無能くん] すすみません
今日はあんまり進みませんでした。
下はSystem/Session/OnReceiveMessageイベントが通知されると呼び出されるよう
HookEventしておいた関数。
module munokun; (略) private: // グローバル変数の宣言 bit isMunokunOn; (略) // 返信メッセージを作成して送信する関数 extern (Windows) int OnReceiveMessage(WPARAM wParam, LPARAM lParam) { PMessageInfo pMI = (PMessageInfo)lParam; if ( !isMunokunOn ) return 0; // オウム返しする CallService(GetService(NMS_SYSTEM_SESSION_SENDMESSAGE), wParam, lParam); return 1; } // module munokun;
これからPMessageInfo構造体のlpBodyに入っている文字列をコピーして
特定の文字列が含まれているか探します…
[D言語] DMD 0.86 リリース
http://www.digitalmars.com/d/dcompiler.html にて、
D言語のコンパイラ dmd.exe がアップデートされました。
ということで最新版を使ってみる。
以下リリースノートより。
What's New for D 0.86 Apr 23, 2004
- New/Changed Features
- Added template default parameters.
- Added casting ability to non-COM interfaces.
- Added Christopher E. Miller's std.socket and std.socketstream.
- Added std.mmfile (thanks to Matthew Wilson!)
- Bugs Fixed
- An error is now issued when the argument to delete is a COM interface object.
- Incorporated Antonio Monteiro's fixes for std.date and std.zip.
- Error now diagnosed when EnumBaseType is not integral.
- Fixed delete on non-class objects.
だってさ。
std.socketstream が出来たのか。ほかにも標準ライブラリが改善されたみたい。
enumで整数型以外はまだ指定できないみたいだね。ちなみにドキュメントの日本語訳の方には
EnumBaseTypeのことは書いてないのですね。訳したひとちゃんと調べたんでせう。すごいなあ。
ところで、コンパイルの度に
Max # of fixups = ...
と表示されるようになったけど、これはどういう意味なんだろう?
マップファイルにベース再配置情報を入れるためのもの…って、
何のこっちゃ。初学者丸出しです。
リンクの時にそれぞれの関数の位置なんかを渡すためのものなのかな。。。
まいいや。コンパイルは正常に出来ているみたいだし└( ´ー`)┘
⊂⌒~⊃。Д。)⊃ ギブアップ
一日考えたけど、やっぱりわからん。
Notifyウィンドウを表示させられないよぅ_| ̄|○
以下コード。
module ui; import std.string; import y4d_aux.widestring; private import win32.ansi.windows; import nsmsgs.types; import nsmsgs.consts; import system; //------------------------------------------------------------------------------------------// private: // サービスハンドルを記憶する変数 HNsmService hNotify; HNsmService hMsgBox; //------------------------------------------------------------------------------------------// public: // UI/Notifyサービスをラップする関数 int Notify(char[][] lpText, int nTimeToLive, int nIcon, char[][] lpLinkTo, TNotifyClickCallback lpOnClick, int nData) { if ( !hNotify ) hNotify = GetService(NMS_UI_NOTIFY); if ( hNotify ) { TNotifyInfo notifyInfo; notifyInfo.cbSize = notifyInfo.size; notifyInfo.lpText = toWCSz(lpText); notifyInfo.nTimeToLive = nTimeToLive; notifyInfo.nIcon = nIcon; notifyInfo.lpLinkTo = toWCSz(lpLinkTo); notifyInfo.lpOnClick = lpOnClick; notifyInfo.nData = nData; return (int)CallService(hNotify, (WPARAM)¬ifyInfo, (LPARAM)0); } return 0; // 正常終了か異常終了かは判別不能 } (以下略)
system.dはこんな感じ。
module system; import std.string; private import win32.ansi.windows; import nsmsgs.types; import nsmsgs.consts; //------------------------------------------------------------------------------------------// private: // システム関数のポインタを記憶する変数 TNsmPluginInitInfo NsmInitInfo; // サービスハンドルを記憶する変数 // なし //------------------------------------------------------------------------------------------// public: // システム関数のポインタを記憶する関数 void SetInitInfo(PNsmPluginInitInfo lpInitInfo) { NsmInitInfo = *lpInitInfo; return; } // サービスの管理 HNsmService CreateService(char[] lpServiceName, TNsmServiceProc ProcAddr) { return NsmInitInfo.CreateService(toStringz(lpServiceName), ProcAddr); } (以下略)
で呼び出し側はこうなってます。
(略) ui.Notify("Onにしました", -1, NMNI_CONNECT, "", &OnNotifyClick, 0); (略) extern (Windows) void OnNotifyClick(int nData) { ui.MessageBox(null, "まゆげ犬の恐怖", MODULENAME, MB_OK); return; }
デバッグウィンドウにてCallService()がUI/Notifyを呼び出しているところまでは確認。
ということは引数の中身が何かおかしいはずだけど…
うーん。わからん。
[はてな] はてなダイアリー利用者に100の質問(2004)
- あなたのはてなダイアリー名を教えてください。
- utautai の きままなにっき
- はてなダイアリー名の由来をお聞かせください。
- 不定期で書くのをさぼっても言い訳になるように。
- あなたの「はてなID」を教えてください。
- utautai
- 「はてなID」の由来をお聞かせください。
- ネット上でのハンドル名そのまま。
- あなたのハンドル(ペンネーム)を教えてください。
- utautai_tai
- ハンドルの由来をお聞かせください。
- うたうたうのすきだから
- あなたの血液型を教えてください。
- BOだよ
- あなたは、身長が高い方ですか? 低い方ですか?
- ふつう、かちょっと低いくらい。自分では小さいほうだと思っている。
- あなたは、体重が多い方ですか? 少ない方ですか?
- ふつう。BMIも適正値。
- あなたは、視力がいい方ですか? 眼鏡っ子ですか?
- ものすごく悪いけど裸眼っ子。健康診断で視力0と判定される(;_;)
- あなたの出身地を教えてください。
- おおさか
- あなたの現在地はどちらですか?
- おおさか/こうべ
- あなたの精神年齢は、何歳ぐらいですか?
- 実年齢と同じくらい。低くはなく飛びぬけて高くもなく
- あなたの好きな動物を教えてください。
- ねこ
- あなたの嫌いな動物を教えてください。
- ごきちゃん
- あなたの好きな食べ物を教えてください。
- あーもんど、ぐらたん
- あなたの嫌いな食べ物を教えてください。
- ぶたのあぶらみ
- あなたの得意なスポーツを教えてください。
- バスケ?
- あなたの好きな音楽を教えてください。
- 音楽全般好き。
- あなたの好きな映画(ドラマ)を教えてください。
- あなたの好きな本を教えてください。
- あんまないなあ
- あなたの好きなマンガを教えてください。
- いっぱいあるからよくわからん
- あなたの好きなアニメを教えてください。
- あんまないなあ
- あなたが良く見るテレビ番組を教えてください。
- ニュース番組? 最近テレビ見る時間ないです
- あなたの嫌いなことを教えてください。
- 気を遣わないこと
- あなたの「座右の銘」を教えてください。
- とくにきめてないです
- あなたが尊敬している実在の人物は誰ですか?
- とくになし
- あなたが愛している架空のキャラクターは誰ですか?
- 架空だからなあ とくにいません…
- あなたは、電話(固定/携帯)料金を毎月いくら払っていますか?
- 5000円くらい?
- あなたは、インターネットのために毎月いくら払っていますか?
- 5000円くらい
- あなたは、おこづかいを何に注ぎ込んでいますか?
- CD、ピアノの月謝、洋服
- あなたは、インターネット(パソコン通信)をいつから使っていますか?
- 自分で使い出したのは6〜7年程前から
- あなたが「履歴書に書いている趣味・特技」を教えてください。
- うたをうたうこと、作曲、プログラミング、おさんぽ
- あなたの「履歴書には書けない趣味・特技」を教えてください。
- なんちゃって絶対音感
- あなたは、オフ会に参加したことがありますか?
- ないよん
- はてなダイアリーでのあなたしか知らない人が実物のあなたに会ったら、どう思われるでしょうか(どう思われましたか)?
- そのまんまだと思うんぢゃないですか
- はてなダイアリーの他に、ウェブサイトをお持ちですか?(できれば、URLを教えてください)
- 大学にまっしろいページが
- はてなダイアリーをどうやって知りましたか?
- Googleでしょっちゅう検索にひっかかってきたから
- はてなダイアリーを使うことにしたきっかけは何ですか?
- はてなダイアリーを始める前に、日記を書いていましたか?
- みっかぼうず
- はてなダイアリーを使い始めた最初の日はいつですか?
- 2004年04月15日深夜
- はてなダイアリーの更新頻度を教えてください。
- 今のところほぼまいにち
- はてなダイアリーは、どこから更新していますか?
- 家か学校
- はてなダイアリーを更新するのは、1日のうちのいつ頃ですか?
- 夜中かひるま
- はてなダイアリーに1度載せた文章を、後から書き換えることはありますか?
- ていうかしょっちゅう、アンテナしてくれてる人に申し訳ないくらい
- はてなダイアリーに、写真や画像を載せていますか?
- こないだやろうとして失敗してそのまま
- 設定について。あなたが使っているテーマ(デザイン)は何ですか?
- モモンガ 自分でも作ってみたい
- 設定について。あなたは、スタイルシートをいじっていますか?
- かなりいぢってるけど全然目的のレイアウトにならない
- はてなダイアリーで、遠い過去や遙か未来の日記を書いたことがありますか?(捕足:日記を書く際に日付を指定することで、生まれる前の日記を書くこともできます)
- 今のところやってない。やったら面白そうだとは思っている
- はてなダイアリーで、「偽りの自分」「作り上げたキャラクター」が登場することがありますか?
- 一人称はつくりもの
- はてなダイアリーを、誰に向けて書いていますか(誰に読んでもらいたいですか)?
- 誰というわけではなく 検索で流れてきた人が読むこともあるだろうし
- はてなダイアリーを書くとき、読み手のことをどの程度意識していますか?
- つねに
- はてなダイアリーを書いていて専門的な(特殊な)話になったとき、読み手に対してどの程度の配慮をしますか?
- まったく
- はてなダイアリーを書くとき、気をつけていることをお聞かせください。
- 情報として再利用可能なこと。論点が明確なこと。読み手を不快にさせないこと。できれば笑いがあること。
- あなたのはてなダイアリーでは、2ちゃんねる用語を用いていますか?
- しょっちゅう
- あなたのはてなダイアリーでは、アスキーアートや顔文字を用いていますか?
- はい
- あなたがこれまでに書いたはてなダイアリーの中で、オススメなもののアンカー(日付)を教えてください。
- いや、そこまで会心のものはまだ…
- あなたは、よそのはてなダイアリーにコメントを付けることが多いですか?
- いままでのところありません
- 設定について。あなたは、コメントの受け付けをどのようにしていますか?(パブリック/ユーザーのみ/拒否)
- パブリック
- 1つ前の質問について。その理由を教えてください。
- ユーザーのみにしてたら書き込みたい人が書き込めなくて迷惑かけたんで
- コメントを拒否していない人へ。あなたが最初にコメントをもらった時の感想をお聞かせください。
- あっ、すごい人に発見されちゃった
- コメントを拒否していない人へ。あなたは、コメントをもらうことが多い方ですか? 少ない方ですか?
- 少ないんぢゃないですか 専門性高いし
- コメントを拒否していない人へ。あなたは、知らない人からもコメントをもらいたいですか?
- そりゃあもう
- コメントを拒否していない人へ。どのくらい前のものであれば、コメントをつけてもいいですか?
- いつでもいいですよ
- コメントを拒否していない人へ。あなたは、コメントを削除したことがありますか?
- 自分のはね
- 市民になっている人へ。あなたは、キーワードを作成したことがありますか?
- -
- キーワード作成経験者へ。はじめて作ったキーワードを教えてください。
- -
- キーワード作成経験者へ。これまでに、どのくらいキーワードを作りましたか?
- -
- キーワード作成経験者へ。得意なカテゴリーはどれですか?
- -
- キーワード作成経験者へ。あなたが作った自慢のキーワードを教えてください。
- -
- キーワード作成経験者へ。作成したものが、削除対象になったことはありますか?
- -
- あなたではない人が作ったキーワードで、「これはすごい」と感心したものを教えてください。
- 野球関係 よくここまで経歴調べたなあと…
- あなたではない人が作ったキーワードで、「どうしてこんなものが!?」と驚いたものを教えてください。
- 一般名詞はだいたいそう
- 設定について。あなたは、キーワードリンクをどのようにしていますか?(カテゴリーや、普通名詞/固有名詞の別について)
- だだもれ
- 1つ前の質問について。その選択の理由について教えてください。
- たくさんリンクが繋がってた方がおもしろいから
- キーワードについて。これまでに最も多くの人を呼び込んだものを教えてください。
- Regnessem てかまだ閑散としてるほうだと思う
- キーワードについて。ミスヒット(いわゆる誤爆)体験をお聞かせください。
- ? 7割方誤爆ですよ
- キーワードについて。うっとうしく感じることはありますか?
- たまにね
- はてなダイアリー利用者のうち、注目している人のidを挙げてください。
- うーん まだ自分ので精いっぱい
- あなたには、目標にしてるウェブサイトがありますか?
- ないです
- あなたがはてなダイアリーを書いていることを、家族/同僚/級友は知っていますか?(隠していたのにバレたことがありますか?)
- 隠す必要はないと思うのですが言ってません。
- あなたは、有料オプションを利用していますか?
- いいえ
- 1つ前の質問について。その理由をお聞かせください。
- せっかくタダなんだから
- あなたは、はてなダイアリーが有料化されても使いますか(月額いくら迄なら続けますか)?
- 100〜300円ってとこぢゃないすか
- あなたは、「投げ銭」を渡したり、もらったりしたことがありますか?
- ないです
- あなたは、はてなダイアリークラブに参加した事がありますか?
- いいえ
- はてなダイアリーのアクセス数を伸ばすための、コツは何でしょうか?
- まめに更新すること、HOTな話題を見つけること
- あなたは、はてなダイアリーの利用を誰かに勧めたことがありますか? もしくは、勧めようと思っていますか?
- うーん、まだよくわからないなあ
- これからはてなダイアリーをはじめようとする人へ、あなたからのアドバイスをお願いします。
- 気楽に書いてください
- はてなダイアリーを始めて良かった事は何ですか?
- アドバイスをもらえること
- はてなダイアリーを始めて悪かった事は何ですか?
- いまのところない
- はてなダイアリーをあなたが採点するなら、何点をつけますか?(100点満点で)
- 80点くらい? 使いこなせばもっとかも。スタッフの皆さんもがんばってらっしゃると思います。
- はてなダイアリーブック(紙の本)にするつもりはありますか?
- そんな大層なこと書いてないからまだいいです
- あなたは、はてなアンテナを利用していますか?
- はい
- アンテナ利用者へ。パブリックにしていますか? それともプライベートですか?
- パブリック
- アンテナ利用者へ。どのような基準でアンテナに加えていますか?
- 自分をアンテナに加えてくれているひと、自分のキーワードにかかわりのあるところ
- あなたが、この「100の質問」に欠けていると思うのは、どんな質問ですか?
- ? そんなこと考えずに回答してました(^^;
- 1つ前の質問(の回答)について。では、まずあなたからお答えください。
- ええと、ええっと… アドリブ弱いんで勘弁してください (_人_)
- はてなスタッフの皆さんへ、叱咤激励をお願いします。
- 顔の見える経営を続けるのはしんどいと思いますが、更なるサービス充実を目指してがんばってください。
- お疲れ様でした。最後に一言どうぞ!
- こんなの読んでくれた人ありがとう。ぞんざいな言葉遣いでごめん。
■
今日はネタがないのでこんなものを書いてみる。