
24.07.2009, 13:45
|
Прохожий
|
|
Регистрация: 09.09.2008
Сообщения: 34
Репутация: 10
|
|
Переделал вот так:
Код:
implementation
{$R *.dfm}
function GetUserFromWindows: string;
var
UserName : string;
UserNameLen : Dword;
begin
UserNameLen := 255;
SetLength(userName, UserNameLen);
if GetUserName(PChar(UserName), UserNameLen) then
Result := Copy(UserName,1,UserNameLen - 1)
else
Result := 'Unknown';
end;
procedure TForm1.AddStrToFile(U: string; const FileName: string; doNextLine: boolean);
const
CR=#13#10;
var
f:TFileStream;
begin
if FileExists(FileName)
then f:=TFileStream.Create(FileName,fmOpenWrite+fmShareDenyNone)
else
begin
f:=TFileStream.Create(FileName,fmCreate);
end;
f.Position:=f.Size;
if doNextLine and (f.Size> 0)
then f.Write(CR,2);
f.Write(pointer(U)^,length(U));
f.Destroy;
end;
procedure TForm1.FormCreate(Sender: TObject);
const
FILEPATH = 'log.txt';
var
str : string;
begin
str:= Copy(FILEPATH, 1, Pos(#13#10, FILEPATH) + 1);
if Pos(GetUserFromWindows, FILEPATH) < 0 then
AddStrToFile(GetUserFromWindows, FILEPATH, true)
else
exit;
end;
Но вот в этом месте (в последней процедуре)
Код:
if Pos(GetUserFromWindows, FILEPATH) < 0 then
не могу понять, почему все время равно нулю?
|