si.lpReserved2 = NULL;
BOOL ret = CreateProcess(NULL,"notepad.exe",NULL,NULL,FALSE,0,NULL,NULL,&si,&pi);
if(ret)
CloseHandle(pi.hThread);
WaitForSingleObject(pi.hProcess,INFINITE);
GetExitCodeProcess(pi.hProcess,&dwExitCode);
CloseHandle(pi.hProcess);
CString tmp;
tmp.Format("进程关闭",i);
AfxMessageBox(tmp);
TARTUPINFO StartupInfo;//创建进程所需的信息结构变量
PROCESS_INFORMATION ProcessInfo;
GetStartupInfo(&StartupInfo);
StartupInfo.lpReserved=NULL;
StartupInfo.lpDesktop=NULL;
StartupI...
在Windows中,要启动外部程序有几种方式:ShellExecuteEx,
CreateProcess
。
下面我们用
CreateProcess
来创建一个进程,并
隐藏
新进程的
窗口
。
#include "stdafx.h"
#include <windows.h>
#include <process.h>
#include <assert.h>
int _...
最近接触一个项目,vc中主
窗口
调用某个存在的EXE可执行文件在DOS(或者后台)执行,但是不想让用户看到这个执行文件,也就是不显示或者不创建
窗口
。从网上搜了很多总结了三种方法,希望对大家有用:
网上常见的两种方法(详细说明参考:http://blog.163.com/zhucongdzkd@126/blog/static/1399971932010780309154/):
方法一:将 Cr
//************************************
// Method: CreateMyBatOrProcess
// Access: public
// Returns: void
// CreateTime: 2018年07月18日
// Author: d
// Describe: CreateProce...
<br /><br />方法很简单,在
createprocess
调用时修改一下STARTUPINFO的参数,使其
隐藏
即可。<br />下面是代码示例:<br />PROCESS_INFORMATION pi;<br />STARTUPINFO si; //
隐藏
进程
窗口
<br />si.cb =
sizeof(STARTUPINFO);<br />si.lpReserved = NULL;<br />si.lpDesktop =
NULL;<br />si.lpTitle = NULL;<b
CreateProcess
启动
隐藏
的外部程序(其实就是CreateDesktop,然后指定STARTUPINFO.lpDesktop) - findumars - 博客园 (cnblogs.com)
学习计算机,往往先从Windows环境下学习编程,学习编程,往往从C学起,学习C,往往又从控制台程序学习,何为控制台,就是那个黑框白字的界面。对于这样一个最初认为奇陋无比而现在认为无所不能的编程平台,有时候需要将界面
隐藏
起来。那么如何做呢?方法1:在头文件下加上一句预处理命令:#pragma comment( linker, "/subsystem:\"windows\" /entry:\"mai...