Pulpit zdalny używa dwóch z czterech monitorów

62

Niedawno zaktualizowałem moją domową stację roboczą i teraz mam na niej cztery monitory. Pracuję zdalnie przez większość czasu i potrzebuję sposobu, aby przenieść zdalny pulpit tylko na dwa z tych czterech monitorów.

Dwa górne monitory (monitory 4 i 3, od lewej do prawej) mają maksymalną rozdzielczość 1680 x 1050. Dwa dolne dwa monitory (1 i 2) mają maksymalną rozdzielczość 1920 x 1080.

W moim pliku .rpd dla tego połączenia pulpitu zdalnego mam następujące klucze (przyciąłem go dla zwięzłości) identyfikator trybu ekranu: i: 2 używam multimon: i: 1 szerokość pulpitu: i: 1920 wysokość pulpitu: i: sesja 2130 bpp : i: 32 winposstr: s: 0,1,3,75,1655,675

Wcześniej mogłem uciec od robienia „mstsc / span”, kiedy miałem tylko dwa monitory, ale to nie działa teraz (i nie jest pożądane). Chciałbym, aby nowa konfiguracja używała tylko dwóch moich monitorów. Nie obchodzi mnie które z nich. Jak mogę zmienić plik .rdp, aby to osiągnąć?

William Gant
źródło
To żądanie funkcji UserVoice jest dokładnie tym, czego chcesz. Głosuj na to i powiadom Microsoft o naszych potrzebach!
Franklin Yu
@FranklinYu Zdajesz sobie sprawę, że o to pytano 6 lat temu, tak? I ta prośba o funkcję uzyskała tylko 10 głosów w ciągu 1 roku, który upłynął. Można powiedzieć, że jeśli nie jest to cecha do tej pory, nigdy nie będzie.
b1nary.atr0phy

Odpowiedzi:

16

Korzystam z pełnego ekranu RDP na 2 z 3 moich monitorów, moje rozwiązanie jest naprawdę bardzo proste:

  1. Skonfiguruj maszynę wirtualną z systemem Windows 7 lub 8 (używam VirtualBox i Windows 7 Ultimate)
  2. Ustaw maszynę wirtualną, aby używała 2 z 3 monitorów i pełnego ekranu
  3. Skonfiguruj połączenia VPN i RDP na maszynie wirtualnej (i niech połączenie RDP używa wszystkich twoich monitorów (2 wirtualnych monitorów)).

To wszystko, trochę przesadzone, ale skonfigurowanie podstawowej maszyny wirtualnej z systemem Windows zajmuje bardzo mało czasu i jest łatwe do uruchomienia / zawieszenia.

Używam moich 2 monitorów do pracy dedykowanej, a mój trzeci do rozrywki / muzyki / netflix / etc ...

Travis MacDonald
źródło
11
Ciekawe rozwiązanie, ale niepotrzebne zasysanie zasobów.
Nick
14

Ja również szukałem rozwiązania tego problemu, którego klient Windows RDP nie może rozwiązać.

Pracuję głównie zdalnie przez RDP w trybie pełnoekranowym ze wszystkimi moimi 4 monitorami, ale chciałbym, aby niektóre programy działały lokalnie.

Zwykle programy te odtwarzają muzykę lub wideo, które nie są odpowiednie dla zdalnego komputera i trzymam je na jednym monitorze.

Tak więc prosty hack dla mnie polega na zmuszaniu tych programów do ciągłego działania.

Korzystam z Dexpot i po prostu kliknij prawym przyciskiem myszy okno programu i wybierz „Always On Top”.

Teraz nawet w trybie pełnoekranowym RDP mogę wyświetlić okno mojego programu.

Adrian Halid
źródło
To jest również mój dokładny przypadek użycia i jak dotąd jest to dla mnie najlepsze rozwiązanie.
Garrett,
Po kilku dalszych badaniach Always On Top to program napisany w jednym wierszu skryptu AutoHotKey - znalazłem blog autora i sam pobrałem AHK, z którym czuję się bardziej komfortowo niż jakiś przypadkowy exe.
Garrett
5
AutoHotKey: ^ SPACE :: Winset,
Alwaysontop,,
To rozwiązanie w połączeniu z komentarzami Garreta i Sama działało idealnie dla mnie. Dzięki.
Martin,
Ten skrypt programu PowerShell dobrze sprawdza się w utrzymywaniu określonych okien (w tym połączeń RDP / VM) na wierzchu. Używam tego, aby objąć maszynę wirtualną wszystkimi monitorami, a następnie mieć inną maszynę wirtualną „na górze” za pomocą jednego monitora. To zapewnia mi podział 70/30 na 3 monitorach. github.com/bkfarnsworth/Always-On-Top-PS-Script
twconnell
9

Jest to niestety niemożliwe. Uwierz mi, bardzo się starałem. Istnieją artykuły mówiące, że możesz ograniczyć liczbę monitorów, ale to nie działa. Microsoft najwyraźniej wcale nie testował tej funkcjonalności i nie można się tym martwić, aby to naprawić.

Dopóki nie naprawią błędu, jest to albo jeden monitor, albo wszystkie.

Spróbuję kilku alternatyw i zobaczę, czy mogę wymyślić jakieś rozwiązanie innej firmy, które faktycznie działa, inne niż przejście na Linux / VNC.

JohnEye
źródło
Czy na pewno „ograniczenie liczby monitorów” przez gpo nie zadziała? gdzie zastosowałeś GPO? komputer lokalny czy docelowy?
Root Loop
@RootLoop: Właściwie próbowałem obu, ale zachowanie było nadal takie samo. To było kilka lat temu, myślę, że systemy, z którymi wtedy pracowałem, to Windows 7 i 8. Czy masz inne doświadczenia? Z przyjemnością zedytuję odpowiedź, jeśli zachowanie się zmieniło.
JohnEye,
3

Otwórz okno dialogowe Uruchom ( Win+ R) i wpisz desk.cpl. Następnie znajdź numer ekranu, który chcesz edytować.

Zmień 1in use multimon:i:1do numeru żądanego ekranu. Zmień także rozdzielczość:

desktopwidth:i:1920
desktopheight:i:2130

do

desktopwidth:i:1680
desktopheight:i:1050
Nie? Nie
źródło
4
Zmiana liczby w „multimon: i: 1” nie pomaga. Zobacz technet.microsoft.com/cs-cz/library/ff393695%28v=ws.10%29.aspx
JohnEye
2

Myślę, że to wada projektowa. Po prostu nie zaprojektowali możliwości korzystania tylko z niektórych dostępnych monitorów. Istnieje jednak możliwość obejścia tego, ograniczając liczbę dopuszczalnych monitorów na sesję we właściwościach RDP-Tcp hosta usług pulpitu zdalnego. Zobacz ten artykuł .

Niestety jest to również opcja „wszystko albo nic”. Ogranicza liczbę monitorów dla wszystkich użytkowników hosta RDS. Następnie musisz mieć możliwość kontrolowania, które monitory mają być używane za pomocą parametrów „desktopwidth” i „desktopheight” pliku rdp. Jednak tak naprawdę potrzebna jest możliwość określenia, ile monitorów chcesz użyć w pliku RDP na kliencie, ale obecnie nie jest to możliwe.

Alexander
źródło
1
To nie działa. Ustawienie go na hoście na 2, a następnie połączenie z maszyną z trzema monitorami (przy użyciu wszystkich włączonych monitorów) zmusza go do używania tylko jednego monitora.
BrainSlugs83
2

Dla mnie mRemoteNG ( https://mremoteng.org ) jest rozwiązaniem. Rozciągam panel na dwóch monitorach i ustawiam rozdzielczość połączenia RDP na „dopasuj do panelu”. Mam dwa monitory 1920x1200 objęte mRemoteNG i trzeci monitor (główny ekran Surface Pro 3) z treścią lokalną.

pzi123
źródło
Podoba mi się to ok - wydaje się to jedyne przyzwoite obejście wspomniane tutaj. Dzięki.
SamAndrew81
0

Przez jakiś czas miałem ten problem i znalazłem „hack”, który go rozwiązuje. Zmień właściwości rozmiaru w pliku .rdp na wartość zbliżoną do dwóch monitorów, których chcesz użyć. Mam trzy monitory 1200 * 1920 w trybie pionowym, a te wartości działają dla mnie:

użyj multimon: i: 0 szerokość pulpitu: i: 2390 wysokość pulpitu: i: 1840

To tworzy okno, które mogę ustawić na dwóch ekranach (z miejscem przeznaczonym na pasek zadań i obramowania okna. To pozostawia mi dwa drobne problemy:

  1. Nie znalazłem sposobu, aby uruchomić okno RDP w pełnym rozmiarze (muszę zmienić jego rozmiar po otwarciu połączenia)
  2. Host nie informuje, że istnieją dwa ekrany, więc funkcja maksymalizacji wypełni oba ekrany i okna dialogowe otwarte ponad ramką ekranu
Cato Lommerud
źródło
0

Znalazłem obejście przy użyciu

  1. Ustawienia RDP
  2. DisplayFusion na pulpicie
  3. Splitview na zdalnym pulpicie

Mam cztery monitory, w tym ekran laptopa, i chciałem użyć tylko dwóch z czterech dla okna rdp.

  1. Wykorzystano DisplayFusion do utworzenia funkcji niestandardowej (w ustawieniach >> Dodaj niestandardową funkcję
  2. Funkcja Akcja = Zarządzaj oknem
    Okno Akcja ekranu = proporcjonalnie przenieś okno do okna # i
    zmień jego szerokość Zmień szerokość okna na Podaną wartość piksela = 2560 (ponieważ mój monitor to 1280X1024)
    Zmień wysokość okna na Podaną wartość piksela = 1024
    Dodano skrót

Teraz w ustawieniach RDP (edytuj jako notatnik dodaj inteligentną zmianę rozmiaru: i: 1 na dole)

Teraz po otwarciu okna (użyj skrótu, aby zmaksymalizować lub rozciągnąć go na dwa ekrany)
Na pulpicie zdalnym użyj Splitview lub innych aplikacji do podziału ekranu, aby podzielić pulpit na dwa.

To nie jest ładne, ale obejście.

Taj
źródło
0

Znalazłem pracę, która jest dla mnie wystarczająco czysta:

  • Odznacz opcję używania wszystkich ekranów
  • Edytuj w notatniku i

    1. ustaw szerokość rozdzielczości na 2x rozdzielczość ekranu minus kilka pikseli (-30 działa dla mnie)
    2. ustaw wysokość rozdzielczości na 1x rozdzielczość ekranu minus około 50 pikseli

Zapisz, a następnie wróć do ustawień, odznacz opcję ponownego użycia wszystkich ekranów i wybierz powyżej zdefiniowanej rozdzielczości.

Uruchom i ręcznie rozszerz okno, aby objąć 2 żądane ekrany.

Arnaud
źródło
1
Nie działa. Okno nie zmieni rozmiaru na drugim ekranie. Utknął tylko z pierwszym.
Brian Knoblauch
0

Najlepszą funkcjonalną odpowiedzią jest użycie DisplayFusion lokalnie i SplitView na komputerze zdalnym, jak opisano w tej odpowiedzi . Ale to po prostu nie jest praktyczne dla większości ludzi.

Funkcja UserVoice firmy Microsoft Żądanie:

Zezwalaj na możliwość wyboru podzbioru monitorów lokalnych dla sesji RDP (pełny ekran)

ma na ten moment 463 głosy, co stanowi najwyższą liczbę głosów obecnie w UserVoice za dowolną funkcję związaną z usługami pulpitu zdalnego . Proszę głosować!

Skupiony Wędrowiec
źródło
-1

Obejściem jest przejście do ustawień wyświetlania i wyłączenie 2 monitorów. Następnie połącz za pomocą RDP ze zdalnym hostem z włączoną opcją „używaj wszystkich moich monitorów do sesji zdalnej”, spowoduje to połączenie za pomocą tylko 2 monitorów, a następnie wróci do ustawień i ponownie włączy pozostałe monitory. Teraz twoja rozdzielczość w sesji zdalnej zostanie ustawiona na 2 monitory, ale będziesz musiał rozciągnąć okno na hoście 4 monitorów, aby zobaczyć oba monitory

Leonardo Kogan
źródło
2
To nie działa. Włączenie pozostałych monitorów po podłączeniu protokołu RDP powoduje „przywrócenie” sesji RDP, a po ich zmaksymalizowaniu zajmuje wszystkie monitory, w tym nowo włączone / podłączone monitory
Thilina R