我正在创建 Windows 服务并通过它启动一个 exe 应用程序,
从这个链接我创建了一个 Windows 服务Windows 服务
但是当我创建设置和部署然后如果我安装时,从服务调用的 exe 将作为本地服务启动。
我仍然可以将任务管理器中的 xxx.exe 作为本地服务。
即使有这个帮助我也想不通:从 Windows 服务启动 GUI
如何以我登录的本地用户名启动此 exe?
我正在创建 Windows 服务并通过它启动一个 exe 应用程序,
从这个链接我创建了一个 Windows 服务Windows 服务
但是当我创建设置和部署然后如果我安装时,从服务调用的 exe 将作为本地服务启动。
我仍然可以将任务管理器中的 xxx.exe 作为本地服务。
即使有这个帮助我也想不通:从 Windows 服务启动 GUI
如何以我登录的本地用户名启动此 exe?
您有许多选项可用于创建在与父进程不同的用户下运行的进程:
CreateProcessAsUser
或CreateProcessWithTokenW
。这些要求您获取代表用户的主令牌,调用LogonUser
或DuplicateTokenEx
。CreateProcessWithLogonW
它允许您将用户名和密码指定为参数。但是,如果您希望您创建的进程出现在交互式桌面上,则需要做很多工作。本文介绍了详细信息:在 Windows Vista 和更高版本中从 Windows 服务启动交互式进程。