gen_nmnl
Posted at 2004-05-29T14:57:00+09:00 in Coding
No Music, No Life.にGETリクエストでsubscribeするWinampのgeneral purpose plug-inを書いてみる。Winampのplug-inは初めて作ったのでかなり混乱したけど、一応動くようだ。
なんだか、使い道が限られたショボイツールばっか作ってる気がする。
まぁいいけど。
Apolloでは動かない罠。quitのところでエラるな。Apolloのせいかプラグインのせいかわからん・・・。
てか、
function GetWinampFilename: String;
var
hWinamp: THandle;
iPos: Integer;
cFileName: Cardinal;
hTemp: THandle;
buf: array[0..500] of Char;
cTemp: Cardinal;
sFileName: String;
begin
Result := '';
hWinamp := FindWindow('Winamp v1.x', nil);
if hWinamp <> 0 then
begin
iPos := SendMessage(hWinamp, WM_USER, 0, 125);
cFileName := SendMessage(hWinamp, WM_USER, iPos, 211);
GetWindowThreadProcessId(hWinamp, hTemp);
hWinamp := OpenProcess(PROCESS_ALL_ACCESS, False, hTemp);
ReadProcessMemory(hWinamp, Pointer(cFileName), @buf, 500, cTemp);
CloseHandle(hWinamp);
sFileName := buf;
Result := sFileName;
end;
end;
こんなコードでWinampやApolloで再生中の曲のフルパスは取得できるということをForumで見つけたので、単体EXEとかでも良さげとか。
別に何か作ろうとか言う訳ではないのですがね。なんとなく作り始めたら面白かった。
Weblog archives
by Month
- October, 2006 (9)
- September, 2006 (23)
- August, 2006 (31)
- July, 2006 (8)
- October, 2005 (13)
- September, 2005 (24)
- August, 2005 (26)
- July, 2005 (2)
- June, 2005 (2)
- May, 2005 (13)
- April, 2005 (30)
- March, 2005 (33)
- February, 2005 (13)
- January, 2005 (10)
- December, 2004 (28)
- November, 2004 (27)
- October, 2004 (25)
- September, 2004 (38)
- August, 2004 (52)
- July, 2004 (45)
- June, 2004 (41)
- May, 2004 (48)
- April, 2004 (36)
- March, 2004 (51)
- February, 2004 (55)
- January, 2004 (63)
- December, 2003 (46)
- November, 2003 (63)
- October, 2003 (92)
- September, 2003 (61)
- August, 2003 (93)
- July, 2003 (57)
- May, 2003 (5)
- April, 2003 (35)
- March, 2003 (35)
- February, 2003 (37)
- January, 2003 (62)
- December, 2002 (32)
This page was last modified on 2004-06-10T00:49:17+09:00 (in 0.099 secs).