让程序一行一行的执行
想让下列程序先执行完第一条,在执行第二行.请给出原代码
winexec('C:\sqlany50\win32\dbbackup -c "uid=dba;pwd=sql;
dbf=D:\jyzdb.db" D:\ /y',1);
RenameFile('D:\jyzdb.db','D:\j01.db');
问题点数:20、回复次数:5Top
1 楼lotto(乐透)回复于 2000-08-29 12:28:00 得分 5
使用一个标志,在第一个命令执行之前,先做好标记,在两个语句之间增加循环语句,如果第一个命令没有执行完,就继续循环,否则跳出循环,继续执行下一条命令。Top
2 楼Michaelyfj(星星还是那颗星星)回复于 2000-08-29 12:41:00 得分 5
lotto的方法也许是解决办法之一,但并不是理想的方法;
我提供一个过程参考,基本上能达到你的目的:
procedure execute(ln:Pchar;nShow:Integer);
var
StartInfo : TStartupInfo;
ProcInfo : TProcessInformation;
begin
GetStartupInfo(StartInfo);
StartInfo.dwFlags:=STARTF_USESHOWWINDOW;
StartInfo.wShowWindow := nShow; //窗口显示状态
if CreateProcess(nil, PChar(ln), nil, nil, false, 0, nil, nil, StartInfo, ProcInfo)=False then
raise Exception.Create('不能执行程序 ' + ln);
WaitForSingleObject(ProcInfo.hProcess, INFINITE); //等待程序执行完毕
end;
至于调用(very easy):
Execute('C:\sqlany50\win32\dbbackup -c "uid=dba;pwd=sql;
dbf=D:\jyzdb.db" D:\ /y',1);
Top
3 楼JGTM2000(铁马小子)回复于 2000-08-31 02:02:00 得分 5
楼上所说极是。而楼上的楼上要记得在循环里面ProcessMessages和sleep,不然会吃掉无数CPU资源。Top
4 楼zhouzq()回复于 2000-08-31 08:52:00 得分 0
lookTop
5 楼kxy(手举穿肠毒药,怀抱刮骨钢刀)回复于 2000-09-13 14:39:00 得分 5
同意顶楼的楼下,顶楼的方法不好,建议不使用:)Top
相关问题
- 关于改变执行程序中某一行的数值!
- 我想在一行程序后停留三秒种再执行下行程序,该怎么办?
- 100分相送,怎样让程序在上一行代码执行完成后再执行下一行代码呀...
- 请问:在DataGrid中选中一行后按下Del键,此时程序究竟执行了怎样的操作?
- 就一行简单的代码,程序执行却错误,N久没有搞明白
- 请问:使用eclipse的Debug,如何知道程序单步执行到那一个类中的那一行
- 可执行程序
- 紧急: think in java里6.1章里的第二程序(原码见内)执行后,最后一行为什么会显示castille = Constructed
- 为何在TCusomGrid的Paint过程中第一行代码上下了断点,但在程序执行中不能产生中断?
- 关于可执行程序




