derwowusste
Goto Top

Verwenden von Shadowing für Windows-Benutzerunterstützung und Fernsteuerung

Update 07.05.2024 Auf Win11 ist evtl. das Deaktivieren der GPO https://admx.help/?Category=Windows_10_2016&Policy=Microsoft.Policie ... von Nöten, sonst ist das geshadowte Bild schwarz!

Dieser Beitrag richtet sich an Admins, die in einem Windows-Netzwerk Endbenutzer-Support leisten und dazu Fernsteuerungssoftware brauchen. Die gezeigte Methode ist meiner Meinung nach einzigartig: in Windows eingebaut, sicher, einfach einzurichten und kein Internetzugang erforderlich.

Warum sollte man es gerade so verwenden wollen?

Ich liste auf, welche anderen Methoden es gibt und warum ich diese nicht empfehlen würde.

Software von Drittanbietern kostet in der Regel Geld. Sogar kostenlose Fernsteuerungssoftware wie UltraVNC hat einige Herausforderungen: Wie deployen und pflegen, wie prüfen wir die Sicherheit, was tun, wenn das Projekt plötzlich eingestellt wird?

Schauen wir uns nun die in Windows 10 integrierten Funktionen an. Seit Ewigkeiten bietet Microsoft das Tool msra.exe (Microsoft Remote Assistance) an, mit dem man einen Helfer einladen und seine Sitzung mit einem Code authentifizieren kann. Lange Zeit hatte ich dieses Tool verwendet und einen Weg gefunden, es zu automatisieren, so dass Benutzer sich nicht mit Codes befassen mussten, sondern einfach auf eine Verknüpfung "um Hilfe bitten" klickten und ich klickte dann auf "Hilfe starten", und los ging’s.

Kürzlich habe ich msra.exe aufgegeben, denn msra.exe hat in den aktuellen Windows 10-Versionen ein komisches Verhalten gezeigt: Auf Computern ohne Internetzugang würde es 45 Sekunden warten, bevor es gestartet wird. Alle Versuche, dies zu ergründen, waren erfolglos und vermeintliche Lösungen waren nicht zuverlässig.

Daraufhin habe ich mir “Quick Assist” angesehen, ebenso eingebaut. Dafür ist leider ein Internetzugang erforderlich, sodass wir QA in unserem gesicherten Netzwerk auf keinem Computer verwenden können. Darüber hinaus funktioniert es nur, wenn man es mit einem Microsoft-Konto startet. Kein Microsoft-Konto, kein Quick Assist, sorry.

Als verbleibende Option blieb Shadowing. Shadowing ist wie msra.exe auf den Remotedesktopdienst des Clients angewiesen. Während aber die standardmäßige Verwendung des Remotedesktopclients eine eigene Sitzung auf dem Remoteclient erstellt, bietet Shadowing die Verwendung und Anzeige einer vorhandenen Sitzung an.

  • Es ermöglicht mir, alle Monitore der entfernten Maschine anzuzeigen und diese bei Bedarf zu skalieren.
  • Es ist schnell initiiert und der Benutzer muss nicht einmal wissen, wie es zu initiieren ist - der Administrator tut dies.
  • Die Leistung ist zumindest im lokalen Netzwerk gut (wie bei RDP), da der Datenverkehr im LAN verbleibt und das eingebaute RDP verwendet wird
  • Da es sich um RDP handelt, wird der Datenverkehr verschlüsselt
  • Nur die Support-Benutzer, die Administrator auf dem Remote-System sind, dürfen es verwenden
  • Es werden keine Passwörter oder Zugangscodes benötigt
  • Es ermöglicht dem Administrator sogar, bei Bedarf mit UAC-Eingabeaufforderungen zu interagieren
  • Es benötigt keine Freigabe von Port 3389, jedoch zum Supporter hin einen offenen Port 445!

Wie funktioniert es im Detail? (getestet auf Windows 10 1903/1909)

Zum Shadowing ruft man mstsc.exe („Microsoft Terminal Services Client“) mit dem Parameter /shadow gefolgt von einer Sitzungsnummer auf. Dieser Befehl muss natürlich an einen Zielcomputer (Parameter /v) gerichtet werden und eine zu spiegelnde Sitzung benennen. Siehe dieses Beispiel:

mstsc.exe /v:PC1 /shadow:1 /control

Dieser Befehl zielt auf PC1 und spiegelt Sitzung 1. Der Parameter "/control" fragt den Zielbenutzer, ob wir seine Sitzung auch steuern können, also auch Maus und Tastatur zur Verfügung haben.
Dem Benutzer, dem wir helfen, wird ein Popup-Fenster mit einer Fernsteuerungsanforderung angezeigt, dem er zustimmen muss, bevor die Sitzung beginnt.

Funktioniert das sofort? Nein, wir müssen zuerst die Verwendung des Shadowings auf den Zielcomputern mithilfe dieser GPO-Einstellung konfigurieren: gpedit.msc -> Computerkonfiguration / Administrative Vorlagen / Windows-Komponenten / Remotedesktopdienste / Remotedesktopsitzungs-Host / Verbindungen und aktiviert die Richtlinie "Regeln für Remotesteuerung von Remotedesktopdienste-Benutzersitzungen festlegen".

adm_gpo

Bitte beachten: Es gibt auch einen Parameter /noconsentprompt, mit dem der Administrator die Benutzersitzung spiegeln kann, ohne dass der Benutzer seine Zustimmung erteilt. Vorsicht: Wer diesen Parameter verwenden möchte, muss auf jeden Fall sicherstellen, dass dies konform mit den Datenschutzbestimmungen Eures Unternehmens ist, da hiermit Benutzer ausspioniert werden können, ohne dass diese es merken. Microsoft hat sichergestellt, dass per default nur Administratoren Shadowing verwenden dürfen und dass der Remotecomputer vorkonfiguriert werden muss, um eine Verbindung ohne die Zustimmung des Benutzers zu ermöglichen. Seid erneut gewarnt: Benutzer müssen wissen, wie dies konfiguriert und verwendet wird, da Ihr sonst große Probleme bekommen könnt.

Nun zu der Sitzungsnummer (die in meinem Beispiel 1 war) - wie finden wir diese heraus, oder ist sie immer 1?

Nein, leider nicht. Sitzungsnummern können von jedem Benutzer in der Befehlszeile mit dem Befehl qwinsta aufgelistet werden. Sehen wir uns eine Standardausgabe von qwinsta an:

qwinsta

Hier hat der Benutzer "loser" also die Sitzungs-ID 2.

Können wir diese Sitzungs-ID von einem entfernten Standort aus abfragen? Ja!
Wenn Euer Support-Benutzer Zugriff auf den SMB-Port TCP 445 auf dem Remote-Computer hat, könnt Ihr diese Sitzungs-ID von Remote abfragen. Der Befehl wäre einfach:
qwinsta /server:PC1
und die Ausgabe würde genauso aussehen wie im Bild zuvor.

Es bleibt zuletzt zu klären: Wie verbinden wir uns, welcher Port wird von Shadowing verwendet, ist es der RDP-Port? Nein! Erstaunlicherweise muss Port 3389 nicht einmal auf dem Ziel-PC geöffnet sein, damit dies funktioniert. Der Remotedesktopdienst muss jedoch ausgeführt werden, aber der Port ist nicht 3389. Stattdessen handelt es sich um einen zufällig gewählten Highport. Glücklicherweise hat Microsoft eine Firewall-Regel für das Shadowing vordefiniert, die wir mithilfe von Gruppenrichtlinienobjekten bereitstellen müssen:

adm_firewall

Für den Fall, dass Euer Support-Benutzerkonto auf den Remotecomputern Admin ist und Zugriff auf den Port TCP 445 (smb-Filesharing-Port) auf allen Remotezielen hat, ist es sehr einfach: es sind nur zwei Zeilen Batchcode (nennen wir Folgendes shadow_v1.bat):

set /p target=Name des Ziels?
for /f "tokens=3" %%a in ('qwinsta /server:%target% ^| findstr /i console') do mstsc /v:%target% /shadow: %%a /control  

Startet man die Batch, wird man nach dem Namen des Zielcomputers gefragt. Anschließend wird sofort eine Spiegelung der Konsolensitzung eingeleitet.

connecting

Der Benutzer an der Remote-Maschine muss seine Zustimmung geben,

ask_for_consent

und das war‘s schon, Ihr könnt ihm helfen

controlling

Eigentlich wäre ich hier fertig...
Aber angenommen, weder Ihr, noch die Person, die Ihr unterstützen möchtet, kennt den Remote-Computernamen oder seinen eigenen Usernamen nicht (soll's geben). Was tun?

Meiner Meinung nach sollte dies gelöst werden, indem der entfernte Benutzer auf eine Batch klickt, die den Computernamen und seine Sitzungsnummer ausliest und in eine Datei help.txt schreibt (ich nenne Folgendes helpme.bat):
for /f "tokens=3" %%a in ('qwinsta ^| findstr %username%') do echo %%a %computername%>\\server\share\help.txt  

Nun würde der Supporter diese Datei wie folgt verwenden (ich werde Folgendes shadow_v2.bat nennen):
for /f "tokens=1,2" %%a in (\\server\share\help.txt) do mstsc /v:%%b /shadow:%%a /control  

Fertig!

Zusammengefasst was vorzubereiten ist:

1 Erstellt eine GPO, die das Shadowing mit Zustimmung des Nutzers erlaubt, und deployt es für die Clients
2 Erstellt eine Firewall-Regel, die die Shadowing-Ports mindestens für den Bereich der Computer öffnet, die Ihre Unterstützer verwenden, und deployt sie (evtl. in der selben GPO)
3 Abhängig davon, ob Remotecomputername und Nutzername bekannt sind, oder nicht, verwendet der Supporter shadow_v1.bat oder shadow_v2.bat. Da shadow_v2.bat auf einer Datei basiert, die von den Benutzern erstellt wurde, die helpme.bat ausführen, muss man helpme.bat auf deren Desktops deployen (per group policy preferences), oder vorzugsweise eine Verknüpfung zu dieser Batch, gepaart mit einem gut aussehenden Icon. Es muss eine Freigabe bereitstehen, auf die alle Nutzer mittels helpme.bat schreiben können
[4 Wer zunächst Port 445 auf den Clients öffnen muss, kann diesen Port natürlich auch mit einer benutzerdefinierten Firewall-Regel öffnen. Stellt sicher, dass er nur in Richtung der unterstützenden Maschinen geöffnet wird.]

Edit 15.07.2022
Noch eine Verschönerung: Nutzer möchten vielleicht gerne eine Bestätigung haben, dass das Shadowing beendet wurde. Dazu verteilt man einen geplanten Task an die Clients wie folgt:
Ausführender Nutzer: System
Trigger: 2 Stück, beide eventbasiert: Log:Microsoft-Windows-TerminalServices-RemoteConnectionManager, Quelle: TerminalServices-RemoteConnectionManager, EventIDs 20504 und 20507
Auszuführende Aktion: powershell.exe Notify_Shadowing_ended.ps1
Dieses Skript enthält dann eine kurze Abfrage:
$event = Get-WinEvent -LogName Microsoft-Windows-TerminalServices-RemoteConnectionManager/Operational | select -first 1
# Convert to XML
[xml[]]$xml = $event.ToXML()
# Pull Param1 und Param3
$gucker = $xml.Event.UserData.EventXML.Param1
$beguckter = $xml.Event.UserData.EventXML.Param3
$domaingucker, $namegucker = $gucker.split("\")  
$domainbeguckter, $namebeguckter = $beguckter.split("\")  
msg /time:10 $namebeguckter $namegucker hat sein Shadowing beendet
-
Denjenigen, denen die Sicherheit wirklich am Herzen liegt, ist möglicherweise klar, dass für diese Konstruktion unser Support-Benutzer auf ALLEN Remote-Computern, die er möglicherweise unterstützen muss, Administrator sein muss. Wenn man das will und schon vor sich hat, kann man hier aufhören zu lesen.

Wer nicht nicht möchte, dass Supporter Administratorrechte nur für die Fernsteuerung benötigen, sollte sich meine alte Anleitung zu Remote Assistance (msra.exe, funktioniert ohne Administratorrechte, hat aber meiner Ansicht nach Probleme ohne Internetzugang) ansehen. Einrichtung einer Fernwartung mit Bordmitteln unter Vista

Oder aber, Ihr geht noch einen Schritt weiter und macht es wie ich in unserem Netzwerk:

  • Auf der Remote-Seite haben wir einen Administrator pro Computer erstellt, also adminpc1, adminpc2, ...
  • Auf dem unterstützenden Ende verwenden wir eine Batch, die dieses dedizierte Konto nur für die Zeit aktiviert, während shadowing stattfindet, und ein zufälliges Kennwort festlegt.

Wofür ist das gut? Es ermöglicht Supportpersonal, ihr schwaches tägliches Konto zum Initiieren des Shadowings zu verwenden, wodurch dieses Supporterkonto als Ziel für Angreifer weniger attraktiv wird (bzw. der Angreifer müsste schon komplett in dieses Konstrukt eingeweiht sein).

Klingt gut? Details folgen:
Nennen wir Folgendes shadow_v3.bat:
for /f "tokens=1,2" %%a in (\\server\share\help.txt) do set target=%%b  
for /f %%a in ('powershell \\server\share\generaterandompassword') do net user admin%target% %%a /domain /active /workstations:%computername%,%target% & cmdkey /add:%target% /user:yourdomain\admin%target% /pass:%%a  
for /f "tokens=1,2" %%a in (\\server\share\help.txt) do mstsc /v:%%b /shadow:%%a /control  
net user admin%target% /domain /active:no
cmdkey /delete:%target%

Details zu diesem Konzept für eine sichere Benutzerunterstützung findet Ihr in meinem Artikel unter Sicherer Umgang mit Supportkonten Dort findet sich auch Skript "generaterandompassword.ps1", das in der zweiten Zeile dieser neuesten Datei "shadow_v3.bat" benutzt wird.

Update Juni 23: Es git eine Inkompatibilität mit remote credential Guard, wenn man Shadowing innerhalb von Terminalservern nutzen möchte:
Verwenden von Shadowing für Windows-Benutzerunterstützung und Fernsteuerung

Content-ID: 500133

Url: https://administrator.de/contentid/500133

Ausgedruckt am: 21.11.2024 um 10:11 Uhr

spec1re
spec1re 01.10.2019 um 17:44:12 Uhr
Goto Top
Super ausführliche Anleitung!

Hier noch ein Script, womit nur den Rechnername/IP eingibt und sich dann die Session-ID aussuchen kann, mit der man sich verbinden will.

rdp-shadow.cmd
@echo off

title Remotesupport

rem Konfiguration

 set /p termserver=Remotedesktopserver: 

rem Session IDs auslesen

 echo.
 query session /server:%termserver%

rem Abfragen mit welcher Sitzung man sich verbinden moechte

 echo.
 set /p session-id=Session-ID oder q fuer Beenden eingeben und ENTER druecken: 
 
 if %session-id%==q exit
 
rem Remotedesktopverbindung aufbauen

 start mstsc /v:%termserver% /shadow:%session-id% /control 

Gruß Spec.
DerWoWusste
DerWoWusste 01.10.2019 um 18:04:58 Uhr
Goto Top
Ja danke, aber das macht mein Skript doch bereits.
spec1re
spec1re 01.10.2019 um 19:19:00 Uhr
Goto Top
Zitat von @DerWoWusste:

Ja danke, aber das macht mein Skript doch bereits.
Richtig, war nur als Alternative gedacht.
sabines
sabines 02.10.2019 um 07:05:29 Uhr
Goto Top
Danke, super Idee!
Kraemer
Kraemer 02.10.2019 um 08:13:38 Uhr
Goto Top
Mega!

Danke.

Gruß
dodo30
dodo30 02.10.2019 um 21:32:19 Uhr
Goto Top
Hi

super Anleitung, habe auch wieder was neues dazu gelernt :D

aber, warum ist das besser als msra.exe bzw. was für "mucken" bereitet msra.exe denn ?

Viele Grüße
Dodo
DerWoWusste
DerWoWusste 02.10.2019 um 21:36:44 Uhr
Goto Top
Steht oben: 45s Verzögerung ohne Internet.
Sylvia
Sylvia 06.10.2019 um 09:34:16 Uhr
Goto Top
Absolut herrausragend! vielen Dank für die super Anleitung - werden wir auf jeden Fall anschauen und ich habe das Gefühl, dass wir das auch umsetzen!
Das hilft doch gleich meine momentanen Bauchschmerzen zu lindern face-wink
Liebe Grüße
Sylvia
beidermachtvongreyscull
beidermachtvongreyscull 06.10.2019 um 20:18:12 Uhr
Goto Top
Danke für die Beschreibung.

Ich mach das anstelle von Scripten mit Lazy_TS.
https://gallery.technet.microsoft.com/LazyTS-d426e01d
DerWoWusste
DerWoWusste 06.10.2019 aktualisiert um 21:39:50 Uhr
Goto Top
Ja, Shadowing macht LazyTS auch. Aber wozu der Aufwand, wenn es ohne geht mit 2 Zeilen Batch?
spec1re
spec1re 07.10.2019 um 09:52:45 Uhr
Goto Top
@beidermachtvongreyscull

Danke, kannte ich noch nicht.

@DerWoWusste

Windows Admins lieben GUI Apps. :D
hushpuppies
hushpuppies 07.10.2019 um 11:53:48 Uhr
Goto Top
Super Anleitung - Danke schön!

Wir haben zwar überall Teamviewer am Start, aber ich probiere das auf jeden Fall aus.
Wäre schön eine kostenlose Alternative zu haben face-smile
sabines
sabines 10.10.2019 aktualisiert um 12:26:42 Uhr
Goto Top
Moin,

das funktioniert prima unter W10, auf den W7 Clients bekomme ich das leider nicht zum Laufen und bekomme einen Zugriffsfehler.
Hat das jemand unter W7 zum Laufen gebracht?

Genaue FM muss ich nachliefern.

Gruss
DerWoWusste
DerWoWusste 10.10.2019 um 13:01:10 Uhr
Goto Top
Kann ich bestätigen.

Auf Win7 (hier: vm mit 32 Bit) kommt
Shadow Error
The version of Windows running on this server does not support user shadowing.

Kann ich mal googlen bei Zeiten.
DerWoWusste
DerWoWusste 10.10.2019 aktualisiert um 13:23:40 Uhr
Goto Top
Man muss dort wohl die shadow.exe zur Verbindung nutzen. Ich konnte eben von win7 einen 2008R2-Server damit shadowen, auf den ich anderweitig nicht raufkam. Die shadow.exe gibt es jedoch nicht unter Win10.

Edit: und andersrum geht es auch.
sabines
sabines 10.10.2019 um 13:21:52 Uhr
Goto Top
Ok, teste ich mal.
sabines
sabines 10.10.2019 um 13:22:59 Uhr
Goto Top
Scheint mit/ab RDP 8.0 nicht mehr zu funktionieren:
https://support.microsoft.com/en-us/help/2592687/remote-desktop-protocol ...

"The Shadow command cannot be used to remotely monitor another user's remote connection.

Issue
Windows 7 SP1 supports the Shadow command (Remote Control). This command can be used by an administrator to view or control an active session of another user. After RDP 8.0 is enabled on a computer that's running Windows 7 SP1, an administrator user cannot use the Shadow command to view or control another user's session.

Resolution
Administrators can use Remote Assistance or another product that provides similar capability to view or control another user's session."
DerWoWusste
DerWoWusste 10.10.2019 um 13:29:06 Uhr
Goto Top
Wie gesagt, hier geht es. Zumindest auf Win7 habe ich es geprüft: der genannte Hotfix ist drauf, geht trotzdem.
sabines
sabines 10.10.2019 aktualisiert um 13:42:34 Uhr
Goto Top
Ja, ich meine doch mstsc geht nicht, shadow ja, wobei da momentan "Sitzungs ID nicht gefunden" kommt.
DerWoWusste
DerWoWusste 10.10.2019 um 13:47:57 Uhr
Goto Top
Versuch es bitte mal ohne ID.
sabines
sabines 10.10.2019 aktualisiert um 13:55:42 Uhr
Goto Top
Ohne ID kommt ungültiger Parameter
Hatte ich auch schon: mit Sitzungsname kommt: Sitzung console nicht gefunden.
Wie ist denn Deine Syntax?
Anders als shadow 1 /server:test ?
DerWoWusste
DerWoWusste 10.10.2019 aktualisiert um 13:59:48 Uhr
Goto Top
Nee, genau diese Syntax.

Es war eben sehr witzg: mein Test war 2008R2->Win7 - selber Fehler wie bei Dir, "Sitzungs ID nicht gefunden"
Daraufhin 2. Test: Win7->2008R2 - geht.
Dann wieder 2008R2->win7 probiert und es läuft plötzlich.
sabines
sabines 10.10.2019 aktualisiert um 14:01:52 Uhr
Goto Top
Och Menno
Ich warte morgen ab, vielleicht geht's dann face-wink
hushpuppies
hushpuppies 10.10.2019 aktualisiert um 19:59:21 Uhr
Goto Top
Update von mir:
Klappt sehr gut - eine tolle Sache gerade bei Terminalserver-Umgebungen - die Möglichkeit direkt in eine beliebige Nutzer-Session reinzukommen ist echt nützlich und sucht man bei den meisten Fernwartungsprogrammen vergeblich.

Ich habe mir selber eine kleine Batch-Datei gebastelt:
@echo off
Echo Ziel-Computer?
set /p target=Name des Ziels ?:%=%
Echo Sessions werden abgefragt...
qwinsta /server:%target%
Pause
Echo Session auswählen...
set /p session=ID der Session des Ziels ?:%=%
mstsc.exe /v:%target% /shadow:%session% /control /noconsentprompt

Ich hatte auch keine Probleme von Win7, Win8, Win10 (inkl. aktuellster Insider-Version) auf 2008R2 und 2016.

Danke nochmal für die gute Anleitung und der kreativen Idee!
Snowman25
Snowman25 16.10.2019 um 18:27:17 Uhr
Goto Top
Hallo @DerWoWusste,

Hab das heute bei uns ausprobiert und funktioniert super. Danke für den Tipp!

Kleine Anmerkung aber: Du hast zu viele Leerzeichen in shadow_v1.bat. Und was du mit dem Ende von Zeile 1 angestellt hast, ist mir auch ein Rätsel.
Hier ist die Variante, die ich nun nutze:
@ECHO off
SET /p target=Name des Ziels?  
FOR /f "tokens=3" %%a in ('qwinsta /server:%target% ^| findstr /i console') do mstsc /v:%target% /shadow: %%a /control  

Schönen Gruß,
@Snowman25
Syosse
Syosse 08.11.2019 um 14:03:24 Uhr
Goto Top
Vielen Dank für die Tolle Anleitung face-smile

Es funktioniert super, leider bring ich noch 1 Punkt nicht fertig.
Ich will gerne das es den Bildschirm füllt oder sogar den bildschirme teilt, bis jetzt ist das Remotefenster nur begrenzt sichtbar und nicht den ganzen BIldschirm gefüllt.

Ich habe folgende Befehle versucht:

mstsc.exe /v:10.10.1.98 /span /shadow:11 /control /noconsentprompt

oder

mstsc.exe /v:10.10.1.98 /w:1024 /h:768 /shadow:11 /control /noconsentprompt

Leider bleibt die Anzeige immernoch gleich.

Wo liegt den hier das Problem ?

Vielen Dank Gruss Syosse
DerWoWusste
DerWoWusste 08.11.2019 um 14:07:20 Uhr
Goto Top
Nachvollziehbar. Ich störe mich nicht daran und ziehe es einfach groß.
Syosse
Syosse 08.11.2019 aktualisiert um 14:24:51 Uhr
Goto Top
Habe es auch gross gezogen doch es bleibt immernoch oben und unten ein grosses Schwarzer Rand.

(Siehe Bild )

Trotzdem Vielen Dank face-smile

Gruss Syosse


Zitat von @DerWoWusste:

Nachvollziehbar. Ich störe mich nicht daran und ziehe es einfach groß.
remote
DerWoWusste
DerWoWusste 08.11.2019 aktualisiert um 14:54:21 Uhr
Goto Top
Man kann es auch in senkrechter Richtung ziehen. Wenn jedoch die Auflösung des Gegenübers weitaus kleiner ist, als Deine, dann muss ja zwangsläufig ein Rand bleiben, denn warum sollte Windows noch weiter hochskalieren als 100%?
Syosse
Syosse 08.11.2019 um 15:05:44 Uhr
Goto Top
Stimmt, war beim Kunden und der Bildschirm ist tatsächlich kleiner bzw die Auflösung.
Hatte es anders in Erinnerung.

Danke für deine Mühe.
Ich belass es so, arbeiten kann man ja damit.

Gruss Syosse

Zitat von @DerWoWusste:

Man kann es auch in senkrechter Richtung ziehen. Wenn jedoch die Auflösung des Gegenübers weitaus kleiner ist, als Deine, dann muss ja zwangsläufig ein Rand bleiben, denn warum sollte Windows noch weiter hochskalieren als 100%?
SPSman
SPSman 13.12.2019 aktualisiert um 10:22:36 Uhr
Goto Top
Shadow_V2.bat

Hallo,
habt ihr einen Tipp für Mich?
Problem meine Shares heißen all "01 share" "02 share" usw.
Die Ordner kann ich nicht umbenennen.

Ich habe schon probiert:
set LINK="G:\01 share\shadow\help.txt"  
echo %LINK%
pause
for /f "tokens=1,2" %%a in (%LINK%) do mstsc /v:%%b /shadow:%%a /control  
Leider kommt share\shadow ist ungültiger PC Name
DerWoWusste
DerWoWusste 13.12.2019 um 10:48:14 Uhr
Goto Top
Moin.

Geht
for /f "usebackq tokens=1,2" %%a in ("G:\01 share\shadow\help.txt") do mstsc /v:%%b /shadow:%%a /control  
?
SPSman
SPSman 13.12.2019 um 11:35:56 Uhr
Goto Top
Leider nicht dann nimmt er es als String und nicht als Datei -> selbes Ergebnis. (war auch meine erste Idee)
DerWoWusste
DerWoWusste 13.12.2019 um 11:51:35 Uhr
Goto Top
Hier funktioniert genau das. Nimm bitte noch mal copy-paste zur Hand und teste erneut damit.
SPSman
SPSman 13.12.2019 um 12:44:13 Uhr
Goto Top
Whatever It was. jetzt geht (C&P ;) ) Many Thanks und MC
dertowa
dertowa 17.01.2020 um 11:02:06 Uhr
Goto Top
Da ich schon lange die alte Lösung über MRA nutze, dachte ich im neuen Jahr machen wir mal etwas Neues.
Leiter erhalte ich auf meinem System (Win 1903.592) nur einen Spiegelungsfehler:
spiegelung

Benötige ich da andere Voraussetzungen als ein Windows 10 Pro? face-sad
DerWoWusste
DerWoWusste 17.01.2020 um 11:26:37 Uhr
Goto Top
Hi.

Das geht hier mit Pro 1909 18363.592
Zu dem Thema gehören ja immer Quelle und Ziel - hier haben beide das selbe OS.

Google mal deine Fehlermeldung, das wird sich schon finden.
DerWoWusste
DerWoWusste 17.01.2020 aktualisiert um 12:03:24 Uhr
Goto Top
Sehe gerade: hatten wir schon, liegt an Windows 7. Diskuss. und Lösung siehe Verwenden von Shadowing für Windows-Benutzerunterstützung und Fernsteuerung ff
->shadow.exe stattdessen verwenden.
dertowa
dertowa 17.01.2020 um 12:55:17 Uhr
Goto Top
Zitat von @DerWoWusste:
Sehe gerade: hatten wir schon, liegt an Windows 7.

Wie kann es an Windows 7 liegen, wenn Windows 10 Pro im Einsatz ist? ;)
Die Systeme wurden auch nie von 7 auf 10 aktualisiert, sind also wirkliche Win 1903 Pro.
DerWoWusste
DerWoWusste 17.01.2020 aktualisiert um 13:02:26 Uhr
Goto Top
Finde es heraus - normal ist das nicht, wenn an beiden Enden Win10 eingesetzt wird, da kannst Du dich mit zwei sauberen Systemen schnell von überzeugen.
dertowa
dertowa 17.01.2020 um 13:21:30 Uhr
Goto Top
Zitat von @DerWoWusste:

Finde es heraus

Werde ich wohl so machen müssen, war eben die Frage ob da noch irgendwelche Voraussetzungen fehlen,
oder hinsichtlich RDP noch irgendetwas zu beachten ist, also bspw. geht nicht wenn:
RDP-Host Sicherheit:
Benutzerauthentifizierung mit Authentifizierung auf Netzwerkebene ist für Remoteverbindungen erforderlich

Ansonsten bau ich mir da nächste Woche mal eine Testumgebung.
DerWoWusste
DerWoWusste 17.01.2020 um 13:23:22 Uhr
Goto Top
Keine weiteren Voraussetzungen.
dertowa
dertowa 20.01.2020 um 12:55:09 Uhr
Goto Top
Zitat von @DerWoWusste:

Keine weiteren Voraussetzungen.
Habe mich heute mal mit einem frischen Client befasst, GPO Zuweisung lediglich WSUS & die Support Richtlinie.
Damit ist eine Verbindung von diesem frischen System an ein bestehendes System möglich, andersrum aber nicht.
Faktisch gehe ich dann nun mal auf GPO-Suche, denn offensichtlich ist keine die das verhindern würde, zumindest
keine die mir nun ins Auge gesprungen wäre.

Melde mich, wenn ich weiß an welcher es hängt.

P.S.: Gegen die Monitorkompatibilität gibt es kein Heilmittel?
Also wenn ich mit 1 Display auf ein System mit 2 Displays verbinde packe ich die Lupe aus,
oder gibt es einen Schalter mit dem man lediglich Monitor 1 spiegeln kann?
DerWoWusste
DerWoWusste 20.01.2020 um 13:19:43 Uhr
Goto Top
Also wenn ich mit 1 Display auf ein System mit 2 Displays verbinde...
Supporter mit nur einem Monitor, das gibt es?
Nein, da gibt es keinen Schalter.

Wenn Du all das im Artikel Genannte gesetzt hast, geht das. Es gab hier noch keine Probleme, nirgendwo. Aber lass uns wissen, was Du findest.
DerWoWusste
DerWoWusste 28.03.2020 um 14:05:13 Uhr
Goto Top
Moin.

Ich musste etwas korrigieren, was mir beim Testen nicht aufgefallen war:
Port 445 am Remoterechner muss vom Supportrechner erreichbar sein, sonst geht es nicht.

Ich habe das Konzept in Coronazeiten nun erweitert und lasse die Kollegen hier gegenseitig auf Ihre Bildschirme schauen - da muss dann auch temporär 445 für die Zeit der Bildschirmfreigabe zugänglich gemacht werden. Da Nutzer natürlich keine Firewallregeln ändern dürfen, muss man mit Tricks arbeiten: ich verteile einen Task, der den Port per Skript öffnet und erlaube Nutzern, diesen Task zu triggern, indem sie per Skript ein bestimmtes Erieignis ins Eventlog schreiben. Ich kann auch das bei Interesse hier teilen.
dertowa
dertowa 01.04.2020 um 14:33:05 Uhr
Goto Top
Zitat von @DerWoWusste:
Port 445 am Remoterechner muss vom Supportrechner erreichbar sein, sonst geht es nicht.
ich verteile einen Task, der den Port per Skript öffnet und erlaube Nutzern, diesen Task zu triggern, indem sie per Skript ein bestimmtes Erieignis ins Eventlog schreiben. Ich kann auch das bei Interesse hier teilen.

Na das wird sicherlich mein Problem damit gewesen sein. ;)
Aber ich muss gestehen das Shadowing 2.0 ist bei mir etwas eingeschlafen, da 1.0 noch gut funktioniert (da Internet bei uns kein Problem darstellt), aber nun bin ich gewillt das noch mal zu testen *g*
Hinsichtlich des Tasks genauso gelöst wie bei Shadowing 1.0? Interesse am Nachbau besteht aber nun wieder, daher gern teilen. face-smile

Danke
DerWoWusste
DerWoWusste 01.04.2020 um 14:42:51 Uhr
Goto Top
Was für Namen führst Du hier ein, 1.0, 2.0?
Mein "erster" Artikel ist ja über Remote Assistance, nicht über Shadowing - meinst Du den mit "1.0"?

Hier steht ja alles drin, was man bezüglich der Einrichtung wissen muss. Kein Task erforderlich.
Für den Anwendungsfall "non-Admin1 will mit non-Admin2 Shadowing machen" arbeite ich mit Tasks, ja. Den meinst Du mit "2.0"?
null07
null07 13.05.2020 aktualisiert um 20:05:30 Uhr
Goto Top
Mal aus Nutzersicht gefragt.

Wenn ich die Zustimmung zur Remote-Unterstützung einmal erteilt habe, besteht später eine Chance zu erkennen, ob diese tatsächlich beendet wurde oder kann ich meine Zustimmung auch selbst zurückziehen?
DerWoWusste
DerWoWusste 13.05.2020 um 20:06:21 Uhr
Goto Top
Das ist eine sehr gute Frage!

Du kannst die Erlaubnis nicht zurückziehen. Jedoch kannst Du im Taskmanager sehen, ob Shadowing noch läuft. Wenn ja, läuft da noch der Prozess rdpsa.exe, den Du (wenn ich mich nicht täusche) im Taskmanager auch abschießen könntest, dann ist die Verbindung weg.
null07
null07 14.05.2020 aktualisiert um 21:01:20 Uhr
Goto Top
Danke für den Tipp. Ich habe das heute getestet.
rdpsa.exe und rdpsaproxy.exe lassen sich mit Nutzerrechten nicht schließen. Ein kurzes Trennen der Rdp Verbindung beendet das Shadowing. Es kann aber sein, dass dann immer noch rdpsa.exe im Taskmanager des Nutzers erscheint, weil der Admin erst noch auf OK klicken muss, bei der Meldung die er darüber erhält, dass die Verbindung getrennt wurde.
Ich habe jetzt noch gelesen, dass Ctrl+* (* auf dem Nummernblock) das Shadowing beenden sollen, aber das funktioniert bei mir nicht. Aber wenn rdpsa.exe im Taskmanager verschwindet, dann ist der Admin raus.
DerWoWusste
DerWoWusste 14.05.2020 aktualisiert um 21:15:48 Uhr
Goto Top
dpsa.exe und rdpsaproxy.exe lassen sich mit Nutzerrechten nicht schließen
Stimmt. Somit bleiben zwei Wege: entweder, der Nutzer meldet sich ab, oder er beginnt zu verstehen, dass er dem Admin eh trauen muss, denn der könnte, wenn er nur wollte, sich jederzeit wieder raufschalten, ohne überhaupt um Erlaubnis fragen zu müssen.

Vielleicht solltest Du Folgendes einrichten:
Eventgetriggerte Tasks. Die darf der Nutzer selbst einrichten, und sie würden ihn informieren (per "msg %username% Achtung, Shadowing beginnt"), sobald jemand drauf ist (Event 20503) oder sich verabschiedet (ID 20504). Im Log zu finden im Abschnitt "Application and services Logs - MIcrosoft - Windows..."
shadow
null07
null07 18.05.2020 um 17:10:02 Uhr
Goto Top
Vielen Dank für den ausgezeichneten Tipp. Das funktioniert einwandfrei. Eine Meldung für den Nutzer beim Beenden als vertrauensbildende Maßnahme und gut ist. Ergänzend noch der Hinweis, dass man ID 20504 und 20507 verwenden muss, um beide Varianten (nur Spiegeln bzw. Spiegeln und kontrollieren) abzufangen.
DerWoWusste
DerWoWusste 07.06.2020, aktualisiert am 08.06.2020 um 15:07:21 Uhr
Goto Top
@dertowa
Bezüglich "Die auf dem Server ausgeführte Windows-Version unterstützt das Spiegeln von Benutzern nicht" - ich habe das nun untersucht.

In meinen Tests hatte ich leere Systeme mit 1803 verwendet - ging.
Dann hatte ich diese auf 1903 aktualisiert - ging. Dann auf 1909 - ging noch immer.
Niemals jedoch hatte ich 1909 frisch installiert und es getestet - da kommt nämlich ""dein" Fehler. Bei 2004 übrigens ebenso.
Microsoft mal wieder... ich werde deren Support mal fragen müssen.
dertowa
dertowa 08.06.2020 um 09:39:03 Uhr
Goto Top
Gott sei dank, ich bin doch nicht zu blöd dazu. :D

Btw. ich hatte aber glaube ich mit frisch installierten 1903ern getestet,
da sich die Kollegen mit dem Enter drücken in der Explorersuche bislang noch nicht anfreunden konnten.
--> müsste sich aber identisch zu 1909 verhalten?
DerWoWusste
DerWoWusste 08.06.2020 um 15:08:21 Uhr
Goto Top
So, Problem gefunden. Skripte waren im Hintergrund aktiv, die noch nicht für Version 1909/2004 aktualisiert worden waren. Bei upgegradeten Maschinen waren die schon (einmalig) gelaufen, deshalb gab es das Problem dort nicht.
@dertowa: Prüfe auf den Maschinen, die den Fehler "Die auf dem Server ausgeführte Windows-Version unterstützt das Spiegeln von Benutzern nicht" nach, ob der Terminaldienst läuft.
dertowa
dertowa 09.06.2020 um 11:40:00 Uhr
Goto Top
Der Terminaldienst heißt wie in der Dienstübersicht?
Es gibt weder etwas mit "Terminal", "Microsoft Terminal" noch "Windows Terminal".

Meinst du die "Remotedesktopdienste"?

Muss ich prüfen, per Default steht der ja auf "Manuell".
DerWoWusste
DerWoWusste 09.06.2020 um 11:43:34 Uhr
Goto Top
Die meine ich - die müssen laufen, selbst wenn auf manuell gestellt.
Sirigu02
Sirigu02 22.02.2021 um 16:55:05 Uhr
Goto Top
Das ganze klappt ganz gut soweit.

Nur Copy/Taste von Dateien oder Links funktioniert zwischen Support-Client und Client zumindest bei mir nicht.
So etwas wäre immer ganz hilfreich.
Gibt es dafür eine Lösung?
DerWoWusste
DerWoWusste 22.02.2021 um 17:21:11 Uhr
Goto Top
Hi Sirigu02.

Das stimmt, schön wäre es. Ist aber nicht vorgesehen beim Shadowing.
Aber dafür hat man Serververzeichnisse.
Sirigu02
Sirigu02 24.02.2021 aktualisiert um 13:47:01 Uhr
Goto Top
Hallo zusammen,

Jetzt habe ich doch noch ein Problem entdeckt.

Bei manchen Clients im Netzwerk funktioniert die Shadow-Verbindung echt super.

Bei einigen kommt aber leider die Verbindung nicht zustande.
Ich geb ganz normal den PC Namen/IP ein wähle die Session aus, der Benutzer bestätigt dann auch die Meldung das er die Hilfe akzeptiert aber es passiert dann nichts. Es geht kein Remote-Fenster auf.
Wenn ich das ganze dann nochmal beim gleichen Client probiere dann kommt das schon eine Remoteverbindung besteht.

Weiß jemand woran das liegen könnte?
DerWoWusste
DerWoWusste 24.02.2021 um 14:50:04 Uhr
Goto Top
Ich nutze das täglich mehrfach und zu ca. 50 Clients - habe das noch nie gehabt.
Spontan geraten: Du hast eine lokale Firewall, die nach Lust und Laune dazwischenfunkt.
Sirigu02
Sirigu02 24.02.2021 um 15:23:58 Uhr
Goto Top
Kannst du mir vllt sagen wie deine GPO zu den lokalen Firewalls dabei aussieht?
DerWoWusste
DerWoWusste 24.02.2021 aktualisiert um 16:24:44 Uhr
Goto Top
Ja, wie sie ist steht doch im Beitrag. Nimm eine unkonfigurierte Windows-Firewall, setze die oben abgebildeten GPOs - fertig.
Rainbow68
Rainbow68 12.06.2021 um 07:56:55 Uhr
Goto Top
Hallo zusammen,

erst einmal vielen Dank für die tolle Anleitung.
Wir wollen Shadowing für die Kontrolle eines unbesetzten PCs verwenden.
Da hängt ein Display dran das z.B. den Status der Fotovoltaikanlage oder aktuelle Infos für Mitarbeiter und Besucher anzeigt.
Mit "mstc.exe /v:PC1 /Shadow:2 /control" funktioniert alles bestens. Wenn man am Zielrechner bestätigt, wird die Sitzung hergestellt.
In diesem Fall bräuchte ich allerdings den Parameter /noConsentPrompt. Wenn ich den benutze, wird nur ein Fenster "Syntax für Remotedesktopverbindung" geöffnet. Du hast geschrieben, dass der Remotecomputer vorkonfiguriert werden muss. Was genau wäre denn da zu machen?

Dank & Gruß
DerWoWusste
DerWoWusste 12.06.2021 um 10:05:53 Uhr
Goto Top
Hi.

Steht in der Anleitung, gleich der erste Screenshot. Dort kannst du festlegen, dass noconsentprompt erlaubt ist.
Rainbow68
Rainbow68 14.06.2021 um 10:17:43 Uhr
Goto Top
Hallo,

ich habe dort "Vollzugriff ohne Erlaubnis des Benutzers" ausgewählt.
Nach einem erneuten Neustart des Zielrechners hat es jetzt aber funktioniert.

Danke nochmals
FunWithFlags
FunWithFlags 13.05.2022 um 11:35:32 Uhr
Goto Top
Der Beitrag ist schon bisschen älter aber vielleicht werde ich hier fündig. Gibt es eine Möglichkeit per Registry oder GPO den Shadow Modus mit unterschiedlichen Nutzern auf den jeweiligen PCs zu verwenden. Bin ich auf einem Rechner als "Admin" User und auf dem anderen als "Administrator" angemeldet dann kommt immer die Fehlermeldung "Access denied". Sobald ich beide als Administator anmelde dann funktioniert die Verbindung.
Beide User sind in der Administratoren Gruppe. Da es PCs unserer Maschinen sind, wird das WIN als Image verteilt so, dass alle PCs gleich konfiguriert werden. Suche jetzt schon seit geraumer Zeit nach einer Lösung. Alles was ich dazu gefunden habe, ist ein Hinweis dass es Probleme mit unterschiedlichen Username geben kann.

GPO für das shadowing ist so eingestellt damit keine Bestätigung oder Passwort benötigt wird. Wir rufen vom Host nur einen Layout Editor auf.
DerWoWusste
DerWoWusste 13.05.2022 um 11:40:24 Uhr
Goto Top
Der Nutzer, der guckt, muss nicht der selbe sein wie der, den er beguckt, das ist doch klar.
Die Anleitung funktioniert nach wie vor und ist für Domänenkonten gedacht - hast Du das vor dir, eine Domäne?
FunWithFlags
FunWithFlags 13.05.2022 um 11:56:42 Uhr
Goto Top
Zitat von @DerWoWusste:

Der Nutzer der guckt muss nicht der selbe sein wie der, den er geguckt, das ist doch klar.
Die Anleitung funktioniert nach wie vor und ist für Domänenkonten gedacht - hast Du das vor dir, eine Domäne?

Nein. Die Rechner arbeiten außerhalb einer Domäne und nur mit lokalen User/Gruppen
DerWoWusste
DerWoWusste 13.05.2022 um 12:31:35 Uhr
Goto Top
Wie beschrieben: der Nutzer, der schaut, muss Admin auf dem Zielsystem sein. "Admin" gibt es auf dem Zielsystem vermutlich nicht in der Administratorengruppe.
Ringi1970
Ringi1970 29.06.2022 um 12:13:48 Uhr
Goto Top
Danke für die tolle Beschreibung. Klappt super (auch mit dem Script) bis auf 2-3 Ausnahmen.
Gleiche Domäne, PCs gleiche OU (ergo gleiche GPOs - keine Ausnahme für die GPOs hinterlegt) usw.
Nur bei den 2-3 Rechnern bekommt der User die Anfrage zum bestätigen oder ablehnen der Verbindung. Klicken diese auf "Ja" geht an meinem PC einfach das Fenster zu und das war es.

Jemand eine Idee an was das liegen könnte?
DerWoWusste
DerWoWusste 15.07.2022 um 15:52:08 Uhr
Goto Top
Hallo @Ringi1970.

Nein, das kenne ich leider nicht. Wenn es hier mal abstürzt, dann meistens dann, wenn der Beguckte ständig Fenster maximiert und minimiert und die Einblendeffekte aktiv sind, aber das ist ganz selten (jedes 100. Mal vielleicht).
--

an alle anderen: ich habe den Beitrag editiert und ein Skript hinzugefügt, was ausliest, wer wen geshadowed hat, und dem Beguckten zum Ende der Sitzung noch ein Bestätigungspopup einblendet, dass der andere das Shadowing auch wirklich beendet hat.
Ringi1970
Ringi1970 26.07.2022 um 08:29:33 Uhr
Goto Top
Hallo @DerWoWusste,

danke Dir für die Info. Echt ein seltsames Verhalten was da stattfindet.
Wenn wenigstens bei mir oder dem User irgendwo ne Fehlermeldung stehen würde, aber nichts. Nicht mal im Ereignisprotokoll.

Das neue Script ist auch Top! Danke.
Ringi1970
Ringi1970 08.03.2023 aktualisiert um 14:02:12 Uhr
Goto Top
Hallo @DerWoWusste,

ich hätte noch eine Frage zu Deinem (super funktionierenden) Skript.
Gibt es die Möglichkeit bei PCs mit zwei Bildschirmen dies auf ein "normales" RPD Fenster zu reduzieren. Es werden ja so beide angezeigt und auf die breite von einem Bildschirm auf dem Host "geschrumpft". Das ist dann teilweise etwas sehr unleserlich, je nachdem was für eine Fehlermeldung erscheint.
DerWoWusste
DerWoWusste 08.03.2023 um 14:05:03 Uhr
Goto Top
Moin Ringi.

Nein, gibt es nicht. Bei RDP richtet sich das Fenster nach den "Wünschen" des Schauenden; beim Shadowing nach den Gegebenheiten des "Beschauten".

Wenn Du als Schauender nicht zwei Monitore hast mit gleich großer oder (empfehlenswert) höherer Auflösung als der Beschaute, dann solltest Du den bitten, per Windowstaste+P für die Shadowingsitzung auf ein-Monitor-Betrieb zu schalten.
DerWoWusste
DerWoWusste 30.06.2023 um 16:46:25 Uhr
Goto Top
Ich hatte heute zum ersten Mal Ärger mit dem Shadowing.
Und zwar stellten wir auf einem 2016er Terminalserver fest, dass man zwar von außen auf andere Sitzungen rauf kam, jedoch nicht von innen; sprich: Nutzer A auf dem TS konnte die Sitzung von Nutzer B auf dem TS nicht shadowen - stattdessen ging das Fenster sofort nachdem der Beguckte seine Einwilligung gegeben hatte wieder zu ohne weitere Fehlermeldung oder Eventlogeintrag.

Ursache: auf dem TS war Remote credential guard aktiv. Erkennbar am Vorhandensein des Registrywertes
RestrictedRemoteAdministration (RegDWord) mit dem Wert 1 unter HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\CredentialsDelegation
Erklärung: Microsoft benutzt seine eigenen Sicherheitsfeatures bekanntlich nicht und so kommt es, dass das Shadowing verwirrt ohne Fehlermeldung aussteigt.
gedisster
gedisster 15.01.2024 um 16:49:17 Uhr
Goto Top
Zitat von @DerWoWusste:

Moin Ringi.

Nein, gibt es nicht. Bei RDP richtet sich das Fenster nach den "Wünschen" des Schauenden; beim Shadowing nach den Gegebenheiten des "Beschauten".

Wenn Du als Schauender nicht zwei Monitore hast mit gleich großer oder (empfehlenswert) höherer Auflösung als der Beschaute, dann solltest Du den bitten, per Windowstaste+P für die Shadowingsitzung auf ein-Monitor-Betrieb zu schalten.

Hmm, weil ich auch gerade darüber gestolpert bin, wenn man mit der rechten Maustaste in das Titelfeld des mstsc Fensters, das wo die Remotedisplays angezeigt werden, klickt dann gibt es dort einen Punkt: "Intelligente Grössenänderung" und wenn man dort den Haken weg nimmt bekommt man ein nicht runterscaliertes verschiebbares Fenster....
DerWoWusste
DerWoWusste 15.01.2024 um 17:22:50 Uhr
Goto Top
Moin @gedisster
Das ist nicht, was er sucht. Er stellt sich vor, ein (1) Fenster zu haben auf dem alles zusammengeschoben wird, obwohl er einen Remoterechner mit 2 Monitoren shadowed.
gedisster
gedisster 16.01.2024 um 11:25:57 Uhr
Goto Top
Mag sein aber du kannst nur mit dem arbeiten was du bekommst und das ist nun mal entweder eine runterskalierte Komplettdarstellung aller Monitore oder eben eine Darstellung in Originalgrösse und ich finde damit kann man auch arbeiten aber ja, mir würde es auch besser gefallen einen Hotkey zu haben mit dem ich entweder den linken Monitor, den rechten Monitor oder eine Gesamtübersicht bekomme.
Nur, was wird wenn der Client mehr als NUR zwei Monitore hat?
Ich für meinen Teil könnte mir, als Nutzer von ebenfalls zwei Monitoren, sogar eine Komfortfunktion vorstellen in der ich auf dem linken Monitor ein Gesamtübersichtsbild habe und auf dem rechten Monitor einen ausgewählten Ausschnitt davon, ach Halt, das geht ja schon wenn man zwei Instanzen aufruft...
Insgesamt finde ich schon das Microsoft das Thema RDP irgendwie uninspiriert, geradezu lieblos behandelt.
Jetzt wo ich deine Antwort noch mal gelesen habe, er bekommt doch GENAU ein Fenster in dem alles zusammengeschoben zu sehen ist? Wo verstehen wir uns da miss?
DerWoWusste
DerWoWusste 16.01.2024 um 12:32:44 Uhr
Goto Top
Wo verstehen wir uns da miss?
Du kennst doch normales RDP. Da wird alles auf die Anzahl Monitore angepasst, die Du hast. Das ist bei Shadowing nicht so. Ohne "Intelligente Größenänderung" ist es (glaube ich) nicht so, wie er es will, aber dass muss schon @Ringi1970 beantworten.
gedisster
gedisster 16.01.2024 um 12:50:44 Uhr
Goto Top
Naja, "normales" RDP arbeitet ja auch ein ganz klein wenig anders. Da wird eine Sitzung mit den Daten der lokal vorhandenen Monitore geöffnet. Beim "shadowing" müssen die remote vorhandenen Monitore auf die lokalen Monitore abgebildet werden was gelinde gesagt schnell (programtechnisch) unübersichtlich wird.
Ich will da keineswegs MS in Schutz nehmen aber man kann mit dem was man hat schon ganz gut arbeiten und ich fürchte "geht gerade so" reicht ihnen.
Wem das nicht zusagt oder die Latenz zu hoch ist der kann ja "Sunshine" und "Moonlight" nehmen. Da gibt es einen Hotkey für die Monitorverwaltung und es entspricht, so man es aktiviert, "shadowing" also Tastatur und Maus beider PCs sind aktiv.
Es gibt aber einen Pferdefuss. Wenn man Sunshine und Moonlight miteinander bekannt machen möchte MÜSSEN sie sich im selben Netzwerksegment befinden. Danach können die sich beliebig auf der Welt rumtreiben.
Ach ja, Sunshine und Moonlight sind kostenlos aber nicht umsonst.
Aber das wäre dann ja Stoff für einen anderen Thread....
Ringi1970
Ringi1970 21.01.2024 aktualisiert um 09:34:05 Uhr
Goto Top
Ich hätte gerne, dass wenn ich ein Shadowing auf einen Arbeitsplatz mit zwei Bildschirmen mache, ich auswählen könnte, welchen der beiden Bildschirme ich dargestellt bekomme.
Aber wie DerWoWusste ja sagt, ist das bei Shadowing nicht möglich.
Bei normalem RDP wird das ganze auf den einen (oder wenn ich anhake "Alle Bildschirme benutze") auf meinen Monitor skaliert.

Jetzt nehmt mal einen CAD Arbeitsplatz mit zwei 27 oder gar zwei 32 Zoll Bildschirmen, und du kommst an mit RDP Shadowing und bekommst das in einem RDP Fenster auf deinem PC dargestellt - da kannst du nur noch raten was da für Fehlermeldungen stehen oder was in den Menüs steht.

Aber dennoch ist das RDP Shadowing wirklich eine absolut tolle Sache innerhalb einer Domain.
gedisster
gedisster 21.01.2024 um 15:04:35 Uhr
Goto Top
Ok, hast du mal ausprobiert was ich beschrieben habe?
"intelligente Grössenänderung" deaktivieren und wenn du dann die Fehlermeldungen nicht lesen kannst brauchst du eh ne stärkere Brille, einen grösseren Bildschirm, angepasste Skalierung, jemanden der dir den Bildschirminhalt vorliest.

Alternativ halt "Sunshine" und Moonlight" einsetzen. Das ist zwar auf "remote play" optimiert, die Bildschirme werden als h264/h265 Stream übertragen mit allen Vor- und Nachteilen, aber es bietet genau die von dir gewünschten Funktionen also shadowing und Auswahl des anzuzeigenden Bildschirmes per Hotkey.
gedisster
gedisster 22.01.2024 um 13:45:28 Uhr
Goto Top
Und da ich das Gefühl habe das hier keiner weiss wovon ich spreche:

So sieht das normalerweise aus wenn man zwei Bildschirme "shadowed":

screenshot 2024-01-22 132745

diese Option, "intelligente Größenänderung", entscheided darüber ob man ein downgescaltes Übersichtsbild oder einen verschiebbaren Bildschirmausschnitt bekommt:

screenshot 2024-01-22 132838

und dann sieht es so aus:

screenshot 2024-01-22 132908

und ja, selbst ich kann dann auf meinen nicht hochauflösenden Monitoren selbst ohne Brille lesen was in diesem Thread geschrieben steht. Nein, ich habe noch keinen Hotkey dafür gefunden schliesse aber auch nicht aus das es einen gibt.
DerWoWusste
DerWoWusste 22.01.2024 um 13:48:53 Uhr
Goto Top
Natürlich weiß ich, wovon du sprichst.
Und unten sowie rechts sind Scrollbalken und den will Ringi nicht haben, schätze ich.
gedisster
gedisster 22.01.2024 um 14:23:47 Uhr
Goto Top
Gut, dann sind zumindestens wir auf dem selben Stand.

Wenn nötig kann ich gerne was darüber schreiben warum beide Verfahren sich so unterschiedlich benehmen.

Was ich nicht verstanden habe ist wieso du davon ausgehst das "shadowing" auf das lokale Netzwerk beschränkt ist?!?

Und weil ich es bisher nicht geschrieben habe, deine Anleitung ist übersichtlich und informativ. Danke dafür!
gedisster
gedisster 22.01.2024 um 14:35:07 Uhr
Goto Top
gerade probiert, es ist nicht auf das lokale Netzwerk beschränkt. So lange Port 445 erreichbar ist geht auch "shadowing". Zumindest bei mir. Das heisst es ist ähnlich global einsetzbar wie "Sunshine" und "Moonlight".
DerWoWusste
DerWoWusste 22.01.2024 um 15:04:54 Uhr
Goto Top
es ist ähnlich global einsetzbar wie "Sunshine" und "Moonlight".
Ja. Hatte ich wirklich geschrieben "nur im LAN"? Wo denn, finde das nicht.
Wenn nötig kann ich gerne was darüber schreiben warum beide Verfahren sich so unterschiedlich benehmen.
Muss nicht. Ich würde das hier nicht weiter aufpumpen wollen.
gedisster
gedisster 22.01.2024 um 15:25:03 Uhr
Goto Top
"Die Leistung ist gut, da der Datenverkehr im LAN verbleibt und das vertrauenswürdige RDP verwendet wird"

So weit mir bekannt ist LAN == local area network? Falls du allgemein Netzwerk/Internet meintest ist der erste Teil der Aussage nicht sinnvoll da Rechner mit "air gap" keinen Port 445 publizieren sollten und du keine Aussage darüber treffen kannst wie performant fremde Netzwerke sind selbst wenn sie LANs sind und der zweite Teil ist zumindest nicht einfach überprüfbar. Nicht mal wenn man die Sourcen hätte. face-smile xRDP, die freie offene Version für X, ist nachgebaut verwendet aber nicht alle Funktionsmerkmale von RDP d.h. man kann keine Rückschlüsse ziehen.

Sorry, ich halte mich jetzt zurück....
DerWoWusste
DerWoWusste 22.01.2024 um 15:32:25 Uhr
Goto Top
Ah, da steht's. Hab ich eben nicht gefunden, danke. Ich formuliere das sogleich um.
DerWoWusste
DerWoWusste 07.05.2024 um 14:20:37 Uhr
Goto Top
Edit 07.05.2024
Windows 11 (23h2 zumindest) macht mit bestimmten Garfikkarten (hier: Nvidia Geforce-Gamerkarten und nvidia Quadro) Ärger mit dem Shadowing: sobald der Geshadowte selbst in einer RDP-Sitzung ist (also z.B. von zu Hause seinen Firmenrechner fernsteuert und dann einen Supporter per Shadowing rauflassen möchte), dann bleibt das geshadowte Bild schwarz, nur ein beweglicher Mauszeiger ist zu sehen!

Lösung: siehe RDP Shadowing - Zusammenspiel Remotegrafikkarte und reale Karte
Scheewetter
Scheewetter 21.05.2024 um 12:30:51 Uhr
Goto Top
Hallo zusammen!

Erstmal danke für deine Anleitung! Kannte die Funktion gar nicht! Bei uns bringt dies sehr viel.
Nun habe ich eine andere Frage. Bin im Batch schreiben noch nicht ganz so fit. Bin grade 3 Jahre aus der Ausbildung und hatte bisher noch nicht so viel damit zu tun.
Gibt es die Möglichkeit bei der Abfrage des Servers, wenn man sich bspw. vertippt, den Fehler auszulesen und wieder die Eingabe zum Server zu starten?

set /p target=Name des Servers?
Echo Benutzerverbindungen werden abgefragt...
qwinsta /server:%target%
set /p id=ID des Benutzers?
mstsc /v:%target% /shadow:%id% /control

Quasi wenn qwinsta den Server nicht findet, der Batch wieder oben startet oder von mir aus auch die Batch-Datei schließt?
Fehler 1722 beim Abrufen der Sitzungsnamen
Fehler [1722]:Der RPC-Server ist nicht verfügbar.

Danke!
13034433319
13034433319 21.05.2024 aktualisiert um 12:41:27 Uhr
Goto Top
Zitat von @Scheewetter:
Gibt es die Möglichkeit bei der Abfrage des Servers, wenn man sich bspw. vertippt, den Fehler auszulesen und wieder die Eingabe zum Server zu starten?
Quasi wenn qwinsta den Server nicht findet, der Batch wieder oben startet oder von mir aus auch die Batch-Datei

Moin.
@echo off
:start
cls
set /p target=Name des Servers?
Echo Benutzerverbindungen werden abgefragt...
qwinsta /server:%target% 2>nul || goto :start
set /p id=ID des Benutzers?
mstsc /v:%target% /shadow:%id% /control

Gruß
Scheewetter
Scheewetter 21.05.2024 um 13:00:58 Uhr
Goto Top
Zitat von @13034433319:

Zitat von @Scheewetter:
Gibt es die Möglichkeit bei der Abfrage des Servers, wenn man sich bspw. vertippt, den Fehler auszulesen und wieder die Eingabe zum Server zu starten?
Quasi wenn qwinsta den Server nicht findet, der Batch wieder oben startet oder von mir aus auch die Batch-Datei

Moin.
@echo off
:start
cls
set /p target=Name des Servers?
Echo Benutzerverbindungen werden abgefragt...
qwinsta /server:%target% 2>nul || goto :start
set /p id=ID des Benutzers?
mstsc /v:%target% /shadow:%id% /control

Gruß

Perfekt! Danke dir. face-smile

Gruß
Ringi1970
Ringi1970 24.05.2024 um 07:21:40 Uhr
Goto Top
Zitat von @DerWoWusste:

Edit 07.05.2024
Windows 11 (23h2 zumindest) macht mit bestimmten Garfikkarten (hier: Nvidia Geforce-Gamerkarten und nvidia Quadro) Ärger mit dem Shadowing: sobald der Geshadowte selbst in einer RDP-Sitzung ist (also z.B. von zu Hause seinen Firmenrechner fernsteuert und dann einen Supporter per Shadowing rauflassen möchte), dann bleibt das geshadowte Bild schwarz, nur ein beweglicher Mauszeiger ist zu sehen!

Lösung: siehe RDP Shadowing - Zusammenspiel Remotegrafikkarte und reale Karte

Ah, super ich danke Dir für diese Info, denn genau das Problem hab ich schon gehabt - und wenn ich mich sogar recht erinnere war es in der Abteilung "Bauten und Technik" bei uns - respektive CAD Arbeitsplätze -> Quadro Karten!
Dann versuche ich das mal mit der verlinkten Lösung.
Danke Dir
Gruß
Wolfgang