📜  c# wtssendmessage - C# (1)

📅  最后修改于: 2023-12-03 14:39:44.725000             🧑  作者: Mango

C# wtssendmessage

简介

wtssendmessage是一种用C#编写的Windows Terminal Services发送消息的工具,可以在终端服务器上向其他远程桌面的用户发送消息。

用法

首先,需要在项目中添加System.Runtime.InteropServicesSystem.Management命名空间。

构造函数
public WtsSendMessage(string server)

构造函数参数为指定的服务器名,若不填则默认为当前自己。

方法

SendMessage

public bool SendMessage(string message, string target, WtsMessageStyle style)
  • 参数1 string message:需要发送的消息内容。
  • 参数2 string target:需要发送消息的目标,可以是其他远程桌面用户的用户名,使用*表示所有用户。
  • 参数3 WtsMessageStyle style:消息风格,包括WtsMessageStyle.Information, WtsMessageStyle.Exclamation, WtsMessageStyle.Error三种。

DisconnectSession

public bool DisconnectSession(int sessionId, bool bWait)
  • 参数1:需要断开连接的会话ID。
  • 参数2: 是否等待断开连接完成。
示例
导入命名空间
using System.Runtime.InteropServices;
using System.Management;
实例化
WtsSendMessage wts = new WtsSendMessage();
发送信息到所有用户
wts.SendMessage("这是一个通知", "*", WtsMessageStyle.Exclamation);
断开连接
wts.DisconnectSession(5, true);
注意事项
  1. 该工具只适用于Windows Terminal Services环境。
  2. 此类需要管理员权限才能调用。
  3. 发送消息的用户需要有远程管理权限。
  4. 仅能断开当前用户的会话,无法断开其他会话。