WaitForSingleObject的问题,不知道那位可以解答
jmylf 2003-08-16 03:59:58 //执行外部程序,等待结束
void sinstep(char *execname){
char ln[100];
int Make;
char str[100]="";
char *tip="不能执行程序:";
sprintf(ln,"%s\\%s",GetCurrentDir().c_str(),execname);
char path[100];
sprintf(path,"%s",GetCurrentDir().c_str());
chdir(path);
//ShowMessage(ln);
STARTUPINFO startinfo;
PROCESS_INFORMATION procInfo;
strcat(str,tip);
strcat(str, ln);
GetStartupInfo(&startinfo);
startinfo.dwFlags =STARTF_USESHOWWINDOW;
startinfo.wShowWindow=SW_HIDE ;
Make=CreateProcess(NULL,ln,NULL,NULL,false,0,NULL,NULL,&startinfo,&procInfo);
if (!Make)
{
MessageBox(NULL, str, "提示", MB_OK);
}
Form1->Memo1->Lines->Add("正在执行.....");
Form1->Memo1->Lines->Add(execname);
WaitForSingleObject(procInfo.hProcess, INFINITE);
Form1->Memo1->Lines->Add("执行结束");
}
我想实现底是在等待外部程序执行结束底时候能够作个进度条,不知道如何获取外部程序的执行时间。不然进度条画的也没什么意思,现在只好搞个memo,上面写两句话