windows – 服务可以产生登录会话吗?构建服务器问题

要在我的构建服务器上运行一些验收测试,我需要打开一个登录用户会话( white测试框架需要有一个“屏幕”来测试WPF UI).这显然是一个脆弱的设置,它在我们的过程中引入了相当多的摩擦.

是否有可能在后台运行一个Windows服务,然后可以“生成”它作为用户登录的会话,做一些工作(在这种情况下是测试),然后注销?还是有可能比我们现在正在做的更好的方式来处理我的情况?它变得令人沮丧,因为,例如,如果应用程序在某些时候崩溃,弹出异常对话框,冻结我们的构建服务器.我当时正在考虑禁止沃斯特森博士来解决这个问题,但我有这种感觉,我正走在一条充满危险的道路上.

首先,关于您的环境的更多细节有所帮助.我假设它是Windows 2003或Windows 2008 Server.

说实话,我不是这方面的专家,但谁使用这个盒子?如果您对该框具有管理员权限,则可以使用psexec(如果您还没有听说过它,则是一个免费的Sysinternals实用程序).您可以让它在控制台会话上启动一个进程(所以使用交互式桌面,用psexec的说法).如果您在具有正确注册表设置的框中自动登录,则可以让PsExec在安全设置被诅咒时执行此操作.注册表项包括以明文形式存储密码,因此我会锁定这样的帐户.

PsExec在远程执行控制台的远程系统上执行程序
应用程序以交互方式执

Usage: psexec [\\computer[,computer2[,...] | @file][-u user [-p psswd]][-n s][-l][-s|-e][-x][-i [session]][-c [-f|-v]][-w directory][-d][-<priority>][-a n,n,...] cmd [arguments]

. . .

     -d         Don't wait for process to terminate (non-interactive).
     -i         Run the program so that it interacts with the desktop of the

所以,为了它的价值,我想你可以开始一个会话,然后有一个预定的任务批处理脚本,查找登录用户后执行以下操作,如果你这样做,它会启动给定会话或交互式桌面的进程没有指定,它也不会等待进程退出.它只会产生它.

%sYstemDRIVE%\path\to\psexec.exe -i -d C:\path\to\your\app.exe

现在,如果您有一个Windows Server产品,我认为您可以使用console参数(现在是Windows 2008中的admin参数)偶尔使用RDP(mstsc.exe)登录.

然后,这是一个noobie的漫无边际.我可以通过这项工作离开基地.知识渊博的人可以提供帮助.

相关文章

Windows2012R2备用域控搭建 前置操作 域控主域控的主dns:自...
主域控角色迁移和夺取(转载) 转载自:http://yupeizhi.blo...
Windows2012R2 NTP时间同步 Windows2012R2里没有了internet时...
Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...