看板Programming
标 题Re: [问题] 如何执行 .bat 档案
发信站梦之大地 (Mon Jul 24 20:39:18 2006)
转信站ptt!ctu-reader!Spring!news.nctu!news.nsysu!news.mksh.phc!news.ccns.nck
※ 引述《[email protected] (无)》之铭言:
> 想请教一下各位。
> 目前我想在 BCB程式里。执行一个 .bat 档。
> ex:a.bat
> 请问有什麽 function可以完成。
> 同时也可知道, bat 档是否已执行完毕。
> 谢谢。
String exe="C:\\a.bat";
WinExec(exe.c_str(),SHOW_HIDE); //执行时不显示命令视窗
这方面的详细说明可参阅 BCB-Help-Windows SDK 查询 WinExec 的说明
至於要知道他是否已经执行完毕 是要用到 process 的东西
相关说明在 Windows SDK的说明里也有
STARTUPINFO si;
PROCESS_INFORMATION pi;
si.cb = sizeof(STARTUPINFO);
si.lpReserved = NULL;
si.lpDesktop = NULL;
si.lpTitle = NULL;
si.dwFlags = STARTF_USESHOWWINDOW;
si.cbReserved2 = 0;
si.lpReserved2 = NULL;
si.wShowWindow = SW_HIDE; // 让Dos视窗执行时,不要出现。
CreateProcess(NULL,
"dos command",NULL, NULL, TRUE,
CREATE_NEW_CONSOLE|NORMAL_PRIORITY_CLASS, NULL,
NULL, &si, &pi);
//确定做完
WaitForSingleObject(pi.hProcess, INFINITE);
--
菩提本无树 明镜亦非台
本来无一物 何处惹尘埃
~~~~禅宗六祖慧能
--
◢◣ ︵︵ █▔◣ █▔█ █▔▔ █▔█ █▆▉ █ █▔█ █◣█ █▔●
◢◤█◣◢◣ ︵︵ █ █ █▁◤ █▁▁ █▁█ ▉▉▉ █ █▁█ █◥█ █ █
梦之大地 逼逼ㄟ四 █▁◤ █ █ █▁▁ █ █ ▉▉▉ █▁ █ █ █ █ █▁◤
※ Origin: <bbs.ccns.ncku.edu.tw> ◆ From: 140.116.82.85
1F:→ thomas2005:谢谢。 ^_^ 219.68.115.81 07/24 21:02