📄 subject_65010.htm
字号:
<p>
序号:65010 发表者:mm2003 发表日期:2003-12-15 09:30:44
<br>主题:如何使用CREATEPROCESS()?
<br>内容:我现在需要用CREATEPROCESS()调用另外一个程序,这个程序在CONSOLE模式下运行可以看出运行是否成功,我现在用CREATEPROCESS()也想显示出一个CONSOLE窗口(需要能够暂停下来以便我查看运行结果),这该如何实现呢?我现在用CREATE_NEW_CONSOLE选项出来的窗口总是一闪就不见了。
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:Chenny 回复日期:2003-12-15 09:47:14
<br>内容:调用ShowWindow( SW_SHOW ); 试试<BR><BR>或者是你的无模式对话框的ONCancal函数没有重载?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:mm2003 回复日期:2003-12-15 10:50:50
<br>内容:你可能搞错了,我调用的程序是一个在控制台下运行的程序,谈不上什么对话框
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:浪际天涯 回复日期:2003-12-15 11:02:03
<br>内容://执行程序<BR> PROCESS_INFORMATION pro_info;<BR> STARTUPINFO startupinfo;<BR> <BR> startupinfo.cb=sizeof(startupinfo);<BR> startupinfo.wShowWindow=SW_SHOWDEFAULT;<BR> startupinfo.lpReserved=NULL;<BR> startupinfo.lpDesktop=NULL;<BR> startupinfo.lpTitle=NULL;<BR> startupinfo.dwX=0;<BR> startupinfo.dwY=0;<BR> startupinfo.dwXSize=200;<BR> startupinfo.dwYSize=300;<BR> startupinfo.dwXCountChars=500;<BR> startupinfo.dwYCountChars=500;<BR> startupinfo.dwFlags=STARTF_USESHOWWINDOW;<BR> startupinfo.wShowWindow=SW_HIDE;<BR> startupinfo.cbReserved2=0;<BR> startupinfo.lpReserved2=NULL;<BR> startupinfo.hStdInput=stdin;<BR> startupinfo.hStdOutput=stdout;<BR> startupinfo.hStdError=stderr;<BR> CString str;<BR> str="cmmpic.exe";<BR> if(!CreateProcess(NULL,(LPTSTR)(LPCTSTR)str,NULL,NULL,FALSE,CREATE_DEFAULT_ERROR_MODE,NULL,NULL,&startupinfo,&pro_info))<BR> {<BR> return;<BR> }<BR> //WaitForSingleObject(pro_info.hProcess,INFINITE);<BR>//结束进程<BR> CloseHandle(pro_info.hProcess);
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:mm2003 回复日期:2003-12-15 11:12:58
<br>内容:又来了,你这段代码根本不能满足我的要求
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:Chenny 回复日期:2003-12-15 11:17:03
<br>内容:up<BR>你搞得好高深哦,我看来是不明白了!<BR><BR>^_^<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:浪际天涯 回复日期:2003-12-15 11:19:27
<br>内容:哦,那我也不能帮你了
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:浪际天涯 回复日期:2003-12-15 11:27:44
<br>内容:我段代码应该没有问题:<BR>SHELLEXECUTEINFO ShExecInfo = {0};<BR>ShExecInfo.cbSize = sizeof(SHELLEXECUTEINFO);<BR>ShExecInfo.fMask = SEE_MASK_NOCLOSEPROCESS;<BR>ShExecInfo.hwnd = NULL;<BR>ShExecInfo.lpVerb = NULL;<BR>ShExecInfo.lpFile = "c:\\winnt\\system32\\CHKDSK.EXE"; <BR>ShExecInfo.lpParameters = ""; <BR>ShExecInfo.lpDirectory = NULL;<BR>ShExecInfo.nShow = SW_SHOW;<BR>ShExecInfo.hInstApp = NULL; <BR>ShellExecuteEx(&ShExecInfo);<BR>WaitForSingleObject(ShExecInfo.hProcess,INFINITE);<BR>这段代码可以实现你要的功能,但不是使用CreateProcess<BR>2003-12-15 11:34:37
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -