DirectoryExists return 服务检查网络文件夹时为 False
DirectoryExists return False when service check on network folder
我正在尝试使用服务应用程序中的 delphi 函数 DirectoryExists 检查网络文件夹中的目录是否存在。地址如 //[ip 地址]/thefolder。文件夹存在于网络 pc 中。但在使用此功能时始终给出 False(未找到)的结果。但是当我在非服务应用程序(桌面应用程序)中使用 DirectoryExists 时,该函数给出结果为真(文件夹存在/找到)。我已经阅读了所有关于 DirectoryExists 的文章,但仍然无法正常工作(大多数谈论的是桌面应用程序)。
我使用的是 Delphi 2007。
使用 Windows Server 2012 和 Windows XP。
implementation
{$R *.DFM}
procedure TsvcMyService.ServiceStart(Sender: TService;
var Started: Boolean);
begin
Timer1.Enabled:=True;
end;
procedure TsvcMyService.Timer1Timer(Sender: TObject);
begin
if DirectoryExists(\[ip address]\NetworkFolder) then
begin
LogMessage(' Exists !',EVENTLOG_SUCCESS,0,1234);
end else
begin
LogMessage(' Not Exists !',EVENTLOG_ERROR_TYPE,0,1234);
end;
end;
Local System 帐户无权访问网络资源。
尝试使用 Network Service or Local Service 帐户。或者,创建一个具有您需要的网络权限的实际用户帐户。
我正在尝试使用服务应用程序中的 delphi 函数 DirectoryExists 检查网络文件夹中的目录是否存在。地址如 //[ip 地址]/thefolder。文件夹存在于网络 pc 中。但在使用此功能时始终给出 False(未找到)的结果。但是当我在非服务应用程序(桌面应用程序)中使用 DirectoryExists 时,该函数给出结果为真(文件夹存在/找到)。我已经阅读了所有关于 DirectoryExists 的文章,但仍然无法正常工作(大多数谈论的是桌面应用程序)。
我使用的是 Delphi 2007。 使用 Windows Server 2012 和 Windows XP。
implementation
{$R *.DFM}
procedure TsvcMyService.ServiceStart(Sender: TService;
var Started: Boolean);
begin
Timer1.Enabled:=True;
end;
procedure TsvcMyService.Timer1Timer(Sender: TObject);
begin
if DirectoryExists(\[ip address]\NetworkFolder) then
begin
LogMessage(' Exists !',EVENTLOG_SUCCESS,0,1234);
end else
begin
LogMessage(' Not Exists !',EVENTLOG_ERROR_TYPE,0,1234);
end;
end;
Local System 帐户无权访问网络资源。
尝试使用 Network Service or Local Service 帐户。或者,创建一个具有您需要的网络权限的实际用户帐户。