diff --git a/rtl/win/sysfile.inc b/rtl/win/sysfile.inc index 979b713988..78a8d58ba2 100644 --- a/rtl/win/sysfile.inc +++ b/rtl/win/sysfile.inc @@ -198,8 +198,9 @@ procedure do_open(var f;p:pchar;flags:longint); when (flags and $10000) there is no check for close (needed for textfiles) } Const - file_Share_Read = $00000001; - file_Share_Write = $00000002; + file_Share_Read = $00000001; + file_Share_Write = $00000002; + file_Share_Delete = $00000004; Var shflags, oflags,cd : longint; diff --git a/rtl/win/sysutils.pp b/rtl/win/sysutils.pp index 708af740de..2c4f27f95c 100644 --- a/rtl/win/sysutils.pp +++ b/rtl/win/sysutils.pp @@ -48,6 +48,12 @@ Var Win32MinorVersion, Win32BuildNumber : dword; Win32CSDVersion : ShortString; // CSD record is 128 bytes only? +Const + { it can be discussed whether fmShareDenyNone means read and write or read, write and delete, see + also http://bugs.freepascal.org/view.php?id=8898, this allows users to configure the used + value + } + fmShareDenyNoneFlags : DWord = 3; { Compatibility with Delphi } function Win32Check(res:boolean):boolean;inline;