SetPointとは、Logicoolのマウスやキーボードのためのドライバです。
Support + Downloads: SetPoint - Logicool
SetPoint – Logicool サポート + ダウンロード
ボタンの割り当ては、user.xmlに記録されます。
SetPointによる設定を行う前に、このuser.xmlファイルをコピーしておきます。そして設定後に新旧のファイルの差分を見ることで、SetPointによる設定がどのように設定ファイルに反映されるかがわかります。
ファイル名 | パス | 説明 |
---|---|---|
default.xml | %PROGRAMFILES%\Logicool\SetPointP | ボタン割り当ての定義 |
Strings.xml | %PROGRAMFILES%\Logicool\SetPointP | 機能名称の定義 |
モデル番号.xml | %PROGRAMDATA%\Logishrd\SetPointP\Devices\PointingDevice\モデル番号 | 製品ごとの定義 |
user.xml | %APPDATA%\Logitech\SetPoint\user.xml | ユーザー設定 |
ここでは「Bluetooth® Mouse M555b」を対象とすることを前提に解説します。XML文書を読むことになりますので、最低限その知識が必要です。
製品ごとのモデル番号の一覧表を作成しました。こちらに対象製品が掲載されているならば、以下の手順は不要です。
まずuser.xmlを開きます。そして製品名の「M555b」をキーワードに検索すると、DisplayName属性にそのキーワードを含む、Device要素が見つかります。
<Device DisplayName="BluetoothR Mouse M555b" Class="PointingDevice" Model="16777371" NumberOfButtons="8" ConnectionID="">
この要素のModel属性の値を、16進数に変換します。この変換は、たとえばWindows付属の電卓の[プログラマ電卓]の機能でできます。
この例での値「16777371」を16進にすると「100009B」ですので、次に%PROGRAMDATA%\Logishrd\SetPointP\Devices\PointingDevice\100009Bにある100009B.xmlを開きます。
このファイルでは、Button要素で各ボタンの定義がされています。たとえば第4ボタン (既定では左スクロール) の定義は、Name属性が"4"となっている次の要素です。
<Button Number="7" Name="4"> <Trigger Class="ButtonPress"> <PARAM Button="7" Type="Tilt" /> <TriggerState Name="ButtonDownUp" HandlerSet="HorzScrollLeftSet" HandlerSetGroup="ScrollLeftGroup2"/> </Trigger> </Button>
ここにあるHandlerSetが割り当ての既定値で、HandlerSetGroupが割り当ての選択肢をまとめたものとなっています。これらの属性の値は、default.xmlで定義されています。
この例でのHandlerSetの値「HorzScrollLeftSet」は、そこ (default.xml) で次のように定義されています。
<!-- Handler Horz Scroll Left -->
<HandlerSet Name="HorzScrollLeftSet"
HelpString="HELP_HORZ_SCROLL_LEFT" >
<Handler Class="HorizontalScroll" >
<Param Right="0" />
</Handler>
</HandlerSet>
HelpString属性がUIに表示する文字列で、それはStrings.xmlで定義されています。たとえば「HELP_HORZ_SCROLL_LEFT」は、
<String ALIAS="HELP_HORZ_SCROLL_LEFT">左にスクロール</String>
と定義されており、結果としてUIには「左にスクロール」と表示されます。
一方でHandlerSetGroupの「ScrollLeftGroup2」は、
<HandlerSetGroup Name="ScrollLeftGroup2" HandlerSetNames="HorzScrollLeftSet,Back,MM PREVIOUS,CruiseUp,CruiseDown,KeystrokeAssignment,OtherMiceGroup" VisibleHandlerSetCount="6" />
と定義されています。HandlerSetNames属性のカンマ区切りの文字列が、それぞれHandlerSet要素に対応しています。この例では、
の7項目がそれです。このうちOtherMiceGroupだけが例外で、これ自身がまたHandlerSetGroupの定義となっています。
<HandlerSetGroup Name="OtherMiceGroup" HandlerSetNames="CloseApplication,Copy,Cut,Do Nothing,DoubleClick,QuickSwitch,StartMenu,DragLock,LeftMouseButton,Maximize,MiddleMouseButton,Minimize,PageDown,PageUp,Paste,Redo,Unassigned,Undo,Windows8OthersTaskGroup" />
設定を反映させるためには、SetPointを再起動します。そのとき「SetPoint.exe」がプロセスに残っているならば、タスク マネージャーで先にそれを終了させます。
もっとも簡単な方法は、user.xmlでユーザー設定を編集することです。しかし変更のたびにエディタで編集するのは手間のため、default.xmlでボタンの割り当て定義を変更すべきです。
default.xmlを編集するには、エディタを管理者権限で実行する必要があります。
default.xmlのHandlerSetGroupには、「OtherMiceGroup」のように[その他]の項目をまとめたものがあります。ここにHandlerSetの項目を追加することで、[その他]の選択肢を任意に変更できます。このようにすると後はSetPointのGUIから設定を変更できるため、この方法がお勧めです。
SetPointに[マイ マウス]タブが表示されない、もしくはそのタブは表示されているが接続しているマウスが一覧に表示されないことがあります。このような場合には、SetPointを再インストールするしかないようです。SetPoint でマウスまたはキーボードをカスタマイズできない - Logicool FAQ
公式ページの解説ではアンインストールしてから再インストールするように指示されていますが、上書きしてインストールしても問題は解決できました。またカスタマイズした設定は初期化されず残るため、その点は安心です。
SetPointには接続している製品が表示されているが、マウスを動かしてもマウスポインタが反応しないことがあります。このような場合には、接続をし直します。
Unifyingで接続しているならば[Logicool Unifyingソフトウェア]で、さもなくば[Logicool 接続ユーティリティ]を起動します。
既定では%COMMONPROGRAMFILES%\LogiShrd\Unifying\DJCUHost.exeにあります。
Support + Downloads: Unifying Software - Logicool既定では%PROGRAMFILES%\Logicool\SetPointP\ConnectUtility.exeにあります。
ロジクール接続ユーティリティ必要なファイルが正しくインストールされていないと、製品の画像が白く一般的な形状のマウスなどになることがあります。
表示されるべき画像は、設定ファイルのモデル番号.xmlに
<!-- mouse pic -->
<Bitmap>
<PAGE>
<Button Bmp="Devices\\PointingDevice\\100009B\\1.png"/>
<Button Bmp="Devices\\PointingDevice\\100009B\\2.png"/>
<Button Bmp="Devices\\PointingDevice\\100009B\\3.png"/>
<Button Bmp="Devices\\PointingDevice\\100009B\\4.png"/>
<Button Bmp="Devices\\PointingDevice\\100009B\\5.png"/>
</PAGE>
</Bitmap>
のように定義されています。つまり画像は本来、モデル番号.xmlと同じフォルダにあるべきです。しかしそれが存在しないときに、代替の%PROGRAMDATA%\Logishrd\SetPointP\Devices\PointingDevice\generic\mouse_trans.pngが表示されます。これが白いマウスの正体です。
製品の画像は、製品のドライバをインストールした後で、初めてSetPointでその製品の画像が表示されるときにインストールされます。それに失敗すると、上で示したような白い画像となります。
前述のモデル番号.xmlで参照されるパスに、画像ファイルを配置します。
[http://updates.logitech.com/logitech/controldevices/setpoint/devices/2/モデル番号.exe]から、対象製品のセットアップファイルをダウンロードして実行します。Setpoint images missing - Logitech Forums
たとえばM555bならばモデル番号が「100009B」ですので、http://updates.logitech.com/logitech/controldevices/setpoint/devices/2/100009b.exeからダウンロードできます。
ただし、すべての製品でダウンロードできるわけではありません。その場合にはSetPointを再インストールして、自動アップデートを有効にしてデバイスを接続し直します。
なお自動アップデートはSetPointの[ツール]タブを開き、[SetPointのオプション]の[設定]から有効にできます。これは既定では有効となっているはずです。
ときおり「Logicool KHAL Main Processは動作を停止しました。」と表示されることがありますが、これはSetPointのプロセスで、その実体はKHALMNPR.exeです。