如何跟踪用winexec打开的进程,看其中途是否被终止? 如何跟踪用winexec打开的进程,看其中途是否被终止?即中途用户安了取消按钮,则返回false,没有取消返回ture. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用winexec是不行的,可以用createProcess()::WinExec("notepad",SW_SHOW)等于PROCESS_INFORMATION ProcessInfo; STARTUPINFO StartupInfo; //This is an [in] parameter ZeroMemory(&StartupInfo, sizeof(StartupInfo)); StartupInfo.cb = sizeof StartupInfo ; //Only compulsory field if(!CreateProcess("notepad", NULL, NULL,NULL,FALSE,0,NULL, NULL,&StartupInfo,&ProcessInfo)) { MessageBox("The process could not be started..."); return; } WaitForSingleObject(ProcessInfo.hProcess,INFINITE); CloseHandle(ProcessInfo.hThread); CloseHandle(ProcessInfo.hProcess); 无论是用WINEXEC还是CREATEPROCESS都无法知道那个被打开的进程在执行中做的动作,除非那个进程是你写的,你在其中加入了某种功能使之可以和外部其他进程进行通讯。 局域网间发送消息(msg, net send) 添加了与菜单对应的工具栏按钮后导致不断刷新 datagrid中如何实现增加check,来实现批量删除数据?? 获得线程的状态 问一下看书的顺序. VC中怎样分析程序中各个函数的执行时间 怎么样让m_hWnd不为NULL? 大家讨论讨论吧! 请问Win32 API中有没有画饼状图的函数? 【怎么判断一个按钮是否可用?】 请问为什么CTreeCtrl不能正常收到WM_CONTEXTMENU消息? 傻傻的一问:INT_PTR类型赋给int是,有警告,该怎么处理?
::WinExec("notepad",SW_SHOW)等于PROCESS_INFORMATION ProcessInfo;
STARTUPINFO StartupInfo; //This is an [in] parameter
ZeroMemory(&StartupInfo, sizeof(StartupInfo));
StartupInfo.cb = sizeof StartupInfo ; //Only compulsory field
if(!CreateProcess("notepad", NULL,
NULL,NULL,FALSE,0,NULL,
NULL,&StartupInfo,&ProcessInfo))
{
MessageBox("The process could not be started...");
return;
}
WaitForSingleObject(ProcessInfo.hProcess,INFINITE);
CloseHandle(ProcessInfo.hThread);
CloseHandle(ProcessInfo.hProcess);