Czy klienci RDP mogą uruchamiać aplikacje zdalne, a nie komputery stacjonarne


85

Czy klienci RDP mogą uruchomić aplikację zdalną, a następnie wyświetlić tylko tę aplikację (a nie pulpit)? Aplikacja pojawiłaby się na pełnym ekranie w kliencie i gdyby aplikacja została zamknięta, sesja zakończyłaby się.


1
Właśnie tego szukałem ... dzięki, że pytasz!
Gishu

1
Odpowiedź @ user172681 zawiera najbardziej aktualny link. Jest teraz również sprytne narzędzie o nazwie „Narzędzie RemoteApp” (patrz łącza w sekcji aktualizacji u góry strony) do konfigurowania aplikacji zdalnych i generowania plików RDP ... działało idealnie dla mnie w systemie Win7.
John Rix

Odpowiedzi:


19

Używając pliku połączenia RDP, możesz ustawić alternatywną powłokę jako twoją aplikację; składnia pliku jest podobna do

alternate shell:s:c:\winnt\system32\notepad.exe

i przekazujesz to jako argument wiersza poleceń do mstsc.exe; jest to podobne do rozwiązania chrissr, ale bez wpływu na każdą uruchamianą sesję RDP. Pełniejsze podsumowanie ustawień tutaj .


6
nie zadziałało ... widziałem właściwość w pliku rdp, ale dokonanie zmiany (która się powinna zadziałać) nic nie zmieniła, kiedy zainicjowałem połączenie. zdalny z Vista x64 do Win 7 x64.
sonjz

3
Niestety link nie działa.
Nikola Malešević

1
Czy mógłbyś to zaktualizować, podając więcej szczegółów lub przynajmniej naprawić link?
WhiteHotLoveTiger


Nie działa dla mnie w systemie Windows 10. Czy usunęli tę funkcję?
مسعود

38

Wydaje się, że „alternatywna powłoka” już nie działa w najnowszych wersjach systemu Windows RemoteApp.

remoteapplicationmode:i:1
remoteapplicationname:s:Purpose of the app shown to user...
remoteapplicationprogram:s:C:\...\some.exe
remoteapplicationcmdline:s:

Aby to działało np. Pod Windows 10 Professional, należy włączyć jakąś politykę :

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services]
"fAllowUnlistedRemotePrograms"=dword:00000001

7
Dla ścisłości: powyższe zmiany (z pierwszej sekcji) należy wprowadzić w samym .rdppliku oraz w rejestrze na serwerze.
picrap

Dla przypomnienia, istnieją dwa podobnie nazwane klucze RDP: remoteapplicationfile:si remoteapplicationprogram:s. Do *filekluczowych Określa pełną ścieżkę do pliku wykonywalnego na lokalnym (host) komputerze, a *programklucz określa wykonywalny na zdalnym komputerze.
Moshe Rubin

11

Nazywa się to trybem „płynnym”. rdesktop, klient RDP dla systemu Unix, jest w stanie to zrobić. Ze strony podręcznika:

   -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.

Więcej informacji można znaleźć na wspomnianej stronie internetowej Cendio .


2
czy coś takiego jest dostępne w systemie Windows?
ScottC,

9

Jest to dość łatwo osiągalne.

  1. Musimy zezwolić na uruchamianie programów spoza listy z RDP.
    1.1 Zapisz poniższy skrypt na swoim pulpicie, rozszerzenie musi kończyć się na .reg.
Edytor rejestru systemu Windows w wersji 5.00

    [HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Terminal Server \ TSAppAllowList]
    „fDisabledAllowList” = dword: 00000001


       1,2 prawym przyciskiem myszy na plik i kliknij Merge, Yes, Ok.

  1. Modyfikowanie naszego pliku rdp.
    2.1 Na końcu naszego pliku dodaj następujący kod:
tryb zdalnej aplikacji: i: 1
remoteapplicationname: s: to będzie opcjonalny opis aplikacji
remoteapplicationprogram: s: Względna lub bezwzględna ścieżka do aplikacji
                           (Przykład: taskmgr lub C: \ Windows \ system32 \ taskmgr.exe)
remoteapplicationcmdline: s: W tym miejscu można umieścić dowolne opcjonalne parametry aplikacji


Lub po prostu użyj tego, aby upewnić się, że działa:

tryb zdalnej aplikacji: i: 1
remoteapplicationname: s:
remoteapplicationprogram: s: mspaint
remoteapplicationcmdline: s:

        2.2 Wprowadź swoją nazwę użytkownika i hasło i połącz się.


    3. Teraz możesz używać RemoteApp bez żadnych problemów, tak jakby był uruchomiony na komputerze lokalnym 😉


Doskonała odpowiedź powyżej wykorzystuje remoteapplicationprogram:sklucz do określenia aplikacji znajdującej się na komputerze zdalnym . Aby uruchomić lokalną aplikację po stronie hosta na komputerze zdalnym, użyj remoteapplicationfile:sklucza.
Moshe Rubin

6

Tak, możesz zmienić domyślną powłokę z Explorer.exe na określoną aplikację.

W Regedit przejdź do HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Winlogon. Bieżącą powłoką powinien być Explorer.exe. Zmień go na YourApp.exe. Spowoduje to zmianę powłoki dla wszystkich użytkowników, którzy logują się do komputera. Jeśli chcesz zmienić go tylko dla określonego użytkownika, przejdź do tego samego klucza w HKEY_CURRENT_USER.


Uwaga: użytkownicy nadal będą mogli używać CTRL-Alt-Del i uzyskiwać dostęp do innych aplikacji. Możesz chcieć wyłączyć CTRL-Alt-Del dla konta lub grupy, która będzie się logować przez RDP.
chrissr

3
To skutecznie uniemożliwia użytkownikowi regularne logowanie.
ypnos


1

Myślę, że Citrix robi takie rzeczy. Chociaż nie jestem pewien szczegółów, ponieważ użyłem go tylko kilka razy. Myślę, że ten, którego użyłem, nazywał się XenApp, ale nie jestem pewien, czy o to ci chodzi.


Wydaje się, że XenApp bardziej dotyczy wirtualizacji aplikacji niż zdalnego dostępu (chociaż widzę, że ma opcję zdalną). Szukam też czegoś w obozie open source (np. Rdesktop).
Richard Dorman

2
Pod maską kluczowym elementem XenApp jest nadal przetwarzanie na serwerze (tak jak dziesięć lat temu, kiedy produkt nosił nazwę MetaFrame). Po prostu zmieniły się mody marketingowe, a produkt poszerzył się, obejmując więcej niż tylko rdzeń aplikacji zdalnej.
Steve Gilham


0

RDP nie zrobi tego natywnie.

Jak powiedziały inne odpowiedzi - musisz wykonać trochę skryptów i wprowadzić zmiany zasad, aby utrudnić logowanie RDP do uruchamiania czegokolwiek poza zamierzoną aplikacją.

Jednak od 2008 r. Firma Microsoft udostępniła technologię wirtualizacji aplikacji za pośrednictwem usług terminalowych, która umożliwia bezproblemowe wykonywanie tego zadania.


0

Przynajmniej w wersji 2008R2, jeśli konta są używane tylko do RDP, a nie do logowania lokalnego, możesz to ustawić dla każdego konta. To powinno działać w przypadku cienkich klientów. Jeśli konta są również używane na lokalnych komputerach stacjonarnych, wpłynęłoby to również na te logowania.

W ADUsers & Computers otwórz właściwości konta i przejdź do zakładki Environment. Na tej karcie zaznacz opcję „Uruchom następujący program przy logowaniu” i określ ścieżkę oraz plik wykonywalny programu.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.