Delphi CreateDir有时需要几秒钟(在其他pc目录中)
我只是尝试使用Delphi CreateDir有时需要几秒钟(在其他pc目录中),delphi,delphi-7,Delphi,Delphi 7,我只是尝试使用CreateDir函数在其他PC(网络PC)中创建目录 uses DateUtils; var StartDate,EndDate:TDatetime begin StartDate:=Now; if CreateDir([NetworkPC_Folder]) then begin EndDate:=Now; Showmessage( 'Succesfull !'+sLineBreak+ 'It takes '+IntToStr
CreateDir
函数在其他PC(网络PC)中创建目录
uses DateUtils;
var StartDate,EndDate:TDatetime
begin
StartDate:=Now;
if CreateDir([NetworkPC_Folder]) then
begin
EndDate:=Now;
Showmessage(
'Succesfull !'+sLineBreak+
'It takes '+IntToStr(MilliSecondsBetween(StartDate,EndDate))+' ms ');
end else
begin
EndDate:=Now;
Showmessage(
'Failed !'+sLineBreak+
'Error Code is '+IntToStr(GetLastError)+sLineBreak+
'It takes '+IntToStr(MilliSecondsBetween(StartDate,EndDate))+' ms ');
end;
end;
第一次尝试成功了
-返回值为True,创建成功
-工作速度快(但有时也需要很长时间)
第二次尝试成功了
-返回值为False,因为目录已存在
-快速工作
在一次X尝试中,它起了作用
-但需要几秒钟才能给出结果值
我只是好奇为什么有时候会花更长的时间
Delphi7中检查目录(如果目录不存在,则创建目录)的其他功能是否比在网络PC中检查/创建文件夹的CreateDir
更快
注意:-
CreateDir
在本地PC中总是很快-快速意味着需要0秒
-稍长一点意味着需要1-7秒Delphi与此无关。这是一个winapi问题。在执行代码时运行Wireshark/Message Analyzer/Netmon(选择您的选项),并在响应速度较慢时查看响应时间。更可能的是,它与网络相关。CreateDir使用CreateDirectory Windows API,从我在web上看到的内容来看;它可能会在网络路径上遇到延迟。一位人士指出,在其他操作系统上创建网络密集型应用程序的开发人员在将该应用程序移植到Windows时会遇到困难。在继续编码之前,我至少会先消除网络无响应的可能性。测试它的位只是为了确保。好吧,所以我不能一直让它变快,因为它只是关于网络响应时间。你必须确定问题不仅仅是网络造成的。如果你排除了网络的原因(包括你的电脑和电脑上的软件),那么我认为是Windows的操作方式导致了这个问题。Delphi与此无关。这是一个winapi问题。在执行代码时运行Wireshark/Message Analyzer/Netmon(选择您的选项),并在响应速度较慢时查看响应时间。更可能的是,它与网络相关。CreateDir使用CreateDirectory Windows API,从我在web上看到的内容来看;它可能会在网络路径上遇到延迟。一位人士指出,在其他操作系统上创建网络密集型应用程序的开发人员在将该应用程序移植到Windows时会遇到困难。在继续编码之前,我至少会先消除网络无响应的可能性。测试它的位只是为了确保。好吧,所以我不能一直让它变快,因为它只是关于网络响应时间。你必须确定问题不仅仅是网络造成的。如果你排除了网络的原因(包括你的电脑和电脑上的软件),那么我认为是Windows的操作方式导致了这个问题。