最近在編寫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類似。
新聞熱點
疑難解答