【发布时间】:2010-11-01 23:02:40
【问题描述】:
我在客户端机器上有一个 Windows 窗体应用程序。我正在尝试通过 telnet 登录,将其关闭,更新一些文件,然后重新启动。
在客户端机器上使用 cmd 并输入 MyApp.exe 非常适合启动它。但是,如果我在 telnet 窗口中执行此操作,就会发生一些奇怪的事情:应用程序从它现在在进程列表中的位置开始,但它的任何表单都没有打开,也没有完成任何 log4net 日志记录。
发生了什么,我该如何解决?
编辑:这似乎是所有基于表单的 Windows 应用程序的情况。自己尝试一下:telnet localhost => 记事本。它会在用户界面中弹出,但不会在 ui 中弹出!
另外,我在所有这些机器上都安装了RAdmin?据我所知,它没有自动化设施,但也许它有什么可以帮助我的?
【问题讨论】:
-
发生的事情是应用程序正在启动,但没有与之关联的用户桌面。您将需要找到当前登录的用户帐户并在该用户权限下运行它。如果你在 telnet 用户下运行它,你会得到一个无头显示 - 在大多数情况下它无法与桌面交互。
-
Jason,您能解释一下如何以 telnet 用户身份运行应用程序吗?这台计算机只有一个管理员用户,所以我既可以远程登录,也可以以管理员身份运行桌面。
-
只是出于好奇,您有什么不能使用远程桌面的原因吗?
-
@Jon B - 那么他将不得不再次手动登录信息亭,不是吗?
-
没错。我曾经使用远程管理员来执行此操作,但现在我们拥有大约 12 台这样的机器。编写一个 ruby 脚本要容易得多。或者我是这么认为的。
标签: .net windows winforms telnet