2006/09/29(Fri)MSNメッセに曲名通知

はてブ数 2006/09/29 2:05 計算機な日記::ソフト作り つーさ

Lunaたんのとこで、MSNメッセンジャに曲名情報を通知する方法を教えてプリーズとかいう記事を見かけた。
(つかLunaたんSBいれたのね、おめでとう! でも、RSS移動してるなら教えてよ><;

あれ、うちで公開してなかったっけ、と思ったら公開してなかった。
この間公開したMuzioだって、そういう風になってるの。
うへへ、全然難しくねーですよ。
CでもHSPでも書いたことある。

やり方

"MsnMsgrUIManager"というクラス名を持つ非表示窓を探す。
そこに 以下のデータを持った WM_COPYDATA を SendMessage する。
データの中身は以下に示すパラメータを"\\0"区切りのUnicode文字列。
ここでの"\\0"は 0x0000ではなく、 '\\'(0x005C) '0'(0x0030) という文字の並びを指す。
COPYDATASTRUCTのdwDataには1351を指定する。

パラメータは以下の順序。
0 アプリケーション名(Winampとか適当),
1 "Music",
2 再生中フラグ(1/0),
3 フォーマット文字列(.NETでよくある0,1とか使うヤツ),
4 0に入る文字列=曲名,
5 1=アーティスト名,
6 2=アルバム名
7 3= ... (以下任意)

サンプル

HSP倉庫。msnmsgrsong.hsp がそれ。
TMIDIで再生してる曲名を表示するために突貫工事したサンプル付き。
(ローカルに保持してるのは、乙マニのプレイ中曲名表示にも対応してたりする
http://tu-sa.net/album.cgi/tsuki/software/hsp/

もういっこ、C言語ソース。
Winampの日本語化パッチに通知機能が付く前に作ったWinamp用プラグイン。
gen_msnmsgrsong.zip

参考にしてちょーだい? もう解決してたりしてネ!