treedown’s Report

システム管理者に巻き起こる様々な事象を読者の貴方へ報告するブログです。会社でも家庭でも"システム"に携わるすべての方の共感を目指しています。

※https化しました。その影響でしばらくリンク切れなどがあるかもしれませんが徐々に修正していきます。 リンク切れなどのお気づきの点がございましたらコメントなどでご指摘いただけますと助かります。

(2/2)サーバを使わないRemoteAppで必要となる.rdpファイル書式

昨日に続きまして個人でも使えるRemoteAppをご報告します。

RDPファイルの生成

RDPファイルの生成は一旦ダブルクリックで対象ホストPC-Aへのアクセスが可能になる.rdpファイルを生成しましょう。
参照する側(RDPでアクセスする側)のOS上で、リモートデスクトップでホスト側であるPC-Aへアクセスします。
※このタイミングでアクセスする認証情報・パスワードなどは保存しておくと認証情報を再入力する手間が省けてよいです。
アクセスした後に、再度リモートデスクトップを起動して今現在の接続情報を「名前を付けて保存」を選択して、.rdpファイルとして保存します。
この保存した.rdpファイルは、ダブルクリックするだけでホストPC-Aにアクセスしリモートのデスクトップを開くという動作をしてくれるファイルであると問題があった時の切り分けがしやすくなります。
さらにこのタイミングで保存した.rdpファイルをベースファイルとして、RemoteAppアプリケーションの情報を追記していくようにしますので、そういう意味でも重要なファイルになります。

Windows7 Enterprise同士の場合

この.rdpベースファイルをテキストエディタで開いて以下を追記します
----------------------------------------------
disableremoteappcapscheck:i:1
alternate shell:s:rdpinit.exe
remoteapplicationmode:i:1
remoteapplicationprogram:s:||IE8
remoteapplicationname:s:Internet Explorer8
drivestoredirect:s:*
----------------------------------------------
※他にもいくつかアプリを追加していますが、上記アプリ名称でこの記事では統一することとします。他のアプリは「IE8」「Internet Explorer8」と記載のある部分をレジストリキーと同一になるように生成してやれば、接続可能なはずです。

Windows8.1では勝手が違った…?

ところが、以前に検証して成功していた上記の方法ではアクセスができませんでした。なぜかは不明。以下のようなエラーでアクセスできなかったのです。
----------------------------------------------
[Window Title]
RemoteApp のエラー

[Content]
このプログラムまたはファイルを開くことができませんでした。Internet Explorer8 で問題が発生したか、開こうとしているファイルにアクセスできませんでした。
サポートが必要な場合は、システム管理者に問い合わせてください。

[OK]
----------------------------------------------
ここで行き詰っていろいろとやってしまった(前述のWUもその一つ)のですが、結果としてWindows8.1からRemoteApp経由で接続する際には、記述方法が以前と相違する、ということが原因でした。
Windows8.1で.rdpファイルを生成し使用するには以下のような記述となるようです。
■生成した.rdpファイルに以下を追記する内容:
----------------------------------------------
remoteapplicationmode:i:1
remoteapplicationname:s:%レジストリキーで指定したアプリケーション名(NAME欄)%
remoteapplicationprogram:s:%リモート側(操作される側)に保管された実行ファイルフルパス%
----------------------------------------------
前述の「ダブルクリックするだけでホストPC-Aにアクセスしリモートのデスクトップを開くという動作をしてくれるファイル」で作成した.rdpベースファイルをテキストエディタで開いて以下を追記します。
----------------------------------------------
remoteapplicationmode:i:1
remoteapplicationname:s:Internet Explorer8
remoteapplicationprogram:s:C:\Program Files (x86)\Internet Explorer\iexplore.exe
----------------------------------------------
Windows8.1はこれだけの追記でRemoteApp接続が可能のようです。

f:id:treedown:20160111040615p:plain

できました。このアイコンをダブルクリックでホスト側PC-AのIEが起動します。当然ですがこれで起動したIEですと.rdpファイルにて指定されているユーザプロファイル内のブックマークが読み込まれます。

蛇足ですが今回追加したのは…

メーカ保証はありませんが、弥生会計(他)をRemoteAppでアクセスできるようにしました。
記述方法は全く同じですが、レジストリで指定したName欄を「remoteapplicationname」に記載して、ホスト側のPC-Aにインストールされている弥生を参照するためにフルパスで.exeファイルを「remoteapplicationprogram」に記載しています。
----------------------------------------------
remoteapplicationmode:i:1
remoteapplicationname:s:YayoiKaike
remoteapplicationprogram:s:C:\Program Files (x86)\Yayoi\Kaikei14\System\YKaikei16.exe
----------------------------------------------
これなら同時利用は1人だけではありますが、インストール作業を各PCで実施する必要がまったくなく、生成した.rdpファイルを配ってそれをダブルクリックするだけでアプリが利用できる、という点において多人数で利用するデスクトップアプリケーションが1つしかない場合も便利に使えます。(※くれぐれもライセンスにはご注意ください。)

このようにRemoteAppはサーバがなくても非常に利便性が高いといえます。ぜひこのようなシチュエーションがあればご検討をおすすめします。