Microsoft hat mit der Einführung von Vista die Funktion SEND aus dem Befehl NET entfernt. Grund dafür war das Entfernen des Nachrichtendienstes. Dieser Dienst hat bis XP (ab SP2 war er standardmäßig deaktiviert) die Nachrichten empfangen, welchen mit NET SEND verschickt worden. Allerdings auch über Domaingrenzen hinweg, was eine Zeit lang für dubiose Werbenachrichten auf den Computerbildschirmen sorgte.

Eine Alternative für NET SEND ist der Befehl MSG. Dieser Befehl ist ab Windows XP enthalten – aber Achtung – in den Home Versionen dieser Betriebssysteme nicht! MSG umgeht das Problem mit den Popup Nachrichten aus dem Internet, da es nur in der eigenen Domain verfügbar nutzbar ist.

MSG /? zeigt die möglichen Optionen an:

image

Eine Nachricht wird mit folgender Syntax verschickt:

msg Benutzername /server:computername Nachricht
Beispiel: msg hitziger /server:edv4 Das ist ein test

Das Wildcard * kann verwendet werden um an alle an diesen Computer angemeldeten Personen eine Nachricht zu schicken. Der Konsole kann man auch eine Nachricht schicken, dazu einfach als Benutzernamen console nutzen.

Achso, der Nachrichtendienst wird auf XP nicht benötigt!

 

Genug Theorie. Versucht man das Ganze nun in einer Domain mit XP und Win7 Rechnern umzusetzen, verzweifelt man am Anfang. Das einzige, was von Anfang an funktionierte, war sich selber Nachrichten zu schicken.

Versucht man von Windows 7 ein Nachricht an einen XP Rechner zu schicken, dann bekommt man eine Fehlermeldung “Benutzername ist nicht vorhanden oder Verbindung ist getrennt”. Beim Versuch eine Nachricht von XP an Windows 7 zu schicken endet mit der Fehlermeldung

“Fehler beim Öffnen von Terminalserver Computername"
”Fehler [1722]:Der RPC-Server ist nicht verfügbar.”

MSG in der Kombination XP zu XP erzeugte die Fehlermeldung “Fehler [5]: Sie haben keine Berechtigung” (diesen Fehler hab ich jetzt nur aus dem Gedächtnis aufgeschrieben).

Der erste Schritt ist auf allen verwendeten Rechnern einen Registryeintrag zu ändern oder neu anzulegen (XP). Also Regedit starten und folgendes auf den Windows 7 Rechnern ändern:

Pfad: HKEY_LOCAL_MASCHINE\SYSTEM\CurrentControlSet\Control\TerminalServer
AllowRemoteRPC muss von Null auf Eins geändert werden. Also AllowRemoteRPC=1

Bei XP Computer muss dieser Wert angelegt werden:

Pfad: HKEY_LOCAL_MASCHINE\SYSTEM\CurrentControlSet\Control\TerminalServer
Rechtsklick und Neu->DWORD-Wert->als Name AllowRemoteRPC eingeben und als Wert 1.

So sollte das dann aussehen – es sind noch andere Werte in dem Pfad sichtbar, aber die spielen jetzt keine Rolle.

image

 

Mit dieser Änderung ist es nun möglich MSG zwischen XP Rechnern und von Windows 7 zu XP zu verwenden. Aber versucht man von XP eine Nachricht auf einen Win7 Rechner zu schicken, dann kommt immer noch der oben genannte Fehler [1722]. Windows 7 möchte noch einen extra Haken gesetzt bekommen.

Also geh in die Systemsteuerung->System und Sicherheit->System (oder drücke WIN+Pause). In dem Fenster gibt es oben links den Punkt “Erweiterte Systemeinstellungen” – den bitte anklicken. Nun im neuen Fenster oben den Tab “Remote” auswählen und bei Remotedesktop die Option von “Keine Verbindung mit diesem Computer zulassen” auf die Option “Verbindungen nur von Computern zulassen, auf denen Remotedesktop mit Authentifizierung auf Netzwerkebene ausgeführt wird.”.

image

OK drücken und ab sofort sollte MSG auch von XP zu Windows 7 funktionieren :)

[Update – 22.01.2010] Um Nachrichten an die Konsole schicken zu können, benötigt man Adminrechte – http://support.microsoft.com/kb/302799/en-us/

[Update – 26.02.2010] Besteht Interesse an einen Tool, was das Verschicken von Nachrichten zwischen Windows 7, Vista, XP ermöglicht? Möglich von jeden Konto, dafür muss aber ein Adminkonto im Programm angegeben werden (Stichwort: Impersonation). Sicherheitstechnisch keine feine Lösung, aber so wie es aussieht, gibt es keine andere Lösung. Also wenn jemand Interesse hat – kurzer Kommentar reicht.

Keine verwandten Beiträge.


13 Antworten zu “Befehl MSG zwischen XP und Windows 7 [Update]”

  1. Jonas

    Vielen Dank für dieses saubere Tutorial. Ich wäre sehr dankbar für ein Tool zum Verschicken von Nachrichten in einer Domäne.

    Gruß jonas

    Eingetragen am 22. März 2010 um 10:51
  2. Ingo

    Hallo, habe das jetzt mal so eingestellt
    Von XP zu XP geht es aber XP zu W7 oder W7 zu XP geht es nicht.
    Allerdings war auf dem W7 kein Regestry eintrag zu finden, den man hätte ändern können. Also habe ich diesen AllowRemoteRPC wie für XP beschieben neu erstellt.
    Bekomme auch die Meldung : Fehler 5 Zugriff verweigert XP zu W7
    Was ausser den oben genannten Einstellungen kann man noch ändern?
    Mfg
    Ingo

    Eingetragen am 29. März 2010 um 10:35
  3. Andreas

    ich habe auch sowas ähnliches…. bin aber i-wie voll der anfänger in so sachen

    wenn ich ich miene CMd leiste eingebe

    c:\msg MORPH hi! (Morph) für den PC namen
    dann steht immer
    morph is nicht vorhanden oder verbindung ist getrennt

    was muss ich machen damit es funktioniert

    schon mal danke im voraus lg andi

    Eingetragen am 14. April 2010 um 08:39
  4. Andreas

    sollte ich vielleciht noch erwähnen das es von win 7 ultimate 32bit zu win 7 ultimate 32bit ist

    Eingetragen am 14. April 2010 um 08:40
  5. Itsch

    @ Andreas

    die syntax ist “msg * /SERVER:Morph hi!”
    der Stern heisst, dass die Nachricht an alle angemeldeten Nutzer auf dem PC geschickt wird, alternativ kann auch der Anmeldename des Zielcomputers verwendet werden. /SERVER:Servername ist die Angabe des Zielcomputers und kann auch gegen die entsprechende IP im Netzwerk ersetzt werden.

    lg Itsch

    Eingetragen am 18. April 2010 um 10:21
  6. Andreas

    ich weiss es is nervig aber :P

    c:\msg * /server:morph hi
    Fehler 1722 beim Abrufen der Stizungsnamen

    hmm was mach ich da nur falsch

    Eingetragen am 19. April 2010 um 17:08
  7. Itsch

    den fehler bekomme ich leider auch immer, wenn ich versuche, auf andere rechner zu schreiben… ich gehe davon aus, dass der befehl vom zielcomputer geblockt wird. da ich leider keinen eigenen zweiten rechner zur verfügung habe, kann ich leider nicht mit den einstellungen experimentieren. eine möglichkeit wäre, dass die remoteunterstützung erlaubt werden muss, allerdings soll das auch nur bedingt funktionieren.

    Eingetragen am 20. April 2010 um 11:18
  8. @Andreas: Hast du das auch gemacht?

    “Also geh in die Systemsteuerung->System und Sicherheit->System (oder drücke WIN+Pause). In dem Fenster gibt es oben links den Punkt “Erweiterte Systemeinstellungen” – den bitte anklicken. Nun im neuen Fenster oben den Tab “Remote” auswählen und bei Remotedesktop die Option von “Keine Verbindung mit diesem Computer zulassen” auf die Option “Verbindungen nur von Computern zulassen, auf denen Remotedesktop mit Authentifizierung auf Netzwerkebene ausgeführt wird.”.”

    @Ingo: Besitzt der Absender Adminrechte im Netzwerk?

    @Jonas: Das Tool kommt noch. Muss da noch ein paar Kleinigkeiten anpassen. Hatte in den letzten Wochen wenig Zeit.

    Eingetragen am 20. April 2010 um 12:02
  9. Andreas

    also es ist alles so eingestellt gewesen wie du sagtest (das hatte ich schon gemacht)

    der selbe fehler bleibt bestehen

    c:\msg * /server:morph hi
    Fehler 1722 beim Abrufen der Stizungsnamen

    Eingetragen am 20. April 2010 um 17:23
  10. Markus

    Hallo zusammen!

    Wie schauts mit dem Tool aus? Warte sehnsüchtigst darauf da ich es mit der cmd nicht hinbekommen mag!

    Eingetragen am 20. Juni 2010 um 16:17
  11. Klaus

    Super erklärt, danke da hab ich schon lange gesucht.
    Ich hätte auch Interesse an deinem Tool. Falls du es in .net programmiert hast würde ich mich auch über den Source-Code freuen.

    Danke

    Eingetragen am 05. August 2010 um 09:46
  12. blijzijn

    Gut erklärt!

    Man sollte allerdings noch beachten, dass sowohl auf dem “Sender-PC” als auch bei dem “Empfänger-PC” die Konten und die Kennwörter genau gleich sein müssen (und beim Empfänger Admin sein muss).

    D.h.:
    Sender-PC hat den Benutzer “Test” mit Passwort “Test123″.
    Der Empfänger-PC hat diesen noch nicht, deshalb errichtet man ein Administratorkonto mit genau dem gleichen Benutzernamen und genau dem gleichen Passwort.

    Damit sie sich gegenseitig Nachrichten schicken können, sollte der Benutzer beim Sender-PC auch Admin sein. (Für mich persönlich war das nicht relevant.)

    PS: Vergesst nicht den Server (d.h. Empfänger-PC) mit “/server:”IP oder Computername”" anzugeben.

    Eingetragen am 08. August 2010 um 12:29
  13. bei mir geht es nicht

    Ich habe XP (Sender) und Win7(Empfanger).
    Wie gesagt, bei beiden PC AllowRemote 00000001 gemacht (XP neu geschrieben, Win7 geändert).

    2 verschiedene User, aber beide haben Admin Rechte.

    Ich schreibe:

    C:\>msg Win7UserName /server:Win7PCName bla-bla-bla
    Error during opening of terminal server Win7PCName
    Error [1722]: Server RPC is not accessible.

    Eingetragen am 29. August 2010 um 19:26

Schreibe eine Antwort