首页 > 其他 > 详细

CreateProcess执行一个控制台程序,隐藏DOS窗口

时间:2015-04-16 14:06:46      阅读:119      评论:0      收藏:0      [点我收藏+]

STARTUPINFO   StartupInfo;//创建进程所需的信息结构变量    
GetStartupInfo(&StartupInfo);    
StartupInfo.lpReserved=NULL;    
StartupInfo.lpDesktop=NULL;    
StartupInfo.lpTitle=NULL;    
StartupInfo.dwX=0;    
StartupInfo.dwY=0;    
StartupInfo.dwXSize=0;    
StartupInfo.dwYSize=0;    
StartupInfo.dwXCountChars=500;    
StartupInfo.dwYCountChars=500;    
StartupInfo.dwFlags=STARTF_USESHOWWINDOW;    
StartupInfo.wShowWindow=SW_HIDE;    
//说明进程将以隐藏的方式在后台执行    
StartupInfo.cbReserved2=0;    
StartupInfo.lpReserved2=NULL;    
StartupInfo.hStdInput=stdin;    
StartupInfo.hStdOutput=stdout;    
StartupInfo.hStdError=stderr;    
PROCESS_INFORMATION   piProcess;    
BOOL   bRet;    
bRet   =   CreateProcess(modName,NULL,NULL,NULL,TRUE,CREATE_NO_WINDOW ,NULL,NULL,&StartupInfo,&piProcess);   
if(bRet)    
CloseHandle(piProcess.hThread);        
CloseHandle(piProcess.hProcess); 
注意其中的StartupInfo.dwFlags=STARTF_USESHOWWINDOW;是必须的,要不然showwindow的参数将无效,详细的MSDN上写得清楚

CreateProcess执行一个控制台程序,隐藏DOS窗口

原文:http://www.cnblogs.com/zsbBlog/p/4431701.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!