0

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

例子:

我想发送一个标题为 Hello 和正文的消息框。

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

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

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

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

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

编辑:它不必是一个MessageBox,我可以制作一个看起来像一个的论坛。

4

5 回答 5

3

这就像在说,“即使你不听我说的话,我能强迫你做我告诉你的事吗?”

显然,答案是否定的。

如果对方不打算回应你所说的话,那么,好吧,他不会。

于 2012-05-03T00:42:02.490 回答
1

你不能用 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 7 中被完全删除。

-

总之,不与Windows 7 没有。

于 2012-05-03T00:39:05.043 回答
1

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

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

于 2012-05-03T00:46:29.113 回答
0

可以使用 windows 中包含的 msg.exe 工具。使用命令

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

如果您的 PC 没有 msg,请从某处下载。

于 2019-11-02T19:01:57.350 回答
-1

尝试查看这个项目的代码 - 它使用 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

于 2012-05-03T00:39:05.463 回答