// EntheoBlog

Volltext: "Mehrere Remotedesktop Verbindungen mit Windows 7 (Professional) "

createOption('InternetAddress','Automatically create links for internet addresses ?','yesno','yes'); $this->createOption('NewWindow','Open links in a new window?','yesno','no'); $this->createOption('MailAddress','Automatically create links for mail addresses ?','yesno','yes'); $this->createOption('RewriteMailAddress','Rewrite mail addresses with [at] and [dot]?','yesno','yes'); $this->createOption('at','Placeholder for @','text','[at]'); $this->createOption('dot','Placeholder for .','text','[dot]'); } function getEventList() { return array('PreItem', 'PreComment'); } function Treatment($_text) { global $CONF, $blog; if ($this->getOption('NewWindow') == 'yes') { $nw="onclick=\"javascript:window.open(this.href, '_blank'); return false;\""; } if ($this->getOption('InternetAddress') == 'yes') { $_text = preg_replace('/(\s)([http|https|ftp|file]+:\/\/[a-zA-Z0-9_?=&%;+-.\/]*)/si','\1\2',$_text); $_text = preg_replace('/(\s)(www\.[a-zA-Z0-9_?=&%;+-.\/]*)/si','\1\2',$_text); } $at = $this->getOption('at'); $dot = $this->getOption('dot'); if ($this->getOption('MailAddress') == 'yes') { if ($this->getOption('RewriteMailAddress') == 'no') { $_text = preg_replace('/(\s)([a-zA-Z0-9\._-]+@[a-zA-Z0-9\._-]+\.[a-zA-Z]{2,5})/s','\1\2',$_text); } else { $_text = preg_replace('/(\s)([a-zA-Z0-9\._-]+)@([a-zA-Z0-9\._-]+)\.([a-zA-Z]{2,5})/s','\1\2'.$at.'\3'.$dot.'\4',$_text); } } if ($this->getOption('MailAddress') == 'no' && $this->getOption('RewriteMailAddress') == 'yes'){ $_text = preg_replace('/(\s)([a-zA-Z0-9\._-]+)@([a-zA-Z0-9\._-]+)\.([a-zA-Z]{2,5})/s','\1\2'.$at.'\3'.$dot.'\4',$_text); } return $_text; } function event_PreItem($_data) { $_data[item]->body = $this->Treatment($_data[item]->body); $_data[item]->more = $this->Treatment($_data[item]->more); } function event_PreComment($_data) { $_data['comment']['body'] = $this->Treatment($_data['comment']['body']); } function supportsFeature ($what) { switch ($what) { case 'SqlTablePrefix': return 1; default: return 0; } } } ?>

14 January

Mehrere Remotedesktop Verbindungen mit Windows 7 (Professional)

Weil ich echt gesucht habe und wirklich nur englischsprachige Hinweise fand, die zudem noch über längere Threads in Diskussionsforen verteilt sind, fasse ich mal (hauptsächlich für mich als Gedankenstütze) zusammen, wie es zu bewerkstelligen ist, dass Windows 7 in den Geschmacksrichtungen Home Premium, Professional, Ultimate dazu zu bewegen ist, mehr als eine gleichzeitige Konsolensession via RDP (Remotedesktop) zu gestatten.

Das Problem mal kurz: Die Möglichkeit mehrere Nutzer gleichzeitig in ihrer Arbeitsumgebung anzumelden und das Windows-System nutzen zu lassen, möchte M$ gern den Serverversionen ihrer Software vorbehalten. Diese unterscheiden sich jedoch zumindest an der Stelle der Multiuserfähigkeit nicht wesentlich von den Desktopversionen. Versucht man nun also, bei gleichzeitig an der Konsole angemeldetem Benutzer, einen Remotedesktop zu öffnen, so hat man die Wahl, den bereits angemeldeten User vom System abzumelden oder es einfach bleiben zu lassen. Dieses Verhalten hat keine technischen Hintergründe sondern ist eine willkürliche Einschränkung der Funktionalität dieses ansonsten mehrbenutzerfähigen Systems. Da es sich aber um eine lang gepflegte Tradition seitens M$ handelt, gab es natürlich bereits zu XP-Zeiten Leute, die das System erfolgreich von der Aufgabe dieser Tradition überzeugten - und diese Leute haben dann auch gleich bei jeder neu erschienenen Version den selben Vorgang wiederholt.

Wenn man das Folgende im Original zum selberlesen haben möchte (auch falls wiedererwarten Probleme auftauchen):
http://thegreenbutton.com/forums/t/79427.aspx?PageIndex=1
Der gerade genannte Thread beginnt mit der Vorstellung des Patches. Dabei sind mehrere Versionen wählbar, von denen ich die Version 1.1 von Alex nutzte:
http://www.mediafire.com/file/hzz2l5mznzm/Concurrent_RDP_Win7_RTM_patcher_v1.1.zip

Der Patch tut letztlich mehrere Dinge: einerseits verändert er die Datei termsrv.dll an zwei Stellen und andererseits legt er einige Registry-Keys an bzw. ändert deren Werte, wenn sie vorhanden sind. Wegen der Userfaulheit wird noch der Port 3389 in der Windowsfirewall geöffnet, so dass man auch von draußen auf das System zugreifen darf. Um das alles machen zu können muss man die install.cmd als Administrator (idealerweise aus dem Microsoft Explorer über den Kontextmenüeintrag "Als Administrator starten") starten. Die Nachfrage, ob die Datei denn den Rechner ändern darf bejaht man. Falls die cmd aus einer Applikation wie dem Total Commander oder dergleichen gestartet wurde, so kann es auf 64-Bit Systemen sein, dass die cmd als 32-Bit Applikation gestartet wurde, der Patch also nicht funktionieren würde. Das Script testet das ab und bricht mit einer entsprechenden Meldung ab ... also Windows Explorer nutzen.

In diesem zip-File gibt es mehrere Dateien von denen im Vorfeld erstmal die Datei install.cmd interessiert. Diese Datei wird ausgeführt um den Terminalserverdienst, so er denn läuft, zu beenden, die termsrv.dll als Backupdatei in Kopie anzulegen, die Registry-Einträge zu schreiben und den Dienst wieder zu starten. Zu diesem Zwecke muss das Script erstmal die Fileberechtigungen der termsrv.dll an den Administrator vergeben (per default darf nur der Systemuser dran rummachen). Die cmd ist für den Einsatz in einer englischen Version des Betriebssystems gedacht und muss vor der Benutzung nun also erstmal eingedeutscht werden. Das passiert an genau einer Stelle: In Zeile 319 wird statt "Administrators" das Wort "Administratoren" hingeschrieben. Es wird also die englischsprachige Benutzergruppe Administrators gegen die deutschsprachige Version getauscht.

Das war's dann aber auch schon als Vorbereitung. Dann eben die install.cmd als Administrator ausführen und den Bildschirmanweisungen folgen. Wenn man möchte, dass sich ein und der selbe User mehrmals unter dem selben Nutzernamen anmelden darf, so bejaht man die erste Frage und wenn man den Usern kein Passwort gegeben hat, also der Desktop normalerweise automatisch startet, so bejaht man die zweite Frage auch ... halte ich aber für eine sehr unclevere Idee. Multi-User Rechner, die am Internet hängen sollten in jedem Falle zumindest eine Passwortabfrage vor dem Login vorschreiben --> also besser jedem User auf dem System ein Passwort zuweisen und die zweite Frage verneinen.

Das Script gibt dann noch einige Meldungen zu den grad ausgeführten Aktionen und wartet am Ende auf einen Tastendruck zur Beendigung. Als ich das auf meinem Win7 Pro durchführte, wurde auf ganzer Linie Erfolg gemeldet.

Eine kleine Unzulänglichkeit ist allerdings im Script vorhanden: es stoppt nur einen der beiden vom Remotedesktop benötigten Dienste (Den Terminalserver) und startet auch nur diesen erneut. Nach dem Patch ist also ein Neustart auch des anderen Dienstes nötig, um eine zweite parallele Session zu starten. Das bekommt man am saubersten mit einem Reboot hin. Nach dem Reboot (oder dem manuellen Stop-->Start des Dienstes UmRdpService) kann man das alles mal testen. Dazu baut man einfach eine Remotedesktop Verbindung (Alle Programme-->Zubehör-->Remotedesktopverbindung) zum gerade gepatchten Rechner auf.

Falls man nur den einen gerade zur Verfügung hat, so nimmt man als IP-Adresse eine der Loop-Adressen, z.B. 127.0.0.2 (nicht die .1 oder die Ip-Adresse, welche der Netzwerkkarte zugeordnet ist ... da verhäddert er sich, weil ja unklar ist, ob er nun senden oder lauschen soll). Es kommt der übliche Loginscreen des Remotedesktop und nach Userdateneingabe hat man zusätzlich den Desktop des anderen Nutzers auf dem Schirm.

[Druckversion direkt zum Drucker senden]

Geschrieben von harko um 05:39:18 Uhr - Kategorie: Technik , Indifferentes
Karma: 45 [+/-]
Trackback
Derzeit keine Trackbacks vorhanden.
Mit dieser TrackBack url kann der Beitrag verlinkt werden (right-click, copy link target). Wenn Ihr Blog keine Trackbacks anbietet, kann Ihr Trackback manuell durch dieses Formular eingebaut werden .

Comments
createOption('InternetAddress','Automatically create links for internet addresses ?','yesno','yes'); $this->createOption('NewWindow','Open links in a new window?','yesno','no'); $this->createOption('MailAddress','Automatically create links for mail addresses ?','yesno','yes'); $this->createOption('RewriteMailAddress','Rewrite mail addresses with [at] and [dot]?','yesno','yes'); $this->createOption('at','Placeholder for @','text','[at]'); $this->createOption('dot','Placeholder for .','text','[dot]'); } function getEventList() { return array('PreItem', 'PreComment'); } function Treatment($_text) { global $CONF, $blog; if ($this->getOption('NewWindow') == 'yes') { $nw="onclick=\"javascript:window.open(this.href, '_blank'); return false;\""; } if ($this->getOption('InternetAddress') == 'yes') { $_text = preg_replace('/(\s)([http|https|ftp|file]+:\/\/[a-zA-Z0-9_?=&%;+-.\/]*)/si','\1\2',$_text); $_text = preg_replace('/(\s)(www\.[a-zA-Z0-9_?=&%;+-.\/]*)/si','\1\2',$_text); } $at = $this->getOption('at'); $dot = $this->getOption('dot'); if ($this->getOption('MailAddress') == 'yes') { if ($this->getOption('RewriteMailAddress') == 'no') { $_text = preg_replace('/(\s)([a-zA-Z0-9\._-]+@[a-zA-Z0-9\._-]+\.[a-zA-Z]{2,5})/s','\1\2',$_text); } else { $_text = preg_replace('/(\s)([a-zA-Z0-9\._-]+)@([a-zA-Z0-9\._-]+)\.([a-zA-Z]{2,5})/s','\1\2'.$at.'\3'.$dot.'\4',$_text); } } if ($this->getOption('MailAddress') == 'no' && $this->getOption('RewriteMailAddress') == 'yes'){ $_text = preg_replace('/(\s)([a-zA-Z0-9\._-]+)@([a-zA-Z0-9\._-]+)\.([a-zA-Z]{2,5})/s','\1\2'.$at.'\3'.$dot.'\4',$_text); } return $_text; } function event_PreItem($_data) { $_data[item]->body = $this->Treatment($_data[item]->body); $_data[item]->more = $this->Treatment($_data[item]->more); } function event_PreComment($_data) { $_data['comment']['body'] = $this->Treatment($_data['comment']['body']); } function supportsFeature ($what) { switch ($what) { case 'SqlTablePrefix': return 1; default: return 0; } } } ?>

Maik schrieb:

Der Link zum Download ist leider tot... momentan aber auf der Webseite des Original Berichts zum runterladen..
http://experts.windows.com/...
Erstellt am 09/28/12 um 10:29:08
Add Comments