• Msg user does not exist or is disabled. How to send a message to all computers on a local network? net send command syntax

    It existed in Windows 2000/XP and was intended for exchanging messages between users logged in locally and users of terminal sessions (connected to a remote desktop). In Windows Vista and later Windows family operating systems, the MSG command became the main standard messaging tool because the command net send This OS is no longer supported.

    Command line format:

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

    Description of command line parameters:

    <пользователь> Username. <имя сеанса> Session name. Session ID. @<имя файла> A file containing a list of usernames, sessions, or session IDs to which the message is sent. * Send a message to all sessions on the specified server. /SERVER:<сервер> Server (default - current). /TIME:<секунд> The interval for waiting for confirmation from the recipient. /V Display information about completed actions. /W Waiting for a response from the user, useful together with /V. <сообщение> The message being sent. If not specified, a prompt is issued or input from STDIN is accepted.

    Important!

    The current implementation of msg.exe is perfect for exchanging messages between sessions of local and terminal users within the same system, however, in cases of exchange between different computers on the local network, you will need to change some default security settings in the Windows Vista, 7 and 8 operating systems .

    Usually, with standard settings, sending a message to a remote computer is not carried out and is accompanied by the message

    Error 1722 when retrieving session names

    This means that the computer where the message is to be received cannot obtain information about the logged-in users. The reason may be that the firewall is blocking incoming connections, the user's rights in relation to the remote system are insufficient, or remote procedure calls are prohibited in the terminal server service parameters. At a minimum, for messaging using the command msg between computers, you must have a user account valid for the remote system and make the following settings:

  • on each computer to which messages will be sent, add to the registry key HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server parameter AllowRemoteRPC type REG_DWORD and equal 1 To change the settings, you can use the .reg file with the following content:

    Windows Registry Editor Version 5.00 "AllowRemoteRPC"=dword:00000001

    In Windows Vista, Windows 7, 8, 10Technical Preview registry key AllowRemoteRPC exists, but has the same value 0 what needs to be fixed. A reboot is required for changes to take effect.

  • because the messaging utility msg.exe uses the SMB (Server Message Block) protocol; a TCP port must be open on each computer to which messages will be sent 445

    Examples of use MSG:

    msg * /server:Server "Test message"- send a test message to all computer users Server

    msg * /server:192.168.0.1 "Test message"- send a test message to all users of a computer with an IP address 192.168.0.1

    msg RDP-Tcp#0 /server:TSServer "Test message"- send a test message to a terminal session user named RDP-Tcp#0 on the computer TSServer

    msg console /server:Windows7 "Test message"- send a test message to the current local computer user Windows7

    msg console "Test message"- sending a test message from an RDP session user to a local user. If this command is not executed by a terminal session user, then the message will be sent by the local user to himself.

    To execute a command msg You can use the utility on behalf of another user PSExec from the package PSTools or standard means runas.exe

    psexec -u otheruser -p otherpass msg * /server:win10 TEST message

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

    Messages sent by the team msg to a local user of a computer running the Windows XP operating system who is not present (has not yet logged into Windows) are displayed in a window with an invitation to register in the system and may be accessible to others.

  • Check if your system supports the msg command. The functionality of this command is much the same as the unused net send command. But this command only works in professional and enterprise versions of Windows. If you're using Windows Home, upgrade to Professional or Enterprise to be able to use the msg command.

    • To find out your Windows version, click ⊞ Win + Pause or right-click Computer and select Properties. The Windows version will appear under Windows Edition.

    Open a command prompt. Like net send, the msg command is run from the command line. Command Prompt is launched in different ways (depending on the version of Windows), or simply press ⊞Win and enter cmd.

    • Windows Vista/7: Open Command Prompt from the Start menu.
    • Windows 8.1/10: Right-click the Start button and select Command Prompt.
    • Windows 8: Click ⊞ Win + X and select Command Prompt.
  • Enter the command. Type msg and press Space. Next, you need to enter information that contains the text and direction of the message.

  • Identify the recipient of the message. Compared to net send, the msg command has additional options.

    • msg username – enter the name of a specific user.
    • msg session – Enter the name of the specific session.
    • msg Session ID – Enter the specific session ID.
    • msg@filename - Enter the name of a file that contains a list of usernames, sessions, and/or session IDs. Useful for sending messages to department employees.
    • msg * – the message will be sent to all users connected to the server.
  • Specify the server whose users you want to send the message to (if you wish). If you want to send a message to a user who is connected to another server, enter the server information after the recipient information. If no server is specified, the message will be sent to the current server.

    • msg * /server: server name
  • Set a time limit (if you wish). You can set a time limit to specify how long to wait for confirmation from the recipient. The time modifier is entered after the server information (if any).

    • msg * /time: seconds (for example, 300 seconds for a five-minute interval)
  • Enter your message text. After entering the various parameters, enter your message text. Or click ↵Enter, and the system will prompt you to enter the text of the message in a separate line.

    • For example: msg @salesteam /server:EASTBRANCH /time:600 Congratulations on increasing your sales this quarter!
  • Send a message. To do this, click ↵Enter. The recipient will receive it immediately.

    • The msg command is designed to send messages to terminal users, not just to different computers connected to the same network.
  • Troubleshoot. When working with msg you may encounter the following errors:

    • "msg" is not recognized as an internal or external command, operable program or batch file. (msg is not recognized as an internal or external command, executable program, or batch file). In this case, the Windows version does not support msg . Upgrade Windows to Professional version.
    • Error 5 getting session names or Error 1825 getting session names. Error when communicating with the recipient. You can try to resolve this problem by opening the registry editor on the recipient computer (to do this, run the regedit command), going to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server and changing the AllowRemoteRPC setting from 0 to 1.
  • Team MSG existed back in Windows 2000/XP and was intended for exchanging messages between users logged in locally and users of terminal sessions (connected to a remote desktop). In Windows Vista and later Windows family operating systems, the MSG command became the main standard messaging tool because the command net send This OS is no longer supported.

    Command line format:

    MSG (user | session name | session ID | @filename | *) [message]

    Description of command line parameters:

    user- Username.
    session name- Session name.
    Session ID- Session ID.
    @file name- A file containing a list of usernames, sessions, or session IDs to which the message is sent.
    * - Send a message to all sessions on the specified server.
    /SERVER:server- Server (default - current).
    /TIME:seconds- Waiting interval for confirmation from the recipient.
    /V- Display information about completed actions.
    /W- Waiting for a response from the user, useful together with /V.
    message- The message being sent. If not specified, a prompt is issued or input from STDIN is accepted.

    Important!

    The current implementation of msg.exe is perfect for exchanging messages between sessions of local and terminal users within the same system, however, in cases of exchange between different computers on the local network, you will need to change some default security settings in Windows Vista, 7 and later operating systems later

    With standard settings, messages are not sent to users of remote computers and are accompanied by the following message:

    Error 1722 when retrieving session names

    This means that the computer where the message is to be received cannot obtain information about the logged-in users. The reason may be that the firewall is blocking incoming connections, the user's rights in relation to the remote system are insufficient, or remote procedure calls are prohibited in the terminal server service parameters. At a minimum, for messaging using the command msg between computers, you must have a user account valid for the remote system and make the following settings:

  • on each computer to which messages will be sent, add to the registry key HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server parameter AllowRemoteRPC type REG_DWORD and equal 1 To change the settings, you can use the .reg file with the following content:

    Windows Registry Editor Version 5.00
    "AllowRemoteRPC"=dword:00000001

    In Windows Vista, Windows 7, 8, 10 registry key AllowRemoteRPC exists, but has the same value 0 what needs to be fixed. A reboot is required for changes to take effect.

  • because the messaging utility msg.exe uses the SMB (Server Message Block) protocol; a TCP port must be open on each computer to which messages will be sent 445

    Examples of use MSG:

    msg * /server:Server "Test message"- send a test message to all computer users Server

    msg * /server:192.168.0.1 "Test message"- send a test message to all users of a computer with an IP address 192.168.0.1

    msg RDP-Tcp#0 /server:TSServer "Test message"- send a test message to a terminal session user named RDP-Tcp#0 on the computer TSServer

    msg console /server:Windows7 "Test message"- send a test message to the current local computer user Windows7

    msg console "Test message"- sending a test message from an RDP session user to a local user. If this command is not executed by a terminal session user, then the message will be sent by the local user to himself.

    To execute a command msg You can use the utility on behalf of another user PSExec from the package PSTools or standard means runas.exe

    psexec -u otheruser -p otherpass msg * /server:win10 TEST message

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

    Messages sent by the team msg to a local user of a computer running the Windows XP operating system who is not present (has not yet logged into Windows) are displayed in a window with an invitation to register in the system and may be accessible to others.