我有一个 Web 应用程序,其中包含启动 EXE 的命令
Process.Start("MyApp.exe")
然后该应用程序将运行putty.exe
并SendKeys
模拟应用程序的击键。
如果我用我的用户名启动,或者即使我使用 运行,应用程序也能正常工作runas /user:anyother_user
。
问题是,当MyApp.exe
启动时putty.exe
(当有人打开某个网页时应该会发生这种情况),我可以看到应用程序已启动,并且为和创建了一个进程MyApp.EXE
。putty.exe
但是,我或任何用户似乎都看不到任何东西。主要是因为应用程序是在下启动的NT AUTHORITY\NETWORK SERVICE
。我可以说,发送的所有击键都没有MyApp
到达腻子。
我怀疑这是由于putty
它在用户下第一次运行时启动了一个对话框(提示建立安全连接等)。
我的问题是:
- 我能以某种方式告诉腻子避免这些对话框吗?
- 我可以告诉
ntauthority\networkservice
它关闭由 Putty 引发的对话框吗? - 我可以查看
putty
由network service
? 启动的窗口吗,以便我可以自行关闭它,然后它就不会再出现了? - 我可以
putty
以任何其他用户身份运行吗(出于安全原因,无需存储任何密码)?
这些问题的任何答案都会帮助我实现我的目标。
答案1
该对话框似乎是接受远程服务器的主机密钥。Putty 要求确认主机密钥,以便将此密钥存储在想要连接到他的用户的注册表中。如果您想绕过此对话框,可以使用选项强制使用指定的主机密钥-hostkey
。
此外,您可以通过选项向 putty 说明如何使用存储在文本文件中的一系列命令-m
。
所有这些选项的解释如下:油灰