RDPクライアントはリモートアプリケーションを起動してから、そのアプリケーションのみを表示できますか(デスクトップは表示できません)?アプリケーションはクライアント内で全画面表示され、アプリケーションが閉じられるとセッションは終了します。
RDPクライアントはリモートアプリケーションを起動してから、そのアプリケーションのみを表示できますか(デスクトップは表示できません)?アプリケーションはクライアント内で全画面表示され、アプリケーションが閉じられるとセッションは終了します。
回答:
RDP接続ファイルを使用して、代替シェルをアプリケーションに設定できます。ファイルの構文は次のようになります
alternate shell:s:c:\winnt\system32\notepad.exe
そして、それをコマンドライン引数としてmstsc.exeに渡します。これはchrissrのソリューションに似ていますが、起動するすべてのRDPセッションに影響を与えることはありません。 設定のより完全な要約はここにあります。
「代替シェル」は、最近のバージョンのWindowsでは機能しなくなったようですRemoteApp
。
remoteapplicationmode:i:1
remoteapplicationname:s:Purpose of the app shown to user...
remoteapplicationprogram:s:C:\...\some.exe
remoteapplicationcmdline:s:
これをWindows10 Professionalなどで機能させるには、いくつかのポリシーを有効にする必要があります。
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services]
"fAllowUnlistedRemotePrograms"=dword:00000001
.rdp
ファイル自体とサーバー上のレジストリで行う必要があります。
remoteapplicationfile:s
とremoteapplicationprogram:s
。*file
キーを指定上の実行可能ファイルのフルパスローカル(ホスト)コンピュータ、一方*program
のキーを指定実行リモートコンピュータ。
これは「シームレス」モードと呼ばれます。rdesktop
、Unix用のRDPクライアントはこれが可能です。マンページから:
-A Enable SeamlessRDP. In this mode, rdesktop creates a X11 window for each window on the server side. This mode requires the SeamlessRDP server side component, which is available from http://www.cendio.com/seamlessrdp/. When using this option, you should specify a startup shell which launches the desired application through SeamlessRDP.
詳細については、前述のCendioWebサイトを参照してください。
Windowsレジストリエディタバージョン5.00 [HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Terminal Server \ TSAppAllowList] "fDisabledAllowList" = dword:00000001
1.2ファイルを右クリックし、[]をクリックしMerge、Yes、Ok。
remoteapplicationmode:i:1 remoteapplicationname:s:これはアプリのオプションの説明になります remoteapplicationprogram:s:アプリへの相対パスまたは絶対パス (例:taskmgrまたはC:\ Windows \ system32 \ taskmgr.exe) remoteapplicationcmdline:s:ここにオプションのアプリケーションパラメータを入力します
remoteapplicationmode:i:1 remoteapplicationname:s: remoteapplicationprogram:s:mspaint remoteapplicationcmdline:s:
2.2ユーザー名とパスワードを入力して接続します。
3.これで、RemoteAppをローカルマシンで実行されているかのように問題なく使用できます😉
remoteapplicationprogram:s
キーを使用して、リモートコンピューターにあるアプリケーションを指定します。リモートコンピューターでローカルのホスト側アプリケーションを実行するには、remoteapplicationfile:s
代わりにキーを使用します。
はい、デフォルトのシェルをExplorer.exeから特定のアプリケーションに変更できます。
Regeditで、HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Winlogonに移動します。現在のシェルはExplorer.exeである必要があります。YourApp.exeに変更します。これにより、マシンにログオンするすべてのユーザーのシェルが変更されます。特定のユーザーに対してのみ変更する場合は、代わりにHKEY_CURRENT_USERの同じキーに移動します。
これはRemoteAppと呼ばれます。これを使用するには、ターミナルサービスをインストールする必要があります。これは現在リモートデスクトップサービスと呼ばれています。
Citrixはそういうことをしていると思います。数回しか使ったことがないので、具体的にはわかりませんが。私が使用したものはXenAppと呼ばれていたと思いますが、それがあなたが求めているものかどうかはわかりません。
別の方法がこのCodeProjectの記事に示されています:
http://www.codeproject.com/KB/IP/tswindowclipper.aspx
基本的な考え方は、表示したいアプリのウィンドウ位置を送信する仮想チャネルを作成し、ウィンドウのその部分のみをクライアントにレンダリングすることです。