[Lazarus] Safe temp file name
Aradeonas
aradeonas at operamail.com
Wed Nov 25 16:27:05 CET 2015
Thanks Graeme,Its like what I do so it seems Im doing OK. I looked at
the code and it seems it just remove { and }.
> if (LValue[1] = '{') and (LValue[cGUIDLength] = '}') then LValue
> := Copy(lValue, 2, cGUIDLength - 2); AAssignTo.AsString := LValue;
It seems it doesnt remove "-" .
> This may be an appropriate use for EnterCriticalSection and
> ExitCriticalSection, although why don't you just use a different
> "prefix" in the call to GetTempFile for each thread.
Yes I can but GUID is easier to use.
> I wasn't aware that GetTempFileName isn't threadsafe.
(Are you sure your code is correct?) Yea. If you look at the
implementation it just check until there isnt a file so if 2 thread get
a filename before they create it it cause a problem. In my case I made
100 thread and they will create temp file and use them,simple but some
time it will happen.
> var
GUID : TGUID; begin if CreateGUID(GUID) = 0 then begin MyFileName :=
GuiDToString(Guid); end;
Thanks.
Regards, Ara
--
http://www.fastmail.com - mmm... Fastmail...
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20151125/9508adcf/attachment-0003.html>
More information about the Lazarus
mailing list