Połączenie pulpitu zdalnego bez blokowania komputera zdalnego

31

Czy można połączyć się za pomocą Podłączania pulpitu zdalnego do komputera z systemem Windows 7 bez blokowania komputera zdalnego (chcę użyć tego samego zalogowanego użytkownika)? Czy jest możliwe zwolnienie blokady po zamknięciu sesji pulpitu zdalnego?

yossis
źródło

Odpowiedzi:

16

Po prostu uruchom to ze zdalnej sesji:

tscon %sessionname% /dest:console
Ryan
źródło
Wystąpił błąd Nazwa sesji% nazwa sesji% nie znaleziono, jakieś pomysły? Zgadnij, że nie jest zdefiniowany w systemie Windows 8
Felix
Nie jestem pewien co do systemu Windows 8, działało to w systemie Windows 7.
Ryan
4
@ phil Dostałem ten „błąd” od jego ans w dniu 7. Najwyraźniej social.technet.microsoft.com/Forums/windows/en-US/... Dla XP: tscon 0 /dest:consoleDla 7: tscon 1 /dest:console <- uruchom na zdalnym komputerze. ALE .. dzieje się tak po prostu, gdy komputer kliencki (mstsc.exe) rozłączy się z przeglądaną przez siebie kompozycją, nie będzie się blokował. Rozłączasz się, uruchamiając to polecenie na przeglądanej kompie. Ale ta metoda nie zatrzyma blokowania ekranu po zalogowaniu.
barlop
% sessionname% nie jest dostępne z wiersza polecenia z podwyższonym poziomem uprawnień (administratora), prawdopodobnie dlatego, że system Windows traktuje monit administratora jako osobną, nie zdalną sesję. Jednak tscon.exe wymaga uprawnień administratora, aby zakończyć sesję. Rozwiązaniem jest użycie powyższego polecenia w skrócie i wybranie opcji „uruchom jako administrator” w opcjach zaawansowanych (działa również, jeśli wskażesz skrót „uruchom jako administrator” do pliku wsadowego za pomocą niezbędnego polecenia i przekażesz% sessionname% do podniesiony plik wsadowy jako argument. Używam tego do rozłączania bez blokowania i zawieszania komputera w tym samym czasie)
Jules
6

Możesz użyć tego skryptu PowerShell, który obsługuje również system Windows 8:

$server   = 'MyServer'
$username = $env:USERNAME

$session = ((quser /server:$server | ? { $_ -match $username }) -split ' +')[2]

tscon $session /dest:console
Felix
źródło
To w ogóle mi nie działało. Po prostu pojawia się komunikat „odmowa dostępu”. Wygląda na to, że próbuje dopasować sesję na drugim końcu do Twojej lokalnej nazwy użytkownika? Ale chcę połączyć się z sesją konsoli, która może być zalogowana jako inny użytkownik.
Dan
@ Dan Więc dlaczego używasz, $env:USERNAMEjeśli nie chcesz go używać? Zamiast tego użyj nazwy użytkownika, której chcesz użyć. Zawsze powinieneś myśleć podczas kopiowania i wklejania czegokolwiek. Może to spowodować bardzo złe chwile, jeśli po prostu wykonasz wszystko, co gdzieś znajdziesz.
Dawid Ferenczy Rogožan
@Dawid. Dzięki, dzięki? Spojrzałem na scenariusz i jest on całkiem nieszkodliwy. Zdecydowałem się go uruchomić, zastanawiając się, jak to może działać. Okazuje się, że nie. Zanotowałem to. Podsumowując, skrypt nie określa, w jakich sytuacjach działa (prawdopodobnie użytkownik domeny zalogował się jako ten sam użytkownik na tym komputerze). Próbowałem z inną nazwą użytkownika, ale to też nie działało.
Dan
4

O ile mi wiadomo, nie można zapobiec zablokowaniu komputera przez Remote Desktop Connection, ale Ultra VNC pozwala na zdalne sterowanie inną maszyną bez jej blokowania.

kruk
źródło
4
Ultra VNC jest znacznie wolniejszy, co uniemożliwia mi korzystanie z niego
yossis
Jest możliwe ... patrz odpowiedź Felixa
JoelFan,
4

patrz https://techjourney.net/remote-desktop-connection-without-locking-remote-computer-session-on-disconnect/

Jeśli musisz odblokować komputer zdalny po zamknięciu połączenia pulpitu zdalnego, oto sztuczka, której można użyć, aby zmusić RDP do rozłączenia bez blokowania sesji i zalogowania lokalnego użytkownika z powrotem na ekranie konsoli lokalnej po rozłączeniu połączenia pulpitu zdalnego.

Na zdalnym systemie podłączonym za pomocą RDC (nie na komputerze, który RDC jest inicjowany w celu połączenia z systemem zdalnym), otwórz okno wiersza polecenia jako administrator, a następnie uruchom polecenie w zależności od systemu operacyjnego Windows działającego w systemie zdalnym.

W systemie Windows XP:

tscon 0 / dest: console

W systemie Windows Vista, Windows 7, Windows 8, Windows 8.1, Windows 10 lub nowszy:

tscon 1 / dest: console

W systemie Windows Server:

tscon% sessionname% / dest: console

Brak blokowania konsoli lokalnej podczas korzystania z połączenia pulpitu zdalnego

Pete Whitfield
źródło
2

Spójrz na zdalną pomoc. Zasadniczo wykorzystuje tę samą technologię zdalnego pulpitu pod maską.

Wchodzisz do obszaru pomocy i wsparcia i tworzysz prośbę o zdalną pomoc, którą możesz wysłać jednocześnie do osoby, której chcesz zdalnie sterować.

Ewentualnie możesz użyć Logmein.com i zainstalować LogmeinFree, który umożliwia zdalne sterowanie komputerem użytkownika w tym samym czasie, w którym oni go używają.


źródło
4
Pomoc zdalna wymaga odnowienia biletu, nie?
yossis
2

uruchom cmd na komputerze zdalnym, a następnie uruchom to polecenie query session, zobaczysz coś takiego

 SESSIONNAME       USERNAME                 ID  STATE   TYPE        DEVICE
 services                                    0  Disc
>console           SIRS                      1  Active
 rdp-tcp                                 65537  Listen

następnie uruchom to polecenie, tscon x /dest:consolegdzie x jest aktywnym identyfikatorem sesji, co 1w moim przypadku.

SIRS
źródło
1

Alternatywnie możesz użyć Gbridge: „Gbridge to bezpłatne oprogramowanie, które pozwala zdalnie kontrolować komputery, synchronizować foldery, udostępniać pliki i czatować bezpiecznie i łatwo. Rozszerzenie usługi GTalk Google, Gbridge automatycznie tworzy współpracującą, szyfrowaną sieć VPN (Virtual Sieć prywatna), która łączy twoje komputery i komputery twoich przyjaciół bezpośrednio i bezpiecznie. Gbridge ma wiele unikalnych funkcji. ” http://www.gbridge.com/

Nicu Zecheru
źródło
1

Nie można tego zrobić z samym RDC, musisz użyć narzędzia innej firmy, takiego jak TeamViewer . Z technicznego punktu widzenia możesz skorzystać z pomocy zdalnej, ale gdy skończy Ci się prośba, nic nie możesz zrobić.

John T.
źródło
TeamViewer wygląda jak fajna aplikacja, ale właśnie ją przetestowałem i nie jest całkowicie darmowy i znacznie wolniejszy niż zdalny pulpit (nawet jeśli jest używany w sieci LAN)
yossis
1

Szczerze mówiąc, po prostu używałbym RealVNC, uważam, że jest to najlepsze dostępne narzędzie do zdalnego pulpitu. Jest bardzo szybki, nie ma żadnych opóźnień dzięki UltraVNC. RealVNC jest również doskonały do ​​zdalnego przesyłania danych z komputera spoza domu.

Mike K.
źródło
2
Chociaż bardzo chciałbym polecić RealVNC (lub jakikolwiek inny VNC w tym zakresie), nie mogę (pomimo tego, że byłem bardzo wczesnym użytkownikiem). Połączenia RD są znacznie bardziej responsywne, szczególnie w przypadku łączy o ograniczonej przepustowości.
Brian Knoblauch,
To też było moje doświadczenie. Pulpit zdalny jest znacznie szybszy, a ja jeszcze nie znalazłem innych alternatyw (pod względem wydajności)
yossis
1

Wspomniany w innej odpowiedzi, ale LogMeIn.com ma darmową wersję i pozwala udostępnić połączenie lokalnemu użytkownikowi lub opróżnić ekran. Przekonałem się, że czas reakcji jest dość przyzwoity w przypadku wolniejszych połączeń, ale jakość grafiki spada wraz ze spadkiem prędkości.

techturtle
źródło
0

Aby rozwiązać podobne zadanie, w którym musieliśmy zapobiec blokadzie ekranu dla zadania zaplanowanego, napisałem plik wsadowy, który wygląda następująco:

for /f "tokens=3-4" %%a in ('query session %username%') do @if "%%b"=="Active" set RDP_SESSION=%%a
tscon %RDP_SESSION% /dest:console

Wymaga to również Admin Rightswykonania, ale jest całkiem przydatny jako skrót na pulpicie użytkownika.

Smartis
źródło