Message LAN. Comment envoyer un message à tous les ordinateurs du réseau local ? Commande de message texte d'envoi net

Commande GMS existait sous Windows 2000/XP et était destiné à la messagerie entre les utilisateurs connectés localement et les utilisateurs de sessions terminal (connectés à un bureau distant). Dans Windows Vista et les systèmes d'exploitation ultérieurs de la famille Windows, la commande MSG est devenue le principal outil de messagerie standard car la commande envoi net n'est plus pris en charge dans ces systèmes d'exploitation.

Format de la ligne de commande :

MSG (utilisateur | nom de session | identifiant de session | @nom de fichier | *) [message]

Description des options de ligne de commande :

utilisateur- Nom d'utilisateur.
nom de session- Nom de session.
ID de session- ID de session.
@Nom de fichier- Un fichier contenant une liste de noms d'utilisateur, de sessions ou d'ID de session auxquels le message est envoyé.
* - Envoie un message à toutes les sessions sur le serveur spécifié.
/SERVEUR :serveur- Serveur (par défaut - courant).
/TIME:secondes- Le délai d'attente de la confirmation du destinataire.
/V- Afficher des informations sur les actions effectuées.
/W- En attente d'une réponse de l'utilisateur, utile avec /V.
message- Le message à envoyer. S'il n'est pas spécifié, une invite est émise ou une entrée est extraite de STDIN.

Important!

L'implémentation actuelle de msg.exe convient à l'échange de messages entre les sessions utilisateur locales et terminales au sein du même système, cependant, en cas d'échange entre différents ordinateurs sur un réseau local, vous devrez modifier certains paramètres de sécurité par défaut dans Windows Vista, 7 et plus de systèmes d'exploitation plus tard.

Avec les paramètres standards, l'envoi d'un message aux utilisateurs d'ordinateurs distants n'est pas effectué et est accompagné d'un message :

Erreur 1722 lors de l'obtention des noms de session

Cela signifie qu'il n'est pas possible d'obtenir des informations sur les utilisateurs connectés sur l'ordinateur sur lequel le message envoyé doit être reçu. La raison peut être que le pare-feu bloque les connexions entrantes, les droits d'utilisateur insuffisants par rapport au système distant, interdisant les appels de procédure à distance dans les paramètres du service Terminal Server. Au minimum, pour la messagerie utilisant la commande msg entre ordinateurs, vous devez disposer d'un compte utilisateur valide vis-à-vis du système distant et effectuer les paramétrages suivants :

  • sur chaque ordinateur auquel les messages seront envoyés, ajouter à la clé de registre HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server paramètre AutoriserRemoteRPC taper REG_DWORD et égal 1 Pour modifier les paramètres, vous pouvez utiliser le fichier .reg avec le contenu suivant :

    Éditeur du Registre Windows Version 5.00
    "AllowRemoteRPC"=dword:00000001

    Sous Windows Vista, clé de registre Windows 7, 8, 10 AutoriserRemoteRPC existe, mais a une valeur égale à 0 qui doit être corrigé. Un redémarrage est nécessaire pour appliquer les modifications.

  • depuis l'utilitaire de messagerie msg.exe utilise le protocole SMB (Server Message Block), sur chaque ordinateur auquel des messages seront envoyés, un port TCP doit être ouvert 445

    Exemples d'utilisation GMS:

    msg * /server:Server "Message test"- envoyer un message de test à tous les utilisateurs de l'ordinateur serveur

    msg * /server:192.168.0.1 "Tester le message"- envoyer un message de test à tous les utilisateurs d'un ordinateur avec une adresse IP 192.168.0.1

    msg RDP-Tcp#0 /server:TSServer "Message de test"- envoyer un message de test à l'utilisateur de la session terminal avec le nom RDP-Tcp#0 sur l'ordinateur ServeurTS

    msg console /server:Windows7 "Message de test"- envoyer un message de test à l'utilisateur actuel de l'ordinateur local Windows 7

    msg console "Tester le message"- envoyer un message de test de l'utilisateur de la session RDP à l'utilisateur local. Si cette commande est exécutée par un utilisateur de session non terminal, le message sera envoyé par l'utilisateur local à lui-même.

    Pour exécuter une commande msg au nom d'un autre utilisateur, vous pouvez utiliser l'utilitaire PSExec du paquet PSTools ou outil standard runas.exe

    psexec -u autre utilisateur -p autre message msg * /server:win10 TEST message

    runas /user:otheruser "msg * /server:win10 Test message"

    Messages envoyés par l'équipe msgà un utilisateur local d'un ordinateur exécutant Windows XP, qui n'est pas présent (pas encore connecté à Windows) sont affichés dans une fenêtre avec une invitation à s'enregistrer dans le système et sont accessibles par des personnes extérieures.

    Vérifiez si le système prend en charge la commande msg. La fonctionnalité de cette commande est très similaire à celle de la commande net send inutilisée. Mais cette commande ne fonctionne que dans les versions professionnelles et d'entreprise de Windows. Si vous utilisez Windows Home, effectuez une mise à niveau vers Professional ou Enterprise pour utiliser la commande msg.

    • Pour la version Windows, cliquez sur ⊞Gagner+Pause ou faites un clic droit sur "Ordinateur" et sélectionnez "Propriétés". La version Windows apparaîtra sous Windows Edition.

    Ouvrez une invite de commande. Comme net send , la commande msg est exécutée à partir de la ligne de commande. L'invite de commande est lancée de différentes manières (selon la version de Windows), ou appuyez simplement sur ⊞ Gagner et tapez cmd.

    • Windows Vista/7 : ouvrez l'invite de commande à partir du menu Démarrer.
    • Windows 8.1/10 : Cliquez avec le bouton droit sur le bouton Démarrer et sélectionnez Invite de commandes.
    • Windows 8 : cliquez sur ⊞ Gagner + X et sélectionnez Invite de commandes.
  • Saisissez une commande. Tapez msg et appuyez sur Espace. Ensuite, vous devez entrer des informations contenant le texte et la direction du message.

  • Spécifiez le destinataire du message. Par rapport à net send , la commande msg a des options supplémentaires.

    • nom d'utilisateur msg - entrez le nom d'un utilisateur spécifique.
    • msg session - entrez le nom d'une session spécifique.
    • msg session ID - Entrez l'ID d'une session spécifique.
    • msg @ filename - Entrez le nom d'un fichier contenant une liste de noms d'utilisateur, de sessions et/ou d'ID de session. Utile pour envoyer des messages aux employés du service.
    • msg * - le message sera envoyé à tous les utilisateurs connectés au serveur.
  • Spécifiez le serveur auquel vous souhaitez envoyer le message (si vous le souhaitez). Si vous souhaitez envoyer un message à un utilisateur qui est connecté à un autre serveur, entrez les informations du serveur après les informations du destinataire. Si aucun serveur n'est spécifié, le message sera envoyé au serveur actuel.

    • msg * /server : nom du serveur
  • Fixez une limite de temps (si vous le souhaitez). Vous pouvez définir une limite de temps pour spécifier l'intervalle d'attente de la confirmation du destinataire. Le modificateur temporaire est entré après les informations sur le serveur (le cas échéant).

    • msg * /time : secondes (par exemple 300 secondes pour un intervalle de cinq minutes)
  • Saisissez le texte de votre message. Après avoir entré les différentes options, entrez le texte du message. Ou cliquez ↵Entrez, et le système vous invite à saisir le texte du message sur une ligne distincte.

    • Par exemple : msg @salesteam /server:EASTBRANCH /time:600 Félicitations pour l'augmentation des ventes ce trimestre !
  • Envoyer un message. Pour ce faire, cliquez ↵Entrez. Le destinataire le recevra immédiatement.

    • La commande msg est conçue pour envoyer des messages aux utilisateurs de terminaux, pas seulement à différents ordinateurs connectés au même réseau.
  • Dépanner. Lorsque vous travaillez avec msg, vous pouvez rencontrer les erreurs suivantes :

    • "msg" n'est pas reconnu comme une commande interne ou externe, un programme exécutable ou un fichier batch. (msg n'est pas reconnu comme une commande interne ou externe, un programme exécutable ou un fichier batch). Dans ce cas, la version Windows ne prend pas en charge msg . Mettez à niveau Windows vers l'édition professionnelle.
    • Erreur 5 lors de l'obtention des noms de session ou Erreur 1825 lors de l'obtention des noms de session. Une erreur s'est produite lors de la communication avec le destinataire. Vous pouvez essayer de résoudre ce problème en ouvrant l'éditeur de registre sur l'ordinateur du destinataire (pour ce faire, exécutez la commande regedit), accédez à HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server et modifiez la valeur du paramètre "AllowRemoteRPC" de 0 à 1.
  • face au problème d'informer les utilisateurs, la raison la plus courante est la mise à jour de 1C, dans laquelle il est nécessaire que tous mes utilisateurs (et il y en a plus de 160) quittent 1C et ne se connectent pas pendant un certain temps. Il semblerait que ce soit difficile, vous pouvez envoyer un message par e-mail, comme je le faisais quand j'avais office 365, mais le courrier Yandex a ses propres limites : pas plus de 50 utilisateurs sur la liste de diffusion. Si vous envoyez à plus d'utilisateurs, la lettre n'atteindra tout simplement pas certains. Envoyer 50 utilisateurs individuellement n'est pas pratique. Le deuxième problème avec le courrier Yandex est la nécessité d'entrer captcha dans certains cas, le système perçoit l'envoi de masse comme un spam, et les lettres sont nécessaires, si vous n'avertissez pas l'utilisateur, il ne sera pas enregistré à temps et il peut y avoir problèmes ...

    En général, il est devenu terriblement gênant d'envoyer des messages à tous les utilisateurs. J'ai commencé à réfléchir à des solutions.

    La première chose qui m'est venue à l'esprit : mais quelques désagréments sont apparus :

    • Les messages arrivent en 30 minutes environ pour 160 travaux, ce qui est très long.
    • Le message apparaît uniquement sur la barre des tâches, si l'utilisateur travaille via un bureau à distance, il ne verra pas le message immédiatement.
    • Il est nécessaire de maintenir l'opérabilité des agents Kaspersky sur les machines de travail de l'utilisateur, sinon le message ne parviendra pas du tout.

    La deuxième option consiste à installer un messager, mais ici, il y a aussi plusieurs inconvénients.

    • Il y a beaucoup de messagers, ils ne sont pas universels, vous ne pouvez pas vous envoyer de messages entre messagers.
    • Les bons messagers sont payés.
    • Les messages n'apparaissent pas au-dessus de toutes les fenêtres, et si vous devez signaler quelque chose d'urgent et d'important, il s'agit d'une fonctionnalité utile du message.
    • L'installation et la configuration de ces mêmes messagers sont nécessaires, ainsi que la formation des utilisateurs pour les nouveaux logiciels.

    Je me suis retrouvé sur l'invite de commande de Windows, il existe des commandes net send et msg pour envoyer des messages à tous les ordinateurs du réseau local. Tout fonctionne très simplement, vous ouvrez la ligne de commande, écrivez une commande, un message arrive à l'ordinateur dont vous avez spécifié le nom dans le texte de la commande. De plus, le message apparaît en haut de toutes les fenêtres, l'inscription n'est pas requise et tout est entièrement gratuit.

    La commande pour envoyer des messages à un ordinateur sur le réseau local ressemble à ceci :

    msg * /server:computername "Message de test, cliquez sur OK"

    J'ai fait une liste d'ordinateurs, puis un travail un peu fastidieux sur la création du même type de commandes dans un seul fichier txt, mais cela se fait rapidement par copier-coller. L'essentiel est de faire une liste d'ordinateurs. Dans un domaine, cela se fait tout simplement via le composant logiciel enfichable "Utilisateurs et ordinateurs", clic droit sous la liste des ordinateurs, puis "Exporter la liste" immédiatement vers un fichier TXT. Comme j'ai environ 160 ordinateurs dans le domaine, j'ai abordé le problème de manière un peu plus créative, je n'ai pas fait de "copier-coller", mais j'ai effectué un remplacement automatique de la première lettre du nom de l'ordinateur dans la liste déjà existante des ordinateurs avec msg * /serveur : + la première lettre au nom des ordinateurs, pour ma chance c'était pareil pour tout le monde. De même pour la deuxième partie, mais uniquement avec la dernière lettre du nom de l'ordinateur (la dernière lettre du nom de l'ordinateur + "Testez le message, cliquez sur OK"), j'ai donc reçu un fichier TXT avec une liste de commandes. J'ai changé l'extension de fichier de txt en bat et je l'ai lancé pour exécution. Par conséquent, tous les ordinateurs du domaine ont reçu un "message de test, cliquez sur OK".

    Malheureusement, une telle commande ne fonctionne pas en dehors du domaine, et depuis que j'ai terminé la tâche, il n'était tout simplement pas rationnel d'expérimenter davantage. Je n'ai pas réussi à envoyer de messages aux ordinateurs du groupe de travail, mais je n'ai que quelques ordinateurs de ce type. Ils peuvent également envoyer un message par courrier, ou dans le même Kaspersky, ou via un messager. Que ce soit le sujet de l'une des entrées suivantes.

    En conséquence, ce que j'ai obtenu : 1 fichier dans lequel vous pouvez modifier rapidement le texte du message et avec lequel je peux envoyer n'importe quel message gratuitement à tout le monde dans le domaine. Cela a l'air génial, mais il y a encore quelques inconvénients:

    1. Il faut tenir le dossier à jour, en ajouter de nouveaux, supprimer des ordinateurs inexistants.
    2. Pas de retour immédiat.
    3. Le fichier s'est avéré moche, je pense qu'il est possible de charger les valeurs du nom de l'ordinateur du fichier dans cette commande, mais il n'y avait pas le temps de le comprendre jusqu'au bout.

    Cependant, les avantages l'emportent sur tous les inconvénients :

    • Rapide à mettre en œuvre, ne nécessite que peu ou pas de préparation pour la prochaine expédition.
    • Fonctionne de manière fiable, l'utilisateur verra certainement ce message.
    • Gratuitement.
    • Très, très simple, il vous suffit de connaître une commande et les noms des ordinateurs.

    Je serai heureux de tous les commentaires, suggestions, commentaires)

    Note

    Si le pare-feu n'est pas désactivé, le programme Nassi devrait être inclus dans ses exceptions.

    Commande de message texte d'envoi net

    Les messages texte sur le réseau local peuvent être envoyés non seulement dans des programmes spéciaux (Radmin, Nassi), mais également à partir de la ligne de commande les fenêtres XP. Commande envoi net utilisé pour envoyer des messages texte à un autre ordinateur disponible sur le réseau. Cependant, afin de commande travaillé, vous devez d'abord activer le service de livraison de messages. Pour ce faire, rendez-vous sur Panneau de commande. Dossier ouvert Administratif, Services. Recherchez le service de messagerie dans la liste (Fig. 20.9).

    Riz. 20.9.

    Ouvrez ses propriétés. Sélectionner sens Auto de la liste type de lancement, si vous voulez que le service démarre automatiquement au démarrage les fenêtres. Cliquez ensuite sur le bouton Début et D'ACCORD(fig. 20.10 et fig. 20.11).

    Riz. 20.10.

    Riz. 20.11.

    Regardons quelques exemples d'utilisation de la commande envoi net lors de l'envoi de messages dans le groupe de travail (domaine) 110. Pour envoyer un message à tous les utilisateurs du groupe de travail 110, saisissez : envoi net/domaine : 110 PING. Autre variante d'une commande similaire : pour envoyer un message à tous les utilisateurs de votre domaine, saisissez : envoi net * ping(fig. 20.12 et 13)



    Riz. 20.12.

    Riz. 20.13.

    Pour envoyer un message à un utilisateur spécifique, tel que 110-1, tapez : net envoyer 110-1 BONJOUR!(Fig. 20.14).

    Riz. 20.14.

    À les fenêtres XP a une autre option pour envoyer des messages sur le réseau. Exécuter des commandes Panneau de configuration-Outils d'administration-Gestion de l'ordinateur. Plus loin: Action-Toutes les tâches-Envoyer un message de console. Ensuite, sélectionnez un PC et envoyez-lui un SMS (Fig. 20.15).


    Existait sous Windows 2000/XP et était destiné à la messagerie entre les utilisateurs connectés localement et les utilisateurs de sessions de terminal (connectés à un bureau distant). Dans Windows Vista et les systèmes d'exploitation ultérieurs de la famille Windows, la commande MSG est devenue le principal outil de messagerie standard car la commande envoi net n'est plus pris en charge dans ces systèmes d'exploitation.

    Format de la ligne de commande :

    GMS (<пользователь> | <имя сеанса> | | @<имя файла> | *} [<сообщение>]

    Description des options de ligne de commande :

    <пользователь> Nom d'utilisateur. <имя сеанса> Nom de la session. ID de session. @<имя файла> Fichier contenant une liste de noms d'utilisateur, de sessions ou d'ID de session auxquels un message est envoyé. * Envoie un message à toutes les sessions sur le serveur spécifié. /SERVEUR:<сервер> Serveur (par défaut - actuel). /TEMPS:<секунд> L'intervalle d'attente de la confirmation du destinataire. /V Afficher des informations sur les actions terminées. /W En attente d'une réponse de l'utilisateur, utile avec /V. <сообщение> Le message en cours d'envoi. S'il n'est pas spécifié, une invite est émise ou une entrée est extraite de STDIN.

    Important!

    L'implémentation actuelle de msg.exe est idéale pour échanger des messages entre des sessions utilisateur locales et terminales au sein du même système, cependant, en cas d'échange entre différents ordinateurs sur un réseau local, vous devrez modifier certains paramètres de sécurité par défaut dans Windows Vista, 7 et 8 systèmes d'exploitation .

    Habituellement, avec les paramètres standard, l'envoi d'un message à un ordinateur distant n'est pas effectué et est accompagné d'un message

    Erreur 1722 lors de l'obtention des noms de session

    Cela signifie qu'il n'est pas possible d'obtenir des informations sur les utilisateurs connectés sur l'ordinateur sur lequel le message envoyé doit être reçu. La raison peut être que le pare-feu bloque les connexions entrantes, les droits d'utilisateur insuffisants par rapport au système distant, interdisant les appels de procédure à distance dans les paramètres du service Terminal Server. Au minimum, pour la messagerie utilisant la commande msg entre ordinateurs, vous devez disposer d'un compte utilisateur valide vis-à-vis du système distant et effectuer les paramétrages suivants :

  • sur chaque ordinateur auquel les messages seront envoyés, ajouter à la clé de registre HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server paramètre AutoriserRemoteRPC taper REG_DWORD et égal 1 Pour modifier les paramètres, vous pouvez utiliser le fichier .reg avec le contenu suivant :

    Éditeur du Registre Windows version 5.00 "AllowRemoteRPC"=dword:00000001

    Dans Windows Vista, Windows 7, 8, clé de registre 10Technical Preview AutoriserRemoteRPC existe, mais a une valeur égale à 0 qui doit être corrigé. Un redémarrage est nécessaire pour appliquer les modifications.

  • depuis l'utilitaire de messagerie msg.exe utilise le protocole SMB (Server Message Block), sur chaque ordinateur auquel des messages seront envoyés, un port TCP doit être ouvert 445

    Exemples d'utilisation GMS:

    msg * /server:Server "Message test"- envoyer un message de test à tous les utilisateurs de l'ordinateur serveur

    msg * /server:192.168.0.1 "Tester le message"- envoyer un message de test à tous les utilisateurs d'un ordinateur avec une adresse IP 192.168.0.1

    msg RDP-Tcp#0 /server:TSServer "Message de test"- envoyer un message de test à l'utilisateur de la session terminal avec le nom RDP-Tcp#0 sur l'ordinateur ServeurTS

    msg console /server:Windows7 "Message de test"- envoyer un message de test à l'utilisateur actuel de l'ordinateur local Windows 7

    msg console "Tester le message"- envoyer un message de test de l'utilisateur de la session RDP à l'utilisateur local. Si cette commande est exécutée par un utilisateur de session non terminal, le message sera envoyé par l'utilisateur local à lui-même.

    Pour exécuter une commande msg au nom d'un autre utilisateur, vous pouvez utiliser l'utilitaire PSExec du paquet PSTools ou outil standard runas.exe

    psexec -u autre utilisateur -p autre message msg * /server:win10 TEST message

    runas /user:otheruser "msg * /server:win10 Test message"

    Messages envoyés par l'équipe msgà un utilisateur local d'un ordinateur exécutant Windows XP, qui n'est pas présent (pas encore connecté à Windows) sont affichés dans une fenêtre avec une invitation à s'enregistrer dans le système et sont accessibles par des personnes extérieures.