Windows 11のマウスポインターを一発切り替え!推しカーソルを会議前にサッと戻すバッチ

IT
この記事は約8分で読めます。

推し活中のみなさん、こんなこと思ったことありませんか?

推しのマウスポインターを見つけて、せっかくなら仕事中も使いたい。

でも、打ち合わせやオンライン会議で画面共有するときに、そのまま映るのはちょっと恥ずかしい……。

かといって、毎回Windowsの設定画面を開いて「標準カーソルに戻す → 会議が終わったらまた推しカーソルに戻す」のも地味に面倒です。

そこで今回は、Windowsに登録されているマウスポインターのスキームを自動で取得し、番号を選ぶだけで切り替えられるバッチを作りました。

仕事中は推しカーソル、会議前は仕事用・標準カーソルとして保存したスキームへ。会議が終わったらまた推しカーソルへ。そんな使い方をできるだけ簡単にするのが、今回の「Mouse Cursor Switcher v6.1」です。

┈ Twitterでも発信しているのでぜひフォローお願いします!

今回作ったMouse Cursor Switcher v6.1

起動すると、Windowsに登録されているカーソルスキームを自動で取得して一覧表示します。

==============================================
   Mouse Cursor Switcher - Auto Detect v6.1
==============================================

  Current : Asagiba_Nia
  * = currently selected

  *  1 - Asagiba_Nia
     2 - Asagiba_Miku
     3 - Default
     4 - SampleCursor

     S - Open Mouse Pointer Settings
     D - Show Current Cursor Details
     R - Refresh Scheme List
     Q - Exit

Select:

切り替えたいスキームの番号を入力してEnterを押すだけ。現在選択中のスキームには * が表示されます。

このバッチでできること

  • Windowsに登録済みのカーソルスキームを自動検出
  • 数字を選ぶだけでカーソルスキームを切り替え
  • 現在使用中のスキームを * で表示
  • よく使うスキームだけ上位に表示
  • ワイルドカードを使った優先表示
  • マウスポインター設定画面を直接起動
  • 現在のArrow・Waitカーソルの参照先を確認
  • 切り替え後にカーソルを即時再読み込み

最初は自分専用のバッチだった

このバッチは、もともと自分が使っている複数のカスタムカーソルを簡単に切り替えたくて作り始めました。

初期版では特定のカーソルシリーズを優先表示するようにしていたため、自分には便利でも、そのままでは他の人が使いにくい作りでした。

そこでv6では、基本はどんな登録済みカーソルでも使える汎用仕様にしつつ、必要な人だけお気に入りのスキームを上に並べられる形に変更しました。

お気に入りのカーソルだけ上に表示できる

ブログ公開版では、バッチの先頭にカスタマイズ用の設定を用意しています。

set "PRIORITY_SCHEMES=Asagiba_Nia|Asagiba_Miku"

この例では Asagiba_NiaAsagiba_Miku を優先表示します。ここを自分の環境に登録されているスキーム名へ変更すればOKです。

優先表示が不要なら、次のように空欄にします。

set "PRIORITY_SCHEMES="

その場合は、Windowsに登録済みのカーソルスキームを通常の名前順で表示する自動検出ツールとして利用できます。

複数指定する

複数のスキームを指定するときは、| で区切ります。

set "PRIORITY_SCHEMES=Favorite_A|Favorite_B|Favorite_C"

シリーズ単位でまとめて指定する

*? のワイルドカードにも対応しています。

set "PRIORITY_SCHEMES=MyFavorite-*"

たとえば MyFavorite-AMyFavorite-B のように同じ名前で始まるスキームをまとめて上位表示できます。

Windowsのカーソルスキームはどこに保存されている?

今回のバッチでは、現在のユーザーに登録されているカーソル設定をレジストリから取得しています。

HKEY_CURRENT_USER\Control Panel\Cursors

登録済みのカーソルスキーム一覧は、その配下にある次のキーから取得します。

HKEY_CURRENT_USER\Control Panel\Cursors\Schemes

そのため、バッチ内にすべてのカーソル名をベタ書きする必要はありません。Windowsへ新しいスキームを追加した場合も、一覧を更新すれば自動的に取得できます。

カーソル切り替えの仕組み

カーソルスキームには、通常選択・待ち状態・テキスト選択・リンク選択など複数のカーソルがセットで登録されています。

Arrow
Help
AppStarting
Wait
Crosshair
IBeam
NWPen
No
SizeNS
SizeWE
SizeNWSE
SizeNESW
SizeAll
UpArrow
Hand
Pin
Person

選択されたスキームの登録内容を読み込み、現在のカーソル設定へ反映することでスキームを切り替えています。

レジストリを書き換えただけでは即時反映されない

このバッチを作る中で少しハマったのが、レジストリを書き換えただけではカーソル表示がすぐ切り替わらないことがある点でした。

v6.1ではPowerShellからWindows APIの SystemParametersInfo を呼び出して、カーソルを再読み込みしています。

それでも再読み込みに失敗した場合は、rundll32.exe を使った更新処理へフォールバックするようにしています。

使い方

  1. Mouse Cursor Switcher v6.1を保存する
  2. Windowsに使いたいカーソルスキームを登録しておく
  3. バッチをダブルクリックして起動
  4. 表示された一覧から切り替えたい番号を入力
  5. Enterを押す

これだけで切り替えられます。会議前に仕事用・標準カーソルとして保存したスキームへ戻して、終わったら推しカーソルへ戻す、といった使い方ができます。

ショートカットから起動するとさらに楽

よく使うなら、ショートカットを作成してスタートメニューに登録しておくと便利です。

① .batファイルを好きな場所に置く

ZIPを展開したら、MouseCursorSwitcher_v6_1_Blog.batデスクトップ・ドキュメント・自作ツール用フォルダなど、分かりやすい好きな場所に置いてOKです。

② .batファイルのショートカットを作成する

  1. MouseCursorSwitcher_v6_1_Blog.bat を右クリックする
  2. 「ショートカットの作成」を選び、作成されたショートカットを確認する

③ ショートカットをスタートメニューに置く

  1. Win + R を押して「ファイル名を指定して実行」を開く
  2. shell:programs と入力して Enter
  3. 開いた「プログラム」フォルダに、先ほど作成したショートカットを配置する
    ※必要なら「自作ツール」などのフォルダを作って整理してOKです。

④ ショートカットキーを登録する

  1. 作成したショートカットを右クリックして「プロパティ」を開く
  2. 「ショートカット」タブを開き、「ショートカット キー」欄をクリックする
  3. Ctrl + Alt + M を押して、「適用」→「OK」で保存する

設定後は Ctrl + Alt + M だけでMouse Cursor Switcherを起動できます。

保存済みカーソルスキームが1つもない場合

このツールが自動検出するのは、Windowsにカーソルスキームとして登録されているものです。保存済みスキームが1つもないPCでは、次のような画面が表示されます。

保存済みカーソルスキームがない場合にMouse Cursor Switcher v6.1で表示される案内画面

表示まで時間がかかる場合があります
今回の検証端末では、保存済みカーソルスキームがない状態で実行した際、結果が表示されるまで約2分かかるケースがありました。環境によって差があるため、起動直後に黒い画面のままでも、すぐに閉じず少し待ってみてください。

この表示が出た場合は、先にWindows側でカーソルスキームを1つ保存します。

  1. Win + R を押して「ファイル名を指定して実行」を開きます。
  2. main.cpl と入力してEnterを押します。
  3. 「ポインター」タブを開き、使用したいカーソルを設定します。
  4. 「名前を付けて保存」を押して、任意のスキーム名で保存します。
  5. Mouse Cursor Switcher v6.1をもう一度実行します。

.cur.ani ファイルをフォルダーへ置いただけの場合は一覧には表示されません。マウスポインターの設定画面からスキームとして登録されていることを確認してください。

配布するものとカーソル素材について

本記事で配布するのはカーソル切り替え用のバッチファイルのみです。

キャラクター画像、.cur.ani など、第三者が制作したカーソル素材は含みません。使用するカーソル素材については、それぞれの作者・配布元の利用規約を確認してください。

Mouse Cursor Switcher v6.1のダウンロード

ダウンロードしたファイルはZIP形式です。ダウンロード完了後にZIPファイルを右クリックして「すべて展開」し、展開したフォルダ内のバッチファイルを使用してください。
展開後のファイル名:MouseCursorSwitcher_v6_1_Blog.bat

ブログ配布版は Asagiba_NiaAsagiba_Miku を優先表示する設定例になっています。必要に応じて PRIORITY_SCHEMES を自分のスキーム名へ変更してください。

Mouse Cursor Switcherのbatファイル内にあるPRIORITY_SCHEMESを書き換えて優先表示するカーソルスキームを設定する手順

まとめ

最初は「推しカーソルを使いたいけど、会議の画面共有ではサッと仕事用・標準カーソルへ戻したい」という自分用のツールとして作り始めました。

最終的には、Windowsに登録されているカーソルスキームを自動取得し、お気に入りだけ優先表示できる汎用ツールになりました。

推し活と仕事を両立したい人、複数のカーソルスキームを気分で切り替えている人には、かなり便利だと思います。

推しは推したい。でも会議では隠したい。 そんなときに使ってみてください。

コメント

タイトルとURLをコピーしました