VMware Fusion上のWindowsアプリをmacOSネイティブアプリのようにDockに統合するラッパーアプリ生成ツール。
Coheremoteは、VMware Fusion上で動作するWindowsアプリケーションを、macOSのネイティブアプリのようにDockに統合するラッパーアプリ生成ツールです。 RemoteApp(RDP)技術を使用して、シームレスな操作体験を提供します。
こちらのXのポストからインスピレーションを受けました。
| 要件 | 備考 |
|---|---|
| macOS 13.0以降 | Ventura 以上 |
| VMware Fusion | /Applications/VMware Fusion.app にインストール済み |
| Windows App | Mac App Storeからインストール(旧Microsoft Remote Desktop) |
| RDPファイル | RemoteApp Tool または Windows App からエクスポートして作成(詳細は下記) |
| Xcode Command Line Tools | 生成アプリのコンパイルに swiftc が必要 |
| フルディスクアクセス | Coheremote本体と生成されたラッパーアプリに付与が必須 |
.app の保存場所.vmx ファイルまたは .vmwarevm バンドル.rdp ファイルラッパーアプリのDockアイコンを右クリックすると以下が表示されます(日英自動切替):
| メニュー | 説明 |
|---|---|
| 再接続 / Reconnect | RDP接続を再確立(Windowsアプリを閉じてしまった場合に使用) |
| Windowsを再起動 / Restart Windows | VMにソフトリスタートを送信し、起動後にRDPを自動再接続 |
| シャットダウンして終了 / Shutdown and Quit | Windowsをシャットダウンしてからラッパーアプリを終了 |
メニューバーのアイコンをクリックすると、ランチャーパネルが表示されます:
注意: アプリランチャーのアプリ一覧を利用するには、Coheremoteの設定でWindowsパスワードを入力し、Windows側にVMware Toolsがインストールされている必要があります。
Coheremoteは以下の手順でスタンドアロンの .app バンドルを生成します:
sips + iconutil でmacOS .icns 形式に変換(Retina対応)swiftc でネイティブバイナリをコンパイル.app バンドル構造にパッケージングMyApp.app/
Contents/
Info.plist
MacOS/
MyApp # コンパイル済みSwiftバイナリ
Resources/
AppIcon.icns # アプリアイコン
app.rdp # 修正済みRDPファイル
open -a "VMware Fusion" でVMを起動(コールドブート・サスペンド解除・暗号化VMすべてに対応)~/Library/Logs/Coheremote/ に記録個別のWindowsアプリケーションをRemoteAppとして公開する方法です。
notepad.exe).rdp ファイルを保存.rdp ファイルをmac側にコピーし、Coheremoteで使用macOS側のWindows App(旧Microsoft Remote Desktop)から既存の接続設定をエクスポートする方法です。
.rdp ファイルを保存.rdp ファイルをCoheremoteで使用注意: Windows Appからエクスポートした場合はフルデスクトップ接続になります。個別アプリのRemoteApp接続にするには、方法3(Coheremoteの変換機能)を使うか、.rdp ファイルをテキストエディタで開いて以下の行を追加してください:
remoteapplicationmode:i:1
remoteapplicationname:s:アプリ名
remoteapplicationprogram:s:アプリのパス
例(メモ帳の場合):
remoteapplicationmode:i:1
remoteapplicationname:s:Notepad
remoteapplicationprogram:s:C:\Windows\System32\notepad.exe
Coheremoteの設定画面で直接RemoteApp変換を行う方法です。RDPファイルの手動編集が不要になります。
.rdp ファイルを作成vmrun コマンドはパスワードをプロセス引数(-vp, -gp)でのみ受け付けます。これにより、同一ユーザーの他プロセスから ps コマンドでパスワードが閲覧可能です。これは vmrun の既知の制約であり、共有環境での使用時はご注意ください/, \, :, *, ?, ", <, >, |)が自動除去されます| 問題 | 対処法 |
|---|---|
| 「Operation not permitted」エラー | フルディスクアクセスが付与されていません。システム設定 > プライバシーとセキュリティ > フルディスクアクセスでアプリを追加してください。 |
| VMが起動しない | VMware Fusionが /Applications にインストールされているか、VMパスが正しいか確認。暗号化VMの場合はパスワードも確認。詳細はログファイル ~/Library/Logs/Coheremote/<アプリ名>.log を確認してください。 |
| RemoteAppがIMEしか表示されない | これはWindows側の問題です。Dockメニューから「Windowsを再起動」を実行してください。解決しない場合は、Windows側でRemoteAppの設定を確認し、.rdp ファイルを再作成してください。 |
| Windowsアプリを閉じてしまった | Dockメニューから「再接続」を選択するとRDP接続を再確立できます。 |
| 複数のWindowsアプリを同時に使用する場合 | 2つ目以降のアプリのウィンドウが表示されないことがあります。その場合は、該当アプリのDockメニューから「再接続」を選択してください。注意: 複数のラッパーアプリが同じVMを共有している場合、最後のアプリが終了するまでVMのサスペンド/シャットダウンは行われません。 |
| RDP接続に失敗する | Windows Appがインストールされているか、RDPファイルが有効か、Windows認証情報が正しいか確認してください。 |
| Windowsがハングまたはフリーズした | Dockメニューから「Windowsを再起動」を選択してください。VMにソフトリセットが送信され、Windows起動後に自動的にRDPが再接続されます。 |