MX-R側滾輪初步hack - 鍵鼠

By Barb Cronin
at 2007-05-23T11:34
at 2007-05-23T11:34
Table of Contents
<note> 本篇不希望被轉載到任何地方 , 改壞也請自行負責 </note>
<note2> 懶得自己改的人 , 請google找uberOptions就行了 </note2>
昨天裝上MX-R後就一直在找相關的解決方法來搞定側滾輪不能自定的問題...
後來綜合了一下羅技論壇上的 , 跟一些挖到的資料 , 是有了一些初步的解法...
在要改之前 , 要先瞭解一下側滾輪的動作原理...
側滾輪其實是分成了 往上 , 往上到底 , 往下 , 往下到底 , 跟按下去 這五動.
所以其實它是一個5個button的button group...
也就是說認真要改的話 , 可以將之改成有五個不同動作的滾輪...
像是往上推是Back , 往上推到底就開Document Flip這樣...
不過一般為了不混淆起見 , 通常是會把往同方向推的設成同一個keyset.
ok , 原理講完了 , 那實際上來修改一下吧.
在修改之前 , 先讓我們感謝羅技setpoint的程式設計師.
因為他們所寫出來的setpoint的處理流程相當的靈活...
所以才不會因為我們改了一些設定 , 而忘了改對應的config file , 導致crash.
"THX~Setpoint Team!" //wave
*以下修改的xml檔 , 請自行事先備份 , 以供還原使用!"
首先 , 要先準備好每個button所要對應的動作組合.
請到setpoint的安裝目錄下 , 開啟default.xml這個檔
裡面會有一行文字如下 (受限於BBS , 請自己把它接成一行)
<HandlerSetGroup Name="FiveSwitchGroup" HandlerSetNames="FiveSwitchZoom,
FiveSwitchQuickSwitch" />
這行就是側滾輪5個button能修改的動作定義...
但是因為這樣太少了 , 所以我們要把它改成像下面這樣 (一樣自己接成一行)
<HandlerSetGroup Name="FiveSwitchGroup" HandlerSetNames="FiveSwitchZoom,
FiveSwitchQuickSwitch,BrowserForward,Back,CruiseUp,CruiseDown,
KeystrokeAssignment,AutoScroll,UniversalScroll,Do Nothing,Unassigned,
MiddleButton,DoubleClick,StartMenu,DragLock,CloseApplication,Copy,Cut,Paste,
Maximize,Minimize,Undo,Redo,PageDown,PageUp,HorzScrollLeftSet,
HorzScrollRightSet" />
這樣一長串已經差不多是把能定義的全都定義上去了... XD
而我剛剛也說了 , 我們往往會把同方向定義成同一個mouse button group.
所以請把上面那一長串copy & paste個兩次 , 一共弄成三行...
分別將其中的 Name="FiveSwitchGroup" 改成
Name="FiveSwitchGroupUp"
Name="FiveSwitchGroupDown"
Name="FiveSwitchGroupPress"
改完後請存檔 , 關掉xml檔.
再來請執行regedit , 然後到HKEY_LOCAL_MACHINE/SOFTWARE/Logitech/Setpoint下
展開後在CurrentVersion中的Setup中有一個path是我們需要的.
就是Device Folder這一項 , 將path copy下來之後 , 開啟對應目錄.
在裡面會有一個PointingDevice的子目錄.
進去之後就是Logitech的SetPoint支援的HW所有的設定檔都在此...
也就是說如果有人想自己hack MX510 , G5 , VX-R...blahblah的也都可以在這邊挖.
我們要改的是MX-R , 所以請到100006D這個子目錄下 , 開啟100006D.xml
開啟後找一段像這樣的text.
<Button Number="9" Name="9">
<Trigger Class="ButtonPress">
<PARAM Buttons="9,10,11,12,13" />
<TriggerState Name="ButtonDownUp" HandlerSet="FiveSwitchQuickSwitch"
HandlerSetGroup="FiveSwitchGroup"/>
</Trigger>
</Button>
其中的 PARAM Buttons , 就代表了同一group的buttons...
而HandlerSetGroup這項則是對應到我們剛改的default.xml檔中的action set.
因為我們不想要將5個button都綁在同一個group , 所以我們要改成像以下這樣
<Button Number="9" Name="9">
<Trigger Class="ButtonPress">
<PARAM Buttons="9,10" />
<TriggerState Name="ButtonDownUp" HandlerSet="FiveSwitchQuickSwitch"
HandlerSetGroup="FiveSwitchGroupUp"/>
</Trigger>
</Button>
這樣往上推就會去找default.xml檔裡面的FiveSwitchGroupUp了
其中button 9是往上推 , button 10是往上推到底.
如果你要分開設定也行 , 就在PARAM Buttons中把10去掉後 , 將Button10獨立處理就行.
ok , 往上的動作有了 , 接下來新加一段文字來處理往下推的
<Button Number="11" Name="11">
<Trigger Class="ButtonPress">
<PARAM Buttons="11,12" />
<TriggerState Name="ButtonDownUp" HandlerSet="FiveSwitchQuickSwitch"
HandlerSetGroup="FiveSwitchGroupDown"/>
</Trigger>
</Button>
還要再加一段文字來處理按下去的
<Button Number="13" Name="13">
<Trigger Class="ButtonPress">
<PARAM Buttons="13" />
<TriggerState Name="ButtonDownUp" HandlerSet="FiveSwitchQuickSwitch"
HandlerSetGroup="FiveSwitchGroupPress"/>
</Trigger>
</Button>
至此 , 動作的設定部份就搞定了. 不過在關掉檔案之前請回想一下...
原本的Setpoint只有分9個可定義按鍵 , 所以我們新加了兩個...
那 , 沒有的圖要去那邊生出來?
所以請拉回到檔案開頭的部份 , 有一行
<Button Bmp="Devices\\PointingDevice\\100006D\\9.png"/>
這一行請接著他CP個兩次...
把那段文字變成看起來像這樣...
<Button Bmp="Devices\\PointingDevice\\100006D\\9.png"/>
<Button Bmp="Devices\\PointingDevice\\100006D\\9.png"/>
<Button Bmp="Devices\\PointingDevice\\100006D\\9.png"/>
</PAGE>
</Bitmap>
當然這樣圖是重覆了沒錯 , 如果你要自己畫的話也可以.
就只要把圖畫好之後 , 放在同一個目錄底下 , 改掉後面檔名就好了. :p
這一段不改也沒差 , 只是在Setpoint中選到Button 11跟13時沒圖而已 , 不會怎樣.
*補充*
因為我們自己加了button設定進去 , 對SetPoint而言"總數"變了...
所以我們要再追加修改10006D.xml檔 , 讓它知道現在的button總數...
看到檔案開頭附近 , 有個NumberOfButtons="13"
我們加了幾個Button區塊進去 , 這邊就要加多少進去...
像剛剛的例子是加了button 11和button 13 , 所以就是加了兩個...
也就是要改成NumberOfButtons="15"才對.
這點很重要 , 不改的話有些功能會被吃掉... :p
全部弄完之後 , 把Setpoint整個shut down下來後重新開啟...
這樣進入設定畫面應該就可以看到有多出了 11 和 13 兩個button可以設定了.
設定完之後程式會自己更新user的定義檔 , 所以不用我們操心~
GJ! Setpoint Team!
其中要注意的是 , 如果我們將側滾輪中的某個動作從Document Flip中去掉的話...
像假如把9設成Document Flip , 11設成back
那這樣把側滾輪往上推的時候 , 一樣會開啟Document Flip.
但是此時側滾輪往下推並不會有任何反應 , 也不會往下捲! 這要注意.
側滾輪的部份 , 設定大概就是這樣....
當然從上面寫的內容裡面 , 就可以推出其他的按鍵的動作set , 進而自行設定...
像是按側鍵開出Document Flip之類的....
這些就懶的仔細講了 , 有興趣的就自己玩玩吧... :p
還有 , 設定上有問題的不要來問我 , 除非是個正妹 , 單身女高中生正妹尤佳.
以上 , have fun with MX-R. :p
--
<note2> 懶得自己改的人 , 請google找uberOptions就行了 </note2>
昨天裝上MX-R後就一直在找相關的解決方法來搞定側滾輪不能自定的問題...
後來綜合了一下羅技論壇上的 , 跟一些挖到的資料 , 是有了一些初步的解法...
在要改之前 , 要先瞭解一下側滾輪的動作原理...
側滾輪其實是分成了 往上 , 往上到底 , 往下 , 往下到底 , 跟按下去 這五動.
所以其實它是一個5個button的button group...
也就是說認真要改的話 , 可以將之改成有五個不同動作的滾輪...
像是往上推是Back , 往上推到底就開Document Flip這樣...
不過一般為了不混淆起見 , 通常是會把往同方向推的設成同一個keyset.
ok , 原理講完了 , 那實際上來修改一下吧.
在修改之前 , 先讓我們感謝羅技setpoint的程式設計師.
因為他們所寫出來的setpoint的處理流程相當的靈活...
所以才不會因為我們改了一些設定 , 而忘了改對應的config file , 導致crash.
"THX~Setpoint Team!" //wave
*以下修改的xml檔 , 請自行事先備份 , 以供還原使用!"
首先 , 要先準備好每個button所要對應的動作組合.
請到setpoint的安裝目錄下 , 開啟default.xml這個檔
裡面會有一行文字如下 (受限於BBS , 請自己把它接成一行)
<HandlerSetGroup Name="FiveSwitchGroup" HandlerSetNames="FiveSwitchZoom,
FiveSwitchQuickSwitch" />
這行就是側滾輪5個button能修改的動作定義...
但是因為這樣太少了 , 所以我們要把它改成像下面這樣 (一樣自己接成一行)
<HandlerSetGroup Name="FiveSwitchGroup" HandlerSetNames="FiveSwitchZoom,
FiveSwitchQuickSwitch,BrowserForward,Back,CruiseUp,CruiseDown,
KeystrokeAssignment,AutoScroll,UniversalScroll,Do Nothing,Unassigned,
MiddleButton,DoubleClick,StartMenu,DragLock,CloseApplication,Copy,Cut,Paste,
Maximize,Minimize,Undo,Redo,PageDown,PageUp,HorzScrollLeftSet,
HorzScrollRightSet" />
這樣一長串已經差不多是把能定義的全都定義上去了... XD
而我剛剛也說了 , 我們往往會把同方向定義成同一個mouse button group.
所以請把上面那一長串copy & paste個兩次 , 一共弄成三行...
分別將其中的 Name="FiveSwitchGroup" 改成
Name="FiveSwitchGroupUp"
Name="FiveSwitchGroupDown"
Name="FiveSwitchGroupPress"
改完後請存檔 , 關掉xml檔.
再來請執行regedit , 然後到HKEY_LOCAL_MACHINE/SOFTWARE/Logitech/Setpoint下
展開後在CurrentVersion中的Setup中有一個path是我們需要的.
就是Device Folder這一項 , 將path copy下來之後 , 開啟對應目錄.
在裡面會有一個PointingDevice的子目錄.
進去之後就是Logitech的SetPoint支援的HW所有的設定檔都在此...
也就是說如果有人想自己hack MX510 , G5 , VX-R...blahblah的也都可以在這邊挖.
我們要改的是MX-R , 所以請到100006D這個子目錄下 , 開啟100006D.xml
開啟後找一段像這樣的text.
<Button Number="9" Name="9">
<Trigger Class="ButtonPress">
<PARAM Buttons="9,10,11,12,13" />
<TriggerState Name="ButtonDownUp" HandlerSet="FiveSwitchQuickSwitch"
HandlerSetGroup="FiveSwitchGroup"/>
</Trigger>
</Button>
其中的 PARAM Buttons , 就代表了同一group的buttons...
而HandlerSetGroup這項則是對應到我們剛改的default.xml檔中的action set.
因為我們不想要將5個button都綁在同一個group , 所以我們要改成像以下這樣
<Button Number="9" Name="9">
<Trigger Class="ButtonPress">
<PARAM Buttons="9,10" />
<TriggerState Name="ButtonDownUp" HandlerSet="FiveSwitchQuickSwitch"
HandlerSetGroup="FiveSwitchGroupUp"/>
</Trigger>
</Button>
這樣往上推就會去找default.xml檔裡面的FiveSwitchGroupUp了
其中button 9是往上推 , button 10是往上推到底.
如果你要分開設定也行 , 就在PARAM Buttons中把10去掉後 , 將Button10獨立處理就行.
ok , 往上的動作有了 , 接下來新加一段文字來處理往下推的
<Button Number="11" Name="11">
<Trigger Class="ButtonPress">
<PARAM Buttons="11,12" />
<TriggerState Name="ButtonDownUp" HandlerSet="FiveSwitchQuickSwitch"
HandlerSetGroup="FiveSwitchGroupDown"/>
</Trigger>
</Button>
還要再加一段文字來處理按下去的
<Button Number="13" Name="13">
<Trigger Class="ButtonPress">
<PARAM Buttons="13" />
<TriggerState Name="ButtonDownUp" HandlerSet="FiveSwitchQuickSwitch"
HandlerSetGroup="FiveSwitchGroupPress"/>
</Trigger>
</Button>
至此 , 動作的設定部份就搞定了. 不過在關掉檔案之前請回想一下...
原本的Setpoint只有分9個可定義按鍵 , 所以我們新加了兩個...
那 , 沒有的圖要去那邊生出來?
所以請拉回到檔案開頭的部份 , 有一行
<Button Bmp="Devices\\PointingDevice\\100006D\\9.png"/>
這一行請接著他CP個兩次...
把那段文字變成看起來像這樣...
<Button Bmp="Devices\\PointingDevice\\100006D\\9.png"/>
<Button Bmp="Devices\\PointingDevice\\100006D\\9.png"/>
<Button Bmp="Devices\\PointingDevice\\100006D\\9.png"/>
</PAGE>
</Bitmap>
當然這樣圖是重覆了沒錯 , 如果你要自己畫的話也可以.
就只要把圖畫好之後 , 放在同一個目錄底下 , 改掉後面檔名就好了. :p
這一段不改也沒差 , 只是在Setpoint中選到Button 11跟13時沒圖而已 , 不會怎樣.
*補充*
因為我們自己加了button設定進去 , 對SetPoint而言"總數"變了...
所以我們要再追加修改10006D.xml檔 , 讓它知道現在的button總數...
看到檔案開頭附近 , 有個NumberOfButtons="13"
我們加了幾個Button區塊進去 , 這邊就要加多少進去...
像剛剛的例子是加了button 11和button 13 , 所以就是加了兩個...
也就是要改成NumberOfButtons="15"才對.
這點很重要 , 不改的話有些功能會被吃掉... :p
全部弄完之後 , 把Setpoint整個shut down下來後重新開啟...
這樣進入設定畫面應該就可以看到有多出了 11 和 13 兩個button可以設定了.
設定完之後程式會自己更新user的定義檔 , 所以不用我們操心~
GJ! Setpoint Team!
其中要注意的是 , 如果我們將側滾輪中的某個動作從Document Flip中去掉的話...
像假如把9設成Document Flip , 11設成back
那這樣把側滾輪往上推的時候 , 一樣會開啟Document Flip.
但是此時側滾輪往下推並不會有任何反應 , 也不會往下捲! 這要注意.
側滾輪的部份 , 設定大概就是這樣....
當然從上面寫的內容裡面 , 就可以推出其他的按鍵的動作set , 進而自行設定...
像是按側鍵開出Document Flip之類的....
這些就懶的仔細講了 , 有興趣的就自己玩玩吧... :p
還有 , 設定上有問題的不要來問我 , 除非是個正妹 , 單身女高中生正妹尤佳.
以上 , have fun with MX-R. :p
--
Tags:
鍵鼠
All Comments

By Caitlin
at 2007-05-25T19:49
at 2007-05-25T19:49

By Faithe
at 2007-05-30T02:56
at 2007-05-30T02:56

By Rebecca
at 2007-06-02T10:33
at 2007-06-02T10:33

By Wallis
at 2007-06-04T03:51
at 2007-06-04T03:51

By Charlotte
at 2007-06-07T23:48
at 2007-06-07T23:48

By Lydia
at 2007-06-08T11:59
at 2007-06-08T11:59

By Hedda
at 2007-06-11T03:06
at 2007-06-11T03:06

By Valerie
at 2007-06-16T01:50
at 2007-06-16T01:50

By Blanche
at 2007-06-19T06:40
at 2007-06-19T06:40

By Jacky
at 2007-06-22T14:17
at 2007-06-22T14:17

By Rae
at 2007-06-22T18:33
at 2007-06-22T18:33

By Ursula
at 2007-06-24T10:29
at 2007-06-24T10:29

By Sarah
at 2007-06-26T12:46
at 2007-06-26T12:46

By Ethan
at 2007-06-27T17:10
at 2007-06-27T17:10

By Tracy
at 2007-06-28T14:28
at 2007-06-28T14:28

By Connor
at 2007-07-02T19:29
at 2007-07-02T19:29

By Lauren
at 2007-07-03T10:26
at 2007-07-03T10:26
Related Posts
我看無刻的需求!

By Rebecca
at 2007-05-21T12:24
at 2007-05-21T12:24
很開心 今天又買到一把G80-11802

By Michael
at 2007-05-21T00:42
at 2007-05-21T00:42
請問IBM KB-7953跟KB-7353差別?以及幾ꐠ…

By Annie
at 2007-05-20T13:25
at 2007-05-20T13:25
Optimus Maximus即將開放pre-orders...

By Dorothy
at 2007-05-17T14:52
at 2007-05-17T14:52
鼠墊適應性報告~燒燙燙 剛做好的喔!

By Ula
at 2007-05-11T19:53
at 2007-05-11T19:53