如果知道用winexec()创建的进程何时结束。
具体如下:
WinExec("cmd /c dir *.txt>a.txt",SW_HIDE);
如果知道何时a.txt创建结束。
如果不能够知道,用其它方法是否可以实现。
请给个小例子,高分。
具体如下:
WinExec("cmd /c dir *.txt>a.txt",SW_HIDE);
如果知道何时a.txt创建结束。
如果不能够知道,用其它方法是否可以实现。
请给个小例子,高分。
WIN 9X下查找隐藏进程实现方法
http://it.rising.com.cn/safety/syjq/syjq/020324.htm
判断WinExec的返回值。
If the function succeeds, the return value is greater than 31。
STARTUPINFO si={sizeof(si)};
PROCESS_INFORMATION pi;
//pCmdLine可以是你的“cmd /c dir *.txt>a.txt“命令行
intret=CreateProcess(NULL,pCmdLine,NULL,NULL,FALSE,
NORMAL_PRIORITY_CLASS,NULL,NULL,&si,&pi);
CloseHandle(pi.hThread);
m_handleChildProc=pi.hProcess;
SetTimer(1,100,NULL);
//设置一个计时器,在计时器处理函数中写如下代码:
DWORD dwWaitRet;
//m_handleChildProc为那个进程的句柄
dwWaitRet=WaitForSingleObject(m_handleChildProc,50);
//如果dwWaitRet!=WAIT_TIMEOUT则那个进程结束了
if(dwWaitRet!=WAIT_TIMEOUT)
{
CloseHandle(m_handleChildProc);
KillTimer(1);
}