作者tericky (這世界還是有好人的)
看板Wallpaper
標題[教學]讓Rainmeter可以控制千千靜聽
時間Sun Jul 12 01:21:42 2009
其實這是我一直以來想要找出答案的問題
最近因為剛退伍時間多的嚇死人的情況之下
剛好有了一個機會讓我接觸到這方面的知識
又剛好找對了方向,所以才有機會讓我在這邊
美其名是教學,其實是來騙騙p幣的XD
-----------------------------
首先要知道的是:為什麼Rainmeter可以控制Winamp以及讀取Winamp的資訊呢
這是因為Winamp他有提供一個ipc介面供使用者與Winamp溝通
至於為什麼foobar也可以跟Rainmeter溝通呢?
那是因為它用外掛的方式
綜合以上所說的,想要跟Rainmeter溝通,要嘛是用Winamp核心的播放器
要不然就是用外掛的方式模擬,如foobar及KMP等
而今天所要用的方式不是以上所說的兩種方式
而是使用修改面板的ini檔案即可達成
為什麼只要改改幾個字就能解決呢?
念資訊方面的人應該知道SendMessage這個東西吧
他是由user32.dll所提供的一個函式
作用是讓某個指定的程式做你要他做的事
而剛好Rainmeter跟Winamp溝通的方式也是使用這種方式
所以才能讓我在這邊唬唬各位
-------------廢話結束,以下教學範例使用[MKG - ver.sk2]來做講解----------------
將ini檔用文字編輯軟體打開,如:記事本
首先把千千靜聽的安裝位置,m3u及一些資料夾位置先設定好
接著要改的地方是:WindowClass=Winamp v1.x
使用
全部取代的方式改成WindowClass=TTPlayer_PlayerWnd
再來就是要修改各個功能,以下一首(Next)為範例
先找到寫下一首這個功能的位置
如MKG - ver.sk2這個面板來說,是寫在[WaNext]這個地方
往下幾行可以找到
LeftMouseDownAction=!RainmeterPluginBang "MeasureWinamp SendMessage 273
40048 0"
這就是今天的主角啦
首先先解說一下各個參數
MeasureWinamp SendMessage 273 40048 0
↑ ↑ ↑ ↑ ↑
定義WindowClass 不用改 System 參數 參數
的地方的Measure名稱 Message wParam iParam
如果想要實現下一首的功能的話,就改成
MeasureWinamp SendMessage 273 32006 198146
存檔並
更新面板之後測試一下
如果可以成功控制千千靜聽,恭喜你,你已經成功一半了,接著只要把各個參數帶入即可
下表是我已經測試出來的功能參數代號,基本的功能都有,但是有一些目前還是找不到
因為千千靜聽沒有提供讓使用者呼叫的涵式,所以需要靠比較特殊的方法來實現
功能名稱 | System Message | wParam | iParam
------------+---------------------+------------+-----------
上一首 | 273 | 32005 | 198178
------------+---------------------+------------+-----------
下一首 | 273 | 32006 | 198146
------------+---------------------+------------+-----------
停止 | 273 | 32002 | 198144
------------+---------------------+------------+-----------
播放/暫停 | 273 | 32000 | 198204
------------+---------------------+------------+-----------
靜音 | 273 | 32007 | 198156
------------+---------------------+------------+-----------
切換迷你模式| 273 | 32211 | 198160
與正常模式 | 273 | 32212 | 131798 <-兩組皆可以做切換
------------+---------------------+------------+-----------
開啟檔案 | 273 | 57601 | 131898
------------+---------------------+------------+-----------
音量加大5% | 273 | 32010 | 0
------------+---------------------+------------+-----------
音量減小5% | 273 | 32011 | 0
------------+---------------------+------------+-----------
關閉程式 | 273 | 57665 | 394650
------------+---------------------+------------+-----------
ps.覺得音量一次加大5%太慢,可將原本的改成
LeftMouseDownAction=!execute [!RainmeterPluginBang "MeasureWinamp SendMessage
273 32011 0"] [!RainmeterPluginBang "MeasureWinamp SendMessage 273 32011 0"]
也就是寫2次語法,他就會變成一次加10%了!!!
如果你改好之後發現無法使用
下載下面這個程式測試一下是否可以正常執行(需要.netframework 2.0)
小弟寫的,應該不會有毒吧???
http://www.badongo.com/file/15948591
請先開千千靜聽並播放歌曲後再開上面的程式
如果程式執行正常,但是面板不正常,可能是ini檔語法有問題
如果程式執行不正常(可以開啟但是無法控制千千靜聽),那就是你跟本教學無緣了
我的測試環境為Xp sp3,千千靜聽5.5(Unicode)繁體版,.net framework 3.5
使用工具為Spy++,如果有心的話,任何播放器都可以用這套找出規則來哦!!!
如果有錯的地方還是有問題,請寄個信給我吧 ^^
--
◢ ◣ JOY是攘夷!
JOY◢
◣
▃▃ ▃ /
⊙ ⊙ ∣ ─ ─▂/
▄▄ ∣\
■◤◎
◥
◣ ∣  ̄ ̄︶
▃ ▃ ╲\ >
﹨ By RISE
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 125.233.146.196
1F:推 dog79721:不推不行 07/12 01:34
※ 編輯: tericky 來自: 125.233.146.196 (07/12 01:40)
2F:推 a007son:+1 07/12 10:47
3F:→ jotter:有看有推 07/12 10:49
4F:推 QueenKiller:這世界還是有好人的 07/12 11:40
5F:推 zxp915406:大推!! 成功了 07/12 13:23
6F:推 keazi:推啊~~ 07/13 00:34
7F:推 sanky:大推~~~ 07/16 02:41
8F:推 NOONENOONE:為什麼這麼棒的文章推文那麼少! 08/09 18:14
9F:推 MomIamHere:受益良多~~~ 08/09 21:05
10F:推 Yibobo:有看有推,謝謝! 10/20 15:45
11F:推 maygesa:真的不推不行阿!!!! 10/21 11:04