linux – 使用winexe启动Windows进程

linux – 使用winexe启动Windows进程,第1张

概述当我在 Windows上时,我使用 PsExec在其他Windows机器上启动进程.我现在有一个案例,我想从Linux机器上做到这一点. 幸运的是有一个小程序,它应该像PsExec一样工作,只适用于Linux-World.我没有安装它的问题,我能够启动像cmd.exe这样的进程. 问题是我无法启动Windows用户可见的进程.如果我启动calc.exe,我可以看到它是在任务管理器中启动的,但是没有 当我在 Windows上时,我使用 PsExec在其他windows机器上启动进程.我现在有一个案例,我想从linux机器上做到这一点.

幸运的是有一个小程序,它应该像PsExec一样工作,只适用于linux-World.我没有安装它的问题,我能够启动像cmd.exe这样的进程.

问题是我无法启动windows用户可见的进程.如果我启动calc.exe,我可以看到它是在任务管理器中启动的,但是没有GUI.

题:
如何启动windows机器上实际可见的进程?

解决方法

How is it possible to start processes that are actually visible on the
windows machine?

一个好的开始是在当前登录用户的会话中创建进程.如果只有一个人登录,那通常是会话1.如果有多个人登录,则可能是会话2或3或27.您必须首先在wtsAPI32.dll中运行代码,以查找谁连接到哪个会话.在windows的现代版本中,会话0保留用于服务和系统功能.

您正在会话0中启动进程,因此没有人可以看到它.

psexec可以启动一个远程进程,让你选择一个不同的会话来启动它,但我不知道任何linux等价物.我查看了winexe的手册页,它似乎没有那个选项.

编辑:微软的官方立场是远程启动交互式进程是一个太大的安全风险,因此他们会阻止你这样做……但如果我们愿意变脏,我们仍然可以解决它:

schtasks.exe /create /S COmpuTERname /RU "NT AUTHORITY\SYstem" /RL HIGHEST /SC ONSTART /TN "RemoteProcess" /TR "program.exe \"argument 1\" \"argument 2\""schtasks.exe /Run /S COmpuTERname /I /TN "RemoteProcess"schtasks.exe /Delete /S COmpuTERname /TN "RemoteProcess"
总结

以上是内存溢出为你收集整理的linux – 使用winexe启动Windows进程全部内容,希望文章能够帮你解决linux – 使用winexe启动Windows进程所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1035858.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存