Releases: bluewakame/SmartMouse
Release list
SmartMouse Receiver v0.5.4
ZIPを展開して SmartMouseReceiver.exe を実行してください。Python も Node.js も要りません。
起動したら、画面に出るQRコードをスマホの標準カメラで読み取ります。ブラウザが開いて、そのままマウス・キーボードとして使えます。SmartMouse iPhoneアプリでも同じQRコードを読み取れます。
- スマホとPCは同じWi-Fi/LANに接続してください
- 合言葉(token)はReceiverの起動ごとに変わります。再起動したらQRコードを読み直してください
- Windowsファイアウォールの確認画面では「プライベート ネットワーク」を許可してください
v0.5.4 の変更
スマートフォンが接続したときに、Windowsの通知でお知らせするようにしました。
このソフトは、起動したPCを別の端末から操作できるようにするものです。これまでは
ウィンドウをタスクトレイへ収納していると、接続されても画面上に手がかりが
ありませんでした。今後は接続のたびに通知が出るため、席を外していた場合でも
あとから気付けます。
接続中はタスクトレイのアイコンの色が変わります。 待機中は緑、接続中は
オレンジです。ひと目で「いま操作されている」と分かります。
身に覚えのないこのソフトが動いていた場合の止め方を、同梱の案内に追加しました。
第三者が勝手に導入した場合に、PCの持ち主が自分で停止できるようにするためです。
これらは、悪用そのものを防ぐものではありません。起動には対象PCへの物理的な操作が
必要で、それができる相手はより強力な手段も使えます。ここで目指しているのは、
こっそり動かし続けることを難しくすることです。
v0.5.3 の変更
ライセンスを明示しました。 本体は MIT ライセンスです。ZIPに LICENSE.txt を同梱しています。
同梱ライブラリのライセンス表記を追加しました。
このアプリには Python 本体とオープンソースのライブラリが同梱されています。その一覧と
全文を THIRD-PARTY-NOTICES.txt として同梱しました。ビルドのたびに自動生成されるため、
実際に同梱されているものと必ず一致します。
GPL のライブラリを配布物から外しました。
PyAutoGUI が依存する MouseInfo と PyMsgBox(どちらも GPLv3)が同梱されており、そのままでは
配布物全体に GPL が及ぶ状態でした。どちらもこのアプリでは使っていないため除外しています。
以後は混入した時点でビルドが止まるようにしました。
なお同梱を続けている pystray と zeroconf は LGPL です。これらは _internal フォルダー内に
個別のファイルとして置かれているため、同じバージョンのライブラリへ差し替えて実行できます。
v0.5.2 の変更
同梱の「はじめにお読みください.txt」を、実態に合わせて書き直しました。
v0.5.0 でブラウザだけで使えるようになったのに、案内が「SmartMouse iPhoneアプリで
読み取る」「必要な環境:SmartMouse iPhoneアプリ」のままでした。標準カメラで読んで
ブラウザで使う手順に直し、アプリが必須ではないことを明記しています。
ZIPに入っていない CHECKSUMS-SHA256.txt を参照していた箇所も、Releaseページの
SHA-256と照合する手順に直しました。
v0.5.1 の変更
安全に使うための説明を追加しました。
このアプリの通信は暗号化されていません。想定しているのは「自分の家のWi-Fiで、自分のPCを操作する」ことだけです。共有Wi-Fiでは使わないこと、パスワードを送らないことを、アプリの画面と同梱の案内に明記しました。合言葉を知っている端末は、PCのマウスとキーボードを自由に操作できます。
繋がらないQRコードを表示しなくなりました。
Wi-Fiに繋がっていない場合など、スマホから到達できないアドレスしか無いときに、読み取っても接続できないQRコードが表示されることがありました。そうした場合はQRを出さず、理由と対処を表示します。
ログに合言葉が残らなくなりました。
接続のたびに、アクセスログへ合言葉が平文で記録されていました。画面共有や不具合報告のスクリーンショットから漏れる経路になるため、伏せるようにしました。
ソースから起動した場合もQRを標準カメラで読めるようになりました。
start_smartmouse.bat から起動した場合だけ、QRコードに ws:// が入っており、標準のカメラアプリが「使用可能なデータが見つかりません」と表示していました。
SmartScreenの警告について
初回起動時に「WindowsによってPCが保護されました」と表示されることがあります。これはコード署名をしていないための警告で、ウイルス判定ではありません。「詳細情報」→「実行」で起動できます。
SmartMouseReceiver.exe は単体では起動しません。ZIP内の _internal フォルダと同じ場所に置いたまま実行してください。
SmartMouse Receiver v0.5.3
ZIPを展開して SmartMouseReceiver.exe を実行してください。Python も Node.js も要りません。
起動したら、画面に出るQRコードをスマホの標準カメラで読み取ります。ブラウザが開いて、そのままマウス・キーボードとして使えます。SmartMouse iPhoneアプリでも同じQRコードを読み取れます。
- スマホとPCは同じWi-Fi/LANに接続してください
- 合言葉(token)はReceiverの起動ごとに変わります。再起動したらQRコードを読み直してください
- Windowsファイアウォールの確認画面では「プライベート ネットワーク」を許可してください
v0.5.3 の変更
ライセンスを明示しました。 本体は MIT ライセンスです。ZIPに LICENSE.txt を同梱しています。
同梱ライブラリのライセンス表記を追加しました。
このアプリには Python 本体とオープンソースのライブラリが同梱されています。その一覧と
全文を THIRD-PARTY-NOTICES.txt として同梱しました。ビルドのたびに自動生成されるため、
実際に同梱されているものと必ず一致します。
GPL のライブラリを配布物から外しました。
PyAutoGUI が依存する MouseInfo と PyMsgBox(どちらも GPLv3)が同梱されており、そのままでは
配布物全体に GPL が及ぶ状態でした。どちらもこのアプリでは使っていないため除外しています。
以後は混入した時点でビルドが止まるようにしました。
なお同梱を続けている pystray と zeroconf は LGPL です。これらは _internal フォルダー内に
個別のファイルとして置かれているため、同じバージョンのライブラリへ差し替えて実行できます。
v0.5.2 の変更
同梱の「はじめにお読みください.txt」を、実態に合わせて書き直しました。
v0.5.0 でブラウザだけで使えるようになったのに、案内が「SmartMouse iPhoneアプリで
読み取る」「必要な環境:SmartMouse iPhoneアプリ」のままでした。標準カメラで読んで
ブラウザで使う手順に直し、アプリが必須ではないことを明記しています。
ZIPに入っていない CHECKSUMS-SHA256.txt を参照していた箇所も、Releaseページの
SHA-256と照合する手順に直しました。
v0.5.1 の変更
安全に使うための説明を追加しました。
このアプリの通信は暗号化されていません。想定しているのは「自分の家のWi-Fiで、自分のPCを操作する」ことだけです。共有Wi-Fiでは使わないこと、パスワードを送らないことを、アプリの画面と同梱の案内に明記しました。合言葉を知っている端末は、PCのマウスとキーボードを自由に操作できます。
繋がらないQRコードを表示しなくなりました。
Wi-Fiに繋がっていない場合など、スマホから到達できないアドレスしか無いときに、読み取っても接続できないQRコードが表示されることがありました。そうした場合はQRを出さず、理由と対処を表示します。
ログに合言葉が残らなくなりました。
接続のたびに、アクセスログへ合言葉が平文で記録されていました。画面共有や不具合報告のスクリーンショットから漏れる経路になるため、伏せるようにしました。
ソースから起動した場合もQRを標準カメラで読めるようになりました。
start_smartmouse.bat から起動した場合だけ、QRコードに ws:// が入っており、標準のカメラアプリが「使用可能なデータが見つかりません」と表示していました。
SmartScreenの警告について
初回起動時に「WindowsによってPCが保護されました」と表示されることがあります。これはコード署名をしていないための警告で、ウイルス判定ではありません。「詳細情報」→「実行」で起動できます。
SmartMouseReceiver.exe は単体では起動しません。ZIP内の _internal フォルダと同じ場所に置いたまま実行してください。
SmartMouse Receiver v0.5.2
ZIPを展開して SmartMouseReceiver.exe を実行してください。Python も Node.js も要りません。
起動したら、画面に出るQRコードをスマホの標準カメラで読み取ります。ブラウザが開いて、そのままマウス・キーボードとして使えます。SmartMouse iPhoneアプリでも同じQRコードを読み取れます。
- スマホとPCは同じWi-Fi/LANに接続してください
- 合言葉(token)はReceiverの起動ごとに変わります。再起動したらQRコードを読み直してください
- Windowsファイアウォールの確認画面では「プライベート ネットワーク」を許可してください
v0.5.2 の変更
同梱の「はじめにお読みください.txt」を、実態に合わせて書き直しました。
v0.5.0 でブラウザだけで使えるようになったのに、案内が「SmartMouse iPhoneアプリで
読み取る」「必要な環境:SmartMouse iPhoneアプリ」のままでした。標準カメラで読んで
ブラウザで使う手順に直し、アプリが必須ではないことを明記しています。
ZIPに入っていない CHECKSUMS-SHA256.txt を参照していた箇所も、Releaseページの
SHA-256と照合する手順に直しました。
v0.5.1 の変更
安全に使うための説明を追加しました。
このアプリの通信は暗号化されていません。想定しているのは「自分の家のWi-Fiで、自分のPCを操作する」ことだけです。共有Wi-Fiでは使わないこと、パスワードを送らないことを、アプリの画面と同梱の案内に明記しました。合言葉を知っている端末は、PCのマウスとキーボードを自由に操作できます。
繋がらないQRコードを表示しなくなりました。
Wi-Fiに繋がっていない場合など、スマホから到達できないアドレスしか無いときに、読み取っても接続できないQRコードが表示されることがありました。そうした場合はQRを出さず、理由と対処を表示します。
ログに合言葉が残らなくなりました。
接続のたびに、アクセスログへ合言葉が平文で記録されていました。画面共有や不具合報告のスクリーンショットから漏れる経路になるため、伏せるようにしました。
ソースから起動した場合もQRを標準カメラで読めるようになりました。
start_smartmouse.bat から起動した場合だけ、QRコードに ws:// が入っており、標準のカメラアプリが「使用可能なデータが見つかりません」と表示していました。
SmartScreenの警告について
初回起動時に「WindowsによってPCが保護されました」と表示されることがあります。これはコード署名をしていないための警告で、ウイルス判定ではありません。「詳細情報」→「実行」で起動できます。
SmartMouseReceiver.exe は単体では起動しません。ZIP内の _internal フォルダと同じ場所に置いたまま実行してください。
SmartMouse Receiver v0.5.1
ZIPを展開して SmartMouseReceiver.exe を実行してください。Python も Node.js も要りません。
起動したら、画面に出るQRコードをスマホの標準カメラで読み取ります。ブラウザが開いて、そのままマウス・キーボードとして使えます。SmartMouse iPhoneアプリでも同じQRコードを読み取れます。
- スマホとPCは同じWi-Fi/LANに接続してください
- 合言葉(token)はReceiverの起動ごとに変わります。再起動したらQRコードを読み直してください
- Windowsファイアウォールの確認画面では「プライベート ネットワーク」を許可してください
v0.5.1 の変更
安全に使うための説明を追加しました。
このアプリの通信は暗号化されていません。想定しているのは「自分の家のWi-Fiで、自分のPCを操作する」ことだけです。共有Wi-Fiでは使わないこと、パスワードを送らないことを、アプリの画面と同梱の案内に明記しました。合言葉を知っている端末は、PCのマウスとキーボードを自由に操作できます。
繋がらないQRコードを表示しなくなりました。
Wi-Fiに繋がっていない場合など、スマホから到達できないアドレスしか無いときに、読み取っても接続できないQRコードが表示されることがありました。そうした場合はQRを出さず、理由と対処を表示します。
ログに合言葉が残らなくなりました。
接続のたびに、アクセスログへ合言葉が平文で記録されていました。画面共有や不具合報告のスクリーンショットから漏れる経路になるため、伏せるようにしました。
ソースから起動した場合もQRを標準カメラで読めるようになりました。
start_smartmouse.bat から起動した場合だけ、QRコードに ws:// が入っており、標準のカメラアプリが「使用可能なデータが見つかりません」と表示していました。
SmartScreenの警告について
初回起動時に「WindowsによってPCが保護されました」と表示されることがあります。これはコード署名をしていないための警告で、ウイルス判定ではありません。「詳細情報」→「実行」で起動できます。
SmartMouseReceiver.exe は単体では起動しません。ZIP内の _internal フォルダと同じ場所に置いたまま実行してください。
SmartMouse Receiver v0.5.0
ZIPを展開して SmartMouseReceiver.exe を実行してください。Python も Node.js も要りません。
起動したら、画面に出るQRコードをスマホの標準カメラで読み取ります。ブラウザが開いて、そのままマウス・キーボードとして使えます。SmartMouse iPhoneアプリでも同じQRコードを読み取れます。
- スマホとPCは同じWi-Fi/LANに接続してください
- 合言葉(token)はReceiverの起動ごとに変わります。再起動したらQRコードを読み直してください
- Windowsファイアウォールの確認画面では「プライベート ネットワーク」を許可してください
SmartScreenの警告について
初回起動時に「WindowsによってPCが保護されました」と表示されることがあります。これはコード署名をしていないための警告で、ウイルス判定ではありません。「詳細情報」→「実行」で起動できます。
SmartMouseReceiver.exe は単体では起動しません。ZIP内の _internal フォルダと同じ場所に置いたまま実行してください。
SmartMouseReceiver v0.4.1
ZIPを展開し、フォルダー内の SmartMouseReceiver.exe を起動して、表示されたQRコードをiPhoneアプリで読み取ってください。Windows 10/11 64bit対応。Pythonのインストールは不要です。署名なしexeのため、SmartScreenの警告が表示される場合があります。
SmartMouseReceiver.exeは_internalフォルダーと同じ場所に置いたまま使ってください。
exeだけを別の場所へ移すと起動しません。移動するときはフォルダーごと移すか、ショートカットを作成してください。
配布物を作り直しました(2026-08-16)
アセットを単体の SmartMouseReceiver.exe から SmartMouseReceiver-v0.4.1.zip(フォルダー形式)へ差し替えました。 アプリの機能は v0.4.1 のままで、変わったのはビルド方法だけです。
以前の配布物は、ウイルス対策ソフトにマルウェアと誤検知され、ダウンロードの時点で弾かれる場合がありました。未署名のPyInstallerビルドが引っかかりやすい要因を、次のとおり取り除いています。
- UPX圧縮をやめました。 実行ファイルのパックは中身を隠す手口そのものとみなされ、単体で強く減点されます
- onedir形式へ変更しました。 従来の単一exeは起動のたびに自分自身を
%TEMP%へ展開して実行するため、ドロッパー型マルウェアと機械的に区別が付きませんでした - バージョン情報リソースとアイコンを埋め込みました。 発行元も版数もない実行ファイルは、それだけで評価が下がります
- 開発用パッケージを同梱物から除外しました
検知を回避するための処理(Defenderの無効化、除外設定の自動追加、難読化など)は一切行っていません。
なお、これはウイルス検知への対策です。「WindowsによってPCが保護されました」というSmartScreenの警告は、引き続き表示されます。 これは検知ではなく、署名と配布実績にもとづく警告で、「詳細情報」→「実行」で進められます。
同梱の CHECKSUMS-SHA256.txt で、全ファイルのハッシュを確認できます。
v0.4.0 からの変更
**v0.4.0 の配布物は、プロトコル 2 がコードへ入る前の状態からビルドされており、
実際にはプロトコル 1 を返していました。**そのため現在のiPhoneアプリからは
接続できませんでした。v0.4.1 はこの不一致を解消したビルドです。
再発防止として、以下を実施しています。
package_release.ps1がソースからAPP_VERSIONとPROTOCOL_VERSIONを読み取り、
-Version引数と食い違う場合はパッケージ生成を中断しますVERSION.txtにコード由来のApp versionとProtocol versionを記録しますrelease.jsonのprotocolをハードコードではなくコード由来の値にしました/healthがプロトコル番号を返すようになり、稼働中のReceiverの素性を確認できます
アプリ側も、接続に失敗した際に受信した実際のプロトコル値と接続先を表示するように
なりました。
その他の変更
- Safari用のWeb UIを削除。Receiverは
/wsと/healthのみを提供します - Windowsビルドスクリプトの文字化け(UTF-8 BOM欠落)を修正
- 起動バナーでペアリングURLを1回だけ表示するよう修正
- Receiver再起動時、QRコードを読み直さなくても再接続できるよう改善
接続できない場合
稼働中のReceiverの実際の値は、ブラウザで次を開くと確認できます。
http://<PCのIPアドレス>:8000/health
{"status":"ready","version":"0.4.1","protocol":"2",...} が返れば正常です。
SmartMouseReceiver-v0.4.0
Caution
この配布版は現在のiPhoneアプリからは接続できません。
最新リリースをご利用ください。
同梱されている SmartMouseReceiver.exe は、プロトコル 2(ペアリングトークン方式)が
コードへ入る前の状態からビルドされており、ハンドシェイクで プロトコル 1 を返します。
現在のアプリはプロトコル 2 を要求するため、接続時に「Receiverの更新が必要です」と
表示されて接続できません。
パッケージ名の v0.4.0 は package_release.ps1 の -Version 引数由来で、
コード側の APP_VERSION とは独立しています。そのため名前が示すバージョンと
中身が一致していませんでした。
稼働中のReceiverの実際の値は、ブラウザで次を開くと確認できます。
http://<PCのIPアドレス>:8000/health
この不一致を防ぐため、以降のリリースでは package_release.ps1 がソースから
APP_VERSION と PROTOCOL_VERSION を読み取り、-Version と食い違う場合は
ビルドを中断します(PR #7)。VERSION.txt にもコード由来の値が記録されます。
(以下は公開当時の説明)
ZIPを展開して SmartMouseReceiver.exe を起動し、表示されたQRコードをiPhoneアプリで読み取ってください。Windows 10/11 64bit対応。Pythonのインストールは不要です。署名なしexeのため、SmartScreenの警告が表示される場合があります。
What's Changed
- Improve SmartMouse accessibility and Receiver experience by @bluewakame in #3
- Complete secure pairing and Receiver v0.4 improvements by @bluewakame in #4
Full Changelog: v0.1.0...v0.4.0
SmartMouse Receiver v0.1.0
Warning
このバージョンは現在のiPhoneアプリからは接続できません。
最新リリースをご利用ください。
v0.1.0 はペアリングトークン導入前のビルドで、ハンドシェイクでプロトコル 1 を返します。現在のアプリはプロトコル 2 を要求するため、接続時に「Receiverの更新が必要です」と表示されて接続できません。
初期の記録として残していますが、実用目的でのダウンロードは想定していません。
(以下は公開当時の説明)
初回Windows配布版です。ZIPを展開してSmartMouseReceiver.exeを起動し、表示されたQRコードをiPhoneアプリで読み取ってください。Windows 10/11 64bit対応。Pythonは不要です。署名なしexeのためSmartScreen警告が表示される場合があります。