读书人

调用远道web service一个写日志方法

发布时间: 2013-01-01 14:04:20 作者: rapoo

调用远程web service一个写日志方法,但web service却无法打开本地文件。

function TintfServer.AddEmp(XMLstr: WideString): WideString;
var
Fl: tfilestream;
p: PAnsiChar;
begin
p := '123';
InitializeCriticalSection(log_ThreadLock);
EnterCriticalSection(log_ThreadLock);
try
fl:=TfileStream.Create ('c:\log.txt',fmOpenWrite or fmShareDenyNone);
fl.Position := Fl.Size;
Fl.Write(p^, StrLen(p));
Result := p;
finally
LeaveCriticalSection(log_ThreadLock);
end;
// Result := '<ROOT><MARK>0</MARK><MSG></MSG></ROOT>';
end;


本机调用虚拟机iis上这个dll的方法 显示错误‘can't open file'c:\log.txt',拒绝访问’

procedure TForm3.btn1Click(Sender: TObject);
var
Fl: tfilestream;
p: PAnsiChar;
begin
p := '123';
try
fl:=TfileStream.Create ('c:\log.txt',fmOpenWrite or fmShareDenyNone);
fl.Position := Fl.Size;
Fl.Write(p^, StrLen(p));
except
on e: Exception do ShowMessage(e.Message);
end;
end;


在虚拟机上运行这个正常写入 求解。
[解决办法]
右击:c:\a.log,属性->安全

增加everyone对该文件的write权限,确定,再试。

读书人网 >.NET

热点推荐