阿
阿宝
Unregistered / Unconfirmed
GUEST, unregistred user!
最近碰到一个问题,是这样的,我用winexec(‘’,SW_hide),其实这个问题在
以前的论坛里也讨论过但是,大家好像也没有找到很好的解决办法,高手帮我看
一下!!!!
--------------------------------
winexec('dir >c:/temp/dir_info.txt',sw_hide); //执行bat文件
repeat
//temp:=temp+1;
until FileExists('c:/temp/dir_info.txt');
***问题就在这里出现了**
当列出了第一个文件的时候,dir_info.txt其实就已经存在了,然后他就执行
了下面的语句,如果,dir出来的东西很很多,要一定的时间,那么,就会和
下面的语句冲突了,delphi出现错误提示。
assignfile(f,'c:/temp/dir_info.txt');
reset(f);
while not eof(f) do
begin
readln(f,mystr);
memo1.Lines.Add(mystr);
end;
closefile(f)
怎么办才能解决好这个问题?用延时的话其实也是很难解决的,
谁知道那个bat文件执行多少时间,又或者会浪费时间。
我还想了一个办法,就是这样的思路不知可行否,帮哦看一下
repeat
读c:/temp/dir_info.txt的时间,精确到秒即可存于filetime
读系统时间nowtime
时间差:=nowtime-filetime
until 时间差>2秒//反正是大于一定的时间;
然后可以队c:/temp/dir_info.txt进行操作
end;
编一个小东西就被这个问题给卡住了,真是一件痛苦的事情啊!!更何况我刚和delphi
好上,对他还是很陌生一点小东西就要查资料,苦啊。email:sluger@etang.com
以前的论坛里也讨论过但是,大家好像也没有找到很好的解决办法,高手帮我看
一下!!!!
--------------------------------
winexec('dir >c:/temp/dir_info.txt',sw_hide); //执行bat文件
repeat
//temp:=temp+1;
until FileExists('c:/temp/dir_info.txt');
***问题就在这里出现了**
当列出了第一个文件的时候,dir_info.txt其实就已经存在了,然后他就执行
了下面的语句,如果,dir出来的东西很很多,要一定的时间,那么,就会和
下面的语句冲突了,delphi出现错误提示。
assignfile(f,'c:/temp/dir_info.txt');
reset(f);
while not eof(f) do
begin
readln(f,mystr);
memo1.Lines.Add(mystr);
end;
closefile(f)
怎么办才能解决好这个问题?用延时的话其实也是很难解决的,
谁知道那个bat文件执行多少时间,又或者会浪费时间。
我还想了一个办法,就是这样的思路不知可行否,帮哦看一下
repeat
读c:/temp/dir_info.txt的时间,精确到秒即可存于filetime
读系统时间nowtime
时间差:=nowtime-filetime
until 时间差>2秒//反正是大于一定的时间;
然后可以队c:/temp/dir_info.txt进行操作
end;
编一个小东西就被这个问题给卡住了,真是一件痛苦的事情啊!!更何况我刚和delphi
好上,对他还是很陌生一点小东西就要查资料,苦啊。email:sluger@etang.com