是否可以在 C# 中通过网络发送消息框 - 接收端没有任何侦听软件

本文关键字:接收端 消息 软件 任何侦 网络 是否 | 更新日期: 2023-09-27 18:32:55

到目前为止,我已经找到了很多通过网络发送和接收文件的方法(主要来自这个站点),但我还没有找到关于如何在接收端没有监听软件的情况下进行操作的教程。

例:

我想发送一个标题为"你好,和身体在那里"的消息框。

通常,我会写出MessageBox.Show("Hello","There");

但是,我希望能够通过网络发送MessageBox

我将如何做到这一点,请记住:

  • 两台计算机都没有管理员权限
  • 我在两台计算机上都使用 Windows 7
  • 接收方不会有监听软件。

提前感谢任何帮助我解决这个问题的人。

编辑:它不一定是一个MessageBox,我可以做一个看起来像一个论坛。

是否可以在 C# 中通过网络发送消息框 - 接收端没有任何侦听软件

这就像在说,"我能强迫你按照我告诉你的去做吗,即使你不听我说的话?

答案显然是否定的。

如果另一个人不打算回应你说的话,那么,好吧,他不会。

你不能用MessageBox做到这一点,因为这将是一个非常大的漏洞。

如果您使用的是Windows XP,则可以从命令行使用"net send"命令(因此可以从C#程序或批处理文件以某种方式调用;无论您的船漂浮在什么地方),具体取决于计算机的配置。

http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/net_send.mspx

在Windows Vista中有一个等效的程序叫做msg.exe,但在Windows Seven中被完全删除了。

-

简而言之,不是Windows Seven。

您可以从 Sysinternals 掏出并调用 PsExec,以复制然后在网络上的远程计算机上运行程序 - 该程序可以是你编写的侦听器,也可以只是一个在命令行上显示消息的程序。 PsExec并没有做任何通过调用Windows API和直接使用RPC无法做的事情,但这需要做很多工作:)特权可能是一个问题。 归根结底,非管理员用户无法开箱即用,与网络上的另一台计算机混在一起。 您需要放宽权限 - 也许使用组策略? 但是,如果您制定了组策略,只需使用 .msi 或登录脚本安装侦听器即可。

你能提供更多关于你为什么要这样做的信息吗? 也许有更好的方法来实现您所追求的通知。

可以使用

msg.exe 工具包含在窗口中。使用命令

Shell("cmd.exe /c msg * /SERVER:" & ipAddress & " " & deineNachricht)

如果你的电脑没有味精,请从某个地方下载它。

尝试查看此项目的代码 - 它使用 net send 命令行程序将消息发送到远程机器,尽管我不确定如果没有管理员权限,您的里程将如何进行:

http://www.google.com.au/url?sa=t&rct=j&q=&esrc=s&frm=1&source=web&cd=1&ved=0CCcQFjAA&url=http%3A%2F%2Fwww.codeproject.com%2FArticles%2F9466%2FThe-NetSend-Plus-NET-C&ei=hNOhT6ewH82RiQe--eCNCQ&usg=AFQjCNHzAjhU7SU7kuPSCQBLElR5vb1sIg