| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1432 人关注过本帖
标题:[求助]多线程打开文件的问题
只看楼主 加入收藏
虫毛毛
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-6-12
收藏
 问题点数:0 回复次数:5 
[求助]多线程打开文件的问题

被搞的头晕脑胀了,跑来求助,期待大家的帮助啊~~~

我这是个delphi的程序,现在delphi里生成一个文件a,然后使用WinExec调用了一个exe程序对该文件a进行了读操作,下面接着又对这个a进行读写操作。总提示我I/O错误,哭,然后在运行exe的后面加了个代码:
fHandle:=FileOpen(fileName,fmShareExclusive );
while fHandle = -1 do
begin
Sleep(100) ;
fHandle := FileOpen(fileName,fmShareExclusive );
end;
FileClose(fHandle);

这个有没有问题啊,为什么加完了以后再对文件操作还是有I/O错误呢~~~

搜索更多相关主题的帖子: 线程 文件 FileOpen fHandle delphi 
2007-06-12 10:20
anthony634
Rank: 6Rank: 6
来 自:西南交大
等 级:贵宾
威 望:24
帖 子:653
专家分:10
注 册:2006-6-8
收藏
得分:0 

这段看不出什么哦,有别的代码么

2007-06-12 12:18
虫毛毛
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-6-12
收藏
得分:0 
程序是这样的。。。
N行代码。。。
for i=0 to m
begin
。。。。
AssignFile(sFile, ‘x’); 对x进行写操作
Rewrite(sFile);
。。。。
CloseFile(sFile);
。。。。
WinExec( 'a.exe',SW_Hide); 其中a.exe对文件x进行了一些读写操作
end

这样,当运行到a.exe对文件x进行读写操作时,程序又循环回对文件写,就提示I/O错误了。。。
我怎么判断a.exe已经对x的操作结束了呢。。。

请教各位老大。。。谢谢。。。
2007-06-12 13:55
虫毛毛
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-6-12
收藏
得分:0 
我在WinExec( 'a.exe',SW_Hide); 后面加了一楼的代码,想延迟下时间,可是好像没成功。。。怎么办啊。。。555
2007-06-12 13:57
anthony634
Rank: 6Rank: 6
来 自:西南交大
等 级:贵宾
威 望:24
帖 子:653
专家分:10
注 册:2006-6-8
收藏
得分:0 

看不出来,要不把代码帖全,要么自己检查下文件操作的部分

2007-06-12 17:40
fish0928
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2005-6-24
收藏
得分:0 

呵呵,是延时那写的有问题~~

[此贴子已经被作者于2007-6-13 10:16:30编辑过]

2007-06-13 07:36
快速回复:[求助]多线程打开文件的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026820 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved