同步执行其他程序(dos命令)
2011-02-01 09:27
260 查看
1. 调用标准system函数,如:system("net stop bservices");
2. 使用WaitForSingleObject函数:
void exec(AnsiString cmd)
{
STARTUPINFO si;
ZeroMemory(&si, sizeof(si));
si.cb = sizeof(STARTUPINFO);
PROCESS_INFORMATION pi;
BOOL res = CreateProcess(NULL,
cmd.c_str(), // 执行你的 dos 命令
NULL,
NULL,
NULL,
NORMAL_PRIORITY_CLASS | CREATE_NO_WINDOW,
NULL,
NULL,
&si,
&pi);
if (TRUE == res)
{
WaitForSingleObject(pi.hProcess,INFINITE);
CloseHandle(pi.hProcess);
CloseHandle(pi.hThread);
}
}
注:ShellExecute和WinExec是异步执行。
2. 使用WaitForSingleObject函数:
void exec(AnsiString cmd)
{
STARTUPINFO si;
ZeroMemory(&si, sizeof(si));
si.cb = sizeof(STARTUPINFO);
PROCESS_INFORMATION pi;
BOOL res = CreateProcess(NULL,
cmd.c_str(), // 执行你的 dos 命令
NULL,
NULL,
NULL,
NORMAL_PRIORITY_CLASS | CREATE_NO_WINDOW,
NULL,
NULL,
&si,
&pi);
if (TRUE == res)
{
WaitForSingleObject(pi.hProcess,INFINITE);
CloseHandle(pi.hProcess);
CloseHandle(pi.hThread);
}
}
注:ShellExecute和WinExec是异步执行。
相关文章推荐
- C#中利用process类调用外部程序以及执行dos命令 - ASP.NET
- 如何在ASP.NET程序里面执行DOS命令
- java执行命令或调用其他exe程序的代码范例
- [置顶] c#程序中如何执行 dos命令
- c#程序中如何执行 dos命令
- 一个执行Dos命令的窗口程序,与各位分享。
- Java程序执行Linux命令(JSP运行其他程序)
- C#中利用process类调用外部程序以及执行dos命令
- 在执行Java命令或eclipse启动程序,提示报错’jvm.cfg无法找到’的解决办法
- dos、bat批处理延时执行命令的两种方法
- if结合errorlevel使用:判断一个DOS命令执行成功与否
- dos下连续执行多个命令的另一种方法
- 远程利用telnet执行DOS命令
- DOS下编译执行java程序
- Ubuntu 点击桌面程序图标运行的程序和用命令sudo+可执行程序不一样
- VC中利用管道技术取得DOS或者命令行以及外部程序的执行结果
- ABAP--编写应用服务器执行外部命令的程序示例
- nohup命令让Linux下程序永远在后台执行
- 您试图从目录中执行 CGI、ISAPI 或其他可执行程序,但该目录不允许执行程序。--解决方法
- 兼容timeout的Java执行外部命令的小程序