[滑鼠] MX-R側滾輪初步hack

看板Key_Mou_Pad (鍵盤滑鼠)作者 (C'est La Vie)時間18年前 (2007/05/23 11:34), 編輯推噓12(1207)
留言19則, 6人參與, 最新討論串1/1
<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 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.220.198.114

05/23 11:37, , 1F
這瞬m是怎麼回事.. 囧>
05/23 11:37, 1F

05/23 11:41, , 2F
真強者當然瞬m阿~
05/23 11:41, 2F

05/23 11:43, , 3F
表示板主閒閒沒事掛著看板....
05/23 11:43, 3F

05/23 11:43, , 4F
可是我自己還在跟它的SmartSearch怎麼開Sleipnir奮鬥中啊 OTL
05/23 11:43, 4F

05/23 11:44, , 5F
btw , 我還是沒找到Win2003怎麼雙螢幕掛不同icc的方法 OTL
05/23 11:44, 5F

05/23 11:46, , 6F
SetPoint不能設定預設瀏覽器嗎? 我還以為把Windows預設設
05/23 11:46, 6F

05/23 11:47, , 7F
好就好了,至於ICC哦....要不要借個ATI顯卡試看看?
05/23 11:47, 7F

05/23 11:49, , 8F
不行 , 我預設已經是Sleipnir了 , MSN也會用Sleipnir開...
05/23 11:49, 8F

05/23 11:49, , 9F
但是MX-R的不曉得為啥就是不會開Sleipnir只開IE , 聽說FF正常.
05/23 11:49, 9F

05/23 11:50, , 10F
至於icc的問題 , 我放棄了... XD
05/23 11:50, 10F

05/23 11:57, , 11F
你可以作個螢幕的ICC Profile,然後設定在PhotoShop中,看
05/23 11:57, 11F

05/23 11:57, , 12F
他在哪個螢幕開就套哪個螢幕的ICC Profile....XD
05/23 11:57, 12F

05/23 12:15, , 13F
我是還好啦 , PS CS只會在Eizo開 , 所以現在是固定的.. :Q
05/23 12:15, 13F

05/23 14:10, , 14F
"單身女高中生正妹尤佳"... 你的喜好一路走來始終如一啊!
05/23 14:10, 14F

05/23 14:35, , 15F
高中正妹....號稱的可以嗎?XDDDDD
05/23 14:35, 15F

05/23 14:49, , 16F
號稱的不能算啦~ XD
05/23 14:49, 16F

05/23 15:04, , 17F
<=自稱高中正妹....不是號稱XD
05/23 15:04, 17F

05/23 16:05, , 18F
[x]
05/23 16:05, 18F
※ 編輯: w8r 來自: 61.220.198.114 (05/23 16:43)

05/23 23:55, , 19F
推一個 很花心思的又上了顏色方便閱讀 !!!
05/23 23:55, 19F
文章代碼(AID): #16KxOwPH (Key_Mou_Pad)
文章代碼(AID): #16KxOwPH (Key_Mou_Pad)