可以用CreateProcess来执行一个程序。如:
#include
#include
using namespace std;
int main()
{
TCHAR szCmdLine[]={TEXT("C:\\Program Files\\Internet Explorer\\iexplore.exe")};
STARTUPINFO si;
memset(&si, 0, sizeof(STARTUPINFO));
si.cb = sizeof(STARTUPINFO);
si.dwFlags = STARTF_USESHOWWINDOW;
si.wShowWindow = SW_SHOW;
PROCESS_INFORMATION pinfo;
if (!CreateProcess(NULL, szCmdLine, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pinfo))
{
cout<<"新进程创建失败!"<
}
else
{
cout<<"新进程创建成功!"<
return 0;
}
system是在本线程内运行的, 所以会阻塞住这个窗口,直到命令运行完了再继续
如果你希望运行的 1.vbs和你的窗口互相独立,不干扰的话可以用 exec系列函数,或者用 CreateProcess