首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

在服务中无法启动应用程序界面解决办法

2012-04-11 
在服务中无法启动应用程序界面环境:Windows Server 2003在系统服务中,采用CreateProcess启动应用程序,在进

在服务中无法启动应用程序界面
环境:Windows Server 2003
在系统服务中,采用CreateProcess启动应用程序,在进程管理中,看到相关进程启动,但是无法看到界面。

C/C++ code
hScm=OpenSCManager(0, 0, SC_MANAGER_CREATE_SERVICE);hService=CreateService(  hScm,  _T("ServiceTest"),  _T("ServiceTest"),  SERVICE_ALL_ACCESS,  SERVICE_INTERACTIVE_PROCESS | SERVICE_WIN32_OWN_PROCESS,  SERVICE_AUTO_START,  SERVICE_ERROR_NORMAL,  "c:\\ServiceTest.exe",  0,0,0,0,0);PROCESS_INFORMATION pi;STARTUPINFO sti;ZeroMemory(&sti,sizeof(sti));sti.cb=sizeof(sti);sti.lpDesktop= "WinSta0\\Default";CreateProcess(strCmd,NULL,NULL,NULL,FALSE,0,NULL,NULL,&sti,&pi);

我在XP下测试的,是可以启动界面,就是在2003 Server上不行。

[解决办法]
这个问题经常出现
OpenProcessToken
DuplicateToken
WTSGetActiveConsoleSessionId
SetTokenInformation
CreateProcessAsUser
[解决办法]
探讨

安装服务的时候,会自动选上的。

热点排行