首页 > 编程 > BAT > 正文

MSG命令使用详解

2020-06-09 14:24:16
字体:
来源:转载
供稿:网友

最近在编写FTP上传数据的批处理时,需要用到局域网内传输数据来提示错误,突然想起忘了N久没用的命令(net send),  结果在win7 下cmd运行net send /? 运行失败。经过百度大神的搜索,原来从vista之后net send 命令被微软取消了,再次百度,WIN 7局域网内发送消息可以使用MSG 命令。在坛子里找了好久也没找着真正的使用方法,就自己百度,google 终于搞定了,发出来让大家看下。。。。。

MSG 系统自带使用帮助

C:/Windows/system32>MSG
将消息发送给用户。
MSG {username | sessionname | sessionid | @filename | *}
    [/SERVER:servername] [/TIME:seconds] [/V] [/W] [message]

  username            标识指定的用户名。
  sessionname         会话名。
  sessionid           会话 ID。
  @filename           识别这样一个文件,该文件含有将所发消息发送到的用户名、会话名和会话标识号的列表。
  *                   给指定服务器上的所有会话发送信息。
  /SERVER:servername  要联系的服务器(默认值是当前值)。
  /TIME:seconds       等待接收器确认消息的时间延迟。
  /V                  显示有关执行的操作的信息。
  /W                  等待用户的响应,跟 /V 一起有用。
  message             要发送的消息。如果没有指定,发出提示,或者从 stdin读取。

以下代码均在开始---执行------CMD内测试。

测试条件:本机IP:192.168.1.200     测试电脑IP:192.168.1.201    在同一局域网内,并且可以ping通。

1.根据以上MSG使用方法进行本机调试验证。  MSG /server:192.168.1.200 * "Hello"      ----------------->>>>>    运行成功,弹出消息对话框。

2.然后再进行局域网内两台电脑通信验证。  MSG /server:192.168.1.201 * "Hello"    ---------->>>>>  运行失败,报错。获取会话名称时的错误 1722。

3.再次百度,在CSDN的一个帖子上有一个办法,CMD内regedit修改注册表HKEY_LOCAL_MACHINE/SYSTEM/CURRENTCONTROLSET/CONTROL/TERMIMAL SERVER内的ALLOWREMOTERPC的值修改为1 (默认为0),因为在XP系统下net send 命令需要开启Messenger信使服务,但是在win7内没有此项服务,所以需要修改注册表来使win7系统可以局域网内发送信息,可XP类似。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表