ChromeリモートデスクトップではAWS EC2のWindowsインスタンスに接続するとDAZ Studioを起動できますが、記号が多く含まれた長いパスワードを手入力しか出来ずログインがたいへんでした。これを自動入力する方法を紹介します。
ショートカット
面倒くさい説明はいいからサクッと使える方法を紹介をして欲しいとの要望から、最短で使える方法を紹介します。
・以下のサイトから自動入力ソフトをダウンロード&インストール
Download Pulover’s Macro Creator
・以下の.zipファイルをダウンロードしデスクトップなどに展開(.pmc)
・.pmcファイルをダブルクリック
・ポップアップに従って適当に設定し「ここをダブルクリックしてパスワードをコピペ」をダブルクリック
・パスワードをそこにコピー&ペーストし、左下の「OK」ボタンをクリック
・ChromeリモートデスクトップのWindowsログイン画面を開いて、左上のメニューボタンをクリックして、トップの「Ctrl+Alt+Del」を選んでパスワード入力画面にする。
・画面右下の「言語設定」ボタンをクリックし「ENG 英語(米国)USキーボード」に変更する。ENGが無い場合は文末の「まとめ」の英語入力を追加する方法を参考にしてください。
・自動入力ソフトに戻って「遊ぶ(プレイ)」ボタンをクリック
・ログイン画面に戻って「目」のアイコンを長押ししてパスワードが入力されているのを確認して、その右の「右矢印」ボタンをクリック
以上でChromeリモートデスクトップから仮想Windowsにログインができます。
・画面右下の「言語設定」ボタンをクリックし「J 日本語 Microsoft IME」に戻しておきます。
自動入力ソフトを起動しても画面が開かない場合は、おそらく画面右下のタスクトレイ(^)に格納されているので、アイコンがあれば右クリックして「開く」か「ウィンドウを表示する」を選びます。
上記でもダメな場合は、自動入力ソフトのインストーラーから再インストールするのが一番早いです。
経緯
以下の記事でAWS EC2のGPU付きWindowsインスタンスを使えば、3DCGソフトのDAZ StudioがChromeリモートデスクトップで起動でき、1ドル/hrの課金で高速高画質な物理レンダリングが手軽に可能となりました。
【DAZ Studio】AWS EC2とGCP GCEでIrayとLuxRenderの速度と画質を比較?!
しかし、課題として「Windowsログインに使う複雑なパスワードが手入力でしか入力出来ない」ことがあり、もっと簡単にコピー&ペーストで自動入力する方法を探していました。
リモートデスクトップへの従来のログイン
一般的にはWindowsにプリインストールされている「リモートデスクトップ接続(RDC)」(Windowsアクセサリー)で行いますが、AWS EC2のWindowsインスタンスの場合はWindowsログインが必要です。
RDCソフト側のパネルでユーザー名とパスワードを事前に入力する方式なので、AWS EC2では記号が多く含まれた長いパスワードもローカルPC側でコピー&ペーストして簡単に入力が行えます。
しかし、RDCによる接続ではDAZ Studioの起動が出来ません。その代わりに「RealVNC」か「Chromeリモートデスクトップ(CRD)」で接続すると起動できることが確認出来ています。
この2つの接続では、AWS EC2のWindowsインスタンスへのログインではインスタンスパネルから毎回取得する複雑なパスワードを手入力する必要があり、たいへんでした。
と言うのは、ログインはインスタンス側のWindows画面なので、この2つの接続ではパスワードをコピー&ペースト出来ません。記号混じりで文字数が多く、しかも日本語キーボードでは一部の記号の場所が違っていたりと、目隠し状態の入力では間違いが多発していました。
今回は、キーボード(やマウス)操作を自動化するツールソフトを使って、この複雑なパスワードをコピー&ペーストでツールに入力しておいて、自動再生ボタンをワンクリックするだけでパスワードが簡単に入力出来るようになったので、以下にその方法を紹介します。
自動化ツールソフトの紹介
以下のツールソフトを使います。メニューの「Download」からダウンロードが出来ます。通常のインストーラー形式なので安心してインストールできます。
インストール方法と一般的な使い方の説明は以下の記事を参考にしてください。
お手軽、最強自動化ツール【Pulover’s Macro Creator】を使ってみた
この記事では操作を録音?して再生する方式と、マクロを自分で記述する方式が解説されていますが、単にパスワードを自動入力するだけに必要な知識はそれほど多くはないので、以下では今回のテーマに絞って説明します。
ここで「Pulover’s Macro Creator」を上記の記事を参考にダウンロード/インストールして使える状態にしておいてください。
録音方式か?マクロ記述方式か?
一般的には録音方式の方が簡単に思えますが、今回は単にパスワードを自動入力するだけなので、記述するマクロはたったの2行です。
・左側ペイン:編集画面
・右側ペイン:コード
コードにも「Sleep, 333」が含まれているので、実質的には2行です。
ということで、今回はマクロ記述方式を採用しました。今回のテーマ以外で使うと便利な場合は、より複雑な操作(マウス操作が含まれるなど)では録音方式をお試しください。
マクロ入力の準備
マクロを入力する際には、事前にAWS EC2の該当インスタンスを開始して、ChromeリモートデスクトップでWindowsログインする直前の以下のパスワード入力状態まで行っておく必要があります。
ここまでの操作は文末の「まとめ」で紹介していますので参考にしてください。
また、通常はローカルPCは日本語(JIS)キーボードで日本語入力(IME)の状態にあると思いますが、この状態だとパスワードの一部の記号が間違って入力されます。
そこで、最初に英語入力の追加をして、タスクバーの右端にある入力切替アイコンをクリックして、英語(USキーボード)入力に切替えておきます。
英語入力の追加方法は文末の「まとめ」で紹介していますので参考にしてください。
なお「英語」が「日本語」の上になっていると、ログインやWindowsを(再)起動した時に「英語」になってしまい、毎回「日本語」に切替えるのが面倒なので、「日本語」を上(規定値)にするとOKです。その方法も「まとめ」で紹介します。
マクロ入力その1:新規作成
左上の「新規作成」ボタンをクリックします。
もし、それまでに何かマクロが入力されている場合は保存するか聞いてきます。
ここの「プロジェクト」というのは複数のマクロの集合体ということです。「はい」で保存しておきます。
適当に名前を入力して場所はデスクトップとかにしておいて「保存」をクリックします。
新規入力状態になります。
ここからAWSのインスタンス管理画面に移ってインスタンスを開始しパスワードを取得しておいて、Chromeリモートデスクトップでインスタンスに接続してログイン画面まで進めておきます。詳しくは文末の「まとめ」を参考にしてください。
マクロ入力その2:対象ウィンドウの指定
対象のChromeリモートデスクトップのウィンドウを指定します。ログインのパスワード入力状態は一定時間何も行わないと解除されるので、左上のメニューアイコンをクリックして「Ctrl+Alt+Del」を選んでパスワード入力状態にしておいてください。
マクロ画面に戻って、ウィンドウボタンをクリックします。
左上の「コマンド」メニューを開きます。
2番目の「WinActivate」を選びます。
右上の「WinTitle」をクリックします。
「Class」を選びます。その下の「…」をクリックして対象ウィンドウを指定します。
ログイン画面を右クリックします。
左下の「OK」をクリックします。元の画面に戻ります。
左側ペインは以下です。
右側ペインは以下です。
以上で対象ウィンドウを指定するマクロが記述されました。
マクロ入力その3:テキスト(パスワード)の入力
テキストボタンをクリックします。
テキスト入力画面が開きます。
コピーしておいたWindowsログイン用のパスワードをペーストします。
左下の「OK」をクリックします。
元の画面に戻ります。左側ペインは以下のようになります。
右側ペインは以下です。
以上でパスワードを自動入力するマクロが完成しました。念のためにこの時点で保存しておきます。
★登録したパスワードの変更は、左ペイン(編集)の旧パスワードをダブルクリックするとテキストの編集画面が開きますので、そこで新しいパスワードを貼り付けて左下の「OK」をクリックするとパスワードの変更ができます。
マクロ実行
ChromeリモートデスクトップのWindowsログイン画面でパスワード入力状態にしておいて、マクロ画面に戻って「プレイ」ボタンをクリックします。この時に、タスクバーの右端の入力状態が「ENG」になっているのを確認しておきます。
パスワードが自動入力されます。
右端の矢印をクリックするとWindowsにログインし、デスクトップが表示されます。
DAZ Studioを起動します。
この状態でもDAZ Studioの簡単な操作はできますが、反応が遅く実用的ではありません。あくまでもChromeリモートデスクトップはDAZ Studioを起動することだけの目的で使います。
DAZ Studioが起動出来たらChromeリモートデスクトップの接続を切ってウィンドウを閉じます。接続を切ってもインスタンスはそのままの状態なので、ここからは通常のWindows標準の「リモートデスクトップ接続」で接続して操作します。
★モバイルの場合は「RD Client(Microsoft リモート デスクトップ)」を使ってGoogle Cloud PlatformのWindowsインスタンスにいったん接続してから、アマゾンAWS EC2に同様の手順でWindowsログインします。
★Google Cloud PlatformのWindowsインスタンスにはChrome リモート デスクトップ(デスクトップ/モバイル両方とも)でAWS EC2のWindowsインスタンスにPINコードで簡単にログインは出来ますが、画面が真っ暗で現状では使えません。
私はAWSの課金が安い「バージニア北部」リージョン(約0.8ドル/hr)を使っているので、リモートデスクトップ接続では遠方なので操作のレスポンスはやや緩慢に感じます。
少々課金が高い「アジアパシフィック(東京)」リージョン(約1.0ドル/hr)にすればレスポンスは良くなりTver やradiko.jpなどの地域限定サービスもAWS EC2では使えます。(GCPでは東京リージョンでも国外からのアクセスとみなされ使えません)
Windowsでの作業が終わったら、AWSのインスタンス管理画面で必ずインスタンスを停止してください。さもないとランニングのままで放置すると使っていなくてもその時間分の課金がされるのでもったいないです。
インスタンスの「停止」(開始も)は1回だけだと停止(開始)しないことがけっこうあるので、ステータスを確認しながら停止(開始)しなければ再度行って確実に停止させてください。
まとめ
★ソフトを起動しても画面が開かない場合:タスクバーに常駐している場合は右クリックで操作ができます。そうでなければ、インストーラーから再インストールして「…exeを終了」をすれば開くようになります。
★AWS EC2のインスタンスを開始してWindowsインスタンスへのログインまでの操作を簡単に紹介します。
AWSにサインイン(ログイン)してEC2のインスタンス管理画面を開き、アクションボタンをクリックして、メニューからインスタンスを開始します。
1回では開始しないことがけっこうあるので、ステータスを確認して「stopped」のままの場合は再度開始します。
「pending」になったら少し時間を空けてからWindowsパスワードの取得を行います。インスタンス作成直後は20分程度はかかります。2回目以降は5分程度で取得できるようになります。
「running」はすぐに表示されますが、それ以降も上記の待ち時間は必要です。「接続」ボタンをクリックします。
「パスワードの取得」ボタンをクリックして、保存した.pemファイルの場所をローカルディスクまたはクラウドディスク(モバイルでの仮想Windows操作で便利)上で指定します。
ここの操作や画面はケースバイケースで変化するので、画面の指示に従ってWindowsパスワードを取得してください。
パスワードに記号混じりの複雑で長い文字列が表示されるので、これをメモ帳などにコピーしておきます。このパスワードは短期的(1日~数日)に変わるので、ログインできなくなったら再度パスワードを取得してみてください。
ちなみに、インスタンスのIPアドレスはインスタンスを開始する度に変わります。ChromeリモートデスクトップはIPアドレスの入力は不要ですが、通常の「リモートデスクトップ接続」の場合は、開始する際はパブリックのIPアドレスを毎回コピーして使ってください。
Chromeリモートデスクトップを開きます。最初はChromeブラウザーのブックマークツールバーの左端にある「アプリ」アイコンをクリックします。
Chromeリモートデスクトップアイコンをクリックします。タスクバーに右クリックでPIN留めしておくと便利です。
ちなみにここにあるアプリは「Chrome拡張機能」なので、Chrome Webストアからほぼ無料でインストールできます。
上記に見える「Chrome RDP for Googl…」はGoogle Cloud Platform専用のアプリで、インスタンスの「RDP」ボタンをワンクリックするだけで起動できWindowsログインのパスワードもコピー&ペーストできるので便利です。つまり上記の「Chrome リモート デスクトップ」とは全く別物で、むしろWindows標準の「リモートデスクトップ接続」に近いです。
以下はChromeリモートデスクトップが開いたところです。
「マイコンピュータ」に接続できるインスタンスがアクティブで表示されます。グレーアウトしているインスタンスは停止中です。AWS EC2のインスタンスは頭が「EC2…」です。
インスタンスを開始してもグレーアウトの場合は、おそらくChromeリモートデスクトップがインスタンス側のWindowsのChrome拡張機能にインストールされていない可能性があるので、通常の「リモートデスクトップ接続」でログインしてインストールしてください。両方同時には接続できません。
AWS EC2のインスタンスをクリックします。
左上のメニューボタンをクリックします。
トップの「Ctrl-Alt-Delを送信」を選びます。
以上でAWS EC2のWindowsインスタンスの開始とログインまでの操作説明を終了します。
★次に、英語入力を追加する方法を紹介します。
左下のWindowsメニューボタンをクリックして「設定」を選び、「時刻と言語>地域と言語」を開きます。
「言語>言語を追加する」をクリックして「English(United States)」を選んで追加します。日本語と英語の切替えは、タスクバーの右端にある日時表示の左側のアイコンをクリックすることで行います。
パスワードを自動入力するマクロを走らせる前に必ず「ENG」になっているのを確認してください。ログイン後は日本語に戻してもOKです。
ここで、「日本語」を上(規定値)にするには、「言語設定」をクリックして「日本語」をクリックし、「規定値として設定する」ボタンをクリックします。
こうしておくと、ログインや(再)起動後も「日本語」になっているので「英語」から毎回切替える必要が無くなります。
以上で、英語入力を追加する方法の説明を終了します。
この自動入力ツールはWindows専用のソフトなので、ChromeBookなどでは走りません。その場合は少々面倒ではありますが・・・
いったんGoogle Cloud Platform(GCP)のCompute EngineにWindowsインスタンスを作って、そこにログインしてから今回の方法を使ってAWSにログインしてDAZ Studioを使うことになりそうです。この場合のGCPの課金は無視できそうです。
この方法は、現状ではChromeBookを持っていないので検証は出来ていませんが、今回のことでChromeBookに興味を持ったので、とりあえず検証用に以下の「Chromebit」スティックPCをAmazonに今日(11/30)注文しました。12/2(土)に届く予定です。
溜まっているAmazonポイントも使ったので1万円以下の支払いで済みました。とりあえずAndroidタブレット用に使っているワイヤレスキーボードとマウスを流用して操作してみたいと思います。インプレッションは後日レポートします。
2日後にChromebitとは全く別の製品が届いたので返品処理はしましたが、クレジットへの返金は数ヶ月先になる可能性があるとアマゾンから回答があったので諦めました。これもGoogleとの関係の悪化によるユーザーへの影響なのでしょうか? まさか・・・
ではでは、きらやん