mirror of
https://github.com/CloudDelphi/Virtual-File-System
synced 2025-12-19 09:53:54 +01:00
Replaced HasFlag with new flag helper routines
This commit is contained in:
parent
76700b64e8
commit
a73db6fc47
@ -30,11 +30,7 @@
|
|||||||
<Borland.Personality>Delphi.Personality</Borland.Personality>
|
<Borland.Personality>Delphi.Personality</Borland.Personality>
|
||||||
<Borland.ProjectType>VCLApplication</Borland.ProjectType>
|
<Borland.ProjectType>VCLApplication</Borland.ProjectType>
|
||||||
<BorlandProject>
|
<BorlandProject>
|
||||||
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">True</VersionInfo><VersionInfo Name="MajorVer">1</VersionInfo><VersionInfo Name="MinorVer">0</VersionInfo><VersionInfo Name="Release">2</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">1049</VersionInfo><VersionInfo Name="CodePage">1251</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName">Alexander Shostak (aka EtherniDee)</VersionInfoKeys><VersionInfoKeys Name="FileDescription">Virtual File System</VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.0.2.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Source><Source Name="MainSource">Vfs.dpr</Source></Source><Excluded_Packages>
|
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">True</VersionInfo><VersionInfo Name="MajorVer">1</VersionInfo><VersionInfo Name="MinorVer">0</VersionInfo><VersionInfo Name="Release">2</VersionInfo><VersionInfo Name="Build">4</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">1049</VersionInfo><VersionInfo Name="CodePage">1251</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName">Alexander Shostak (aka EtherniDee)</VersionInfoKeys><VersionInfoKeys Name="FileDescription">Virtual File System</VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.0.2.4</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Source><Source Name="MainSource">Vfs.dpr</Source></Source><Excluded_Packages>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<Excluded_Packages Name="$(BDS)\bin\dcloffice2k100.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
|
<Excluded_Packages Name="$(BDS)\bin\dcloffice2k100.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
|
||||||
|
|||||||
@ -577,7 +577,7 @@ begin
|
|||||||
|
|
||||||
with SysScanDir(AbsRealPath, '*') do begin
|
with SysScanDir(AbsRealPath, '*') do begin
|
||||||
while IterNext(FileInfo.FileName, @FileInfo.Base) do begin
|
while IterNext(FileInfo.FileName, @FileInfo.Base) do begin
|
||||||
if Utils.HasFlag(Windows.FILE_ATTRIBUTE_DIRECTORY, FileInfo.Base.FileAttributes) then begin
|
if Utils.Flags(FileInfo.Base.FileAttributes).Have(Windows.FILE_ATTRIBUTE_DIRECTORY) then begin
|
||||||
if (FileInfo.FileName <> '.') and (FileInfo.FileName <> '..') then begin
|
if (FileInfo.FileName <> '.') and (FileInfo.FileName <> '..') then begin
|
||||||
Subdirs.Add(TFileInfo.Create(@FileInfo));
|
Subdirs.Add(TFileInfo.Create(@FileInfo));
|
||||||
end;
|
end;
|
||||||
|
|||||||
@ -149,8 +149,8 @@ begin
|
|||||||
AbsRootDir := VfsUtils.NormalizePath(RootDir);
|
AbsRootDir := VfsUtils.NormalizePath(RootDir);
|
||||||
AbsModsDir := VfsUtils.NormalizePath(ModsDir);
|
AbsModsDir := VfsUtils.NormalizePath(ModsDir);
|
||||||
result := (AbsRootDir <> '') and (AbsModsDir <> '') and
|
result := (AbsRootDir <> '') and (AbsModsDir <> '') and
|
||||||
VfsUtils.GetFileInfo(AbsRootDir, FileInfo) and Utils.HasFlag(Windows.FILE_ATTRIBUTE_DIRECTORY, FileInfo.Base.FileAttributes) and
|
VfsUtils.GetFileInfo(AbsRootDir, FileInfo) and Utils.Flags(FileInfo.Base.FileAttributes).Have(Windows.FILE_ATTRIBUTE_DIRECTORY) and
|
||||||
VfsUtils.GetFileInfo(AbsModsDir, FileInfo) and Utils.HasFlag(Windows.FILE_ATTRIBUTE_DIRECTORY, FileInfo.Base.FileAttributes);
|
VfsUtils.GetFileInfo(AbsModsDir, FileInfo) and Utils.Flags(FileInfo.Base.FileAttributes).Have(Windows.FILE_ATTRIBUTE_DIRECTORY);
|
||||||
|
|
||||||
if result then begin
|
if result then begin
|
||||||
ModPathPrefix := VfsUtils.AddBackslash(AbsModsDir);
|
ModPathPrefix := VfsUtils.AddBackslash(AbsModsDir);
|
||||||
|
|||||||
@ -111,7 +111,7 @@ begin
|
|||||||
|
|
||||||
// Return cached VFS file info
|
// Return cached VFS file info
|
||||||
if RedirectedPath <> '' then begin
|
if RedirectedPath <> '' then begin
|
||||||
if not HadTrailingDelim or Utils.HasFlag(FILE_ATTRIBUTE_DIRECTORY, FileInfo.Base.FileAttributes) then begin
|
if not HadTrailingDelim or Utils.Flags(FileInfo.Base.FileAttributes).Have(FILE_ATTRIBUTE_DIRECTORY) then begin
|
||||||
FileInformation.CreationTime := FileInfo.Base.CreationTime;
|
FileInformation.CreationTime := FileInfo.Base.CreationTime;
|
||||||
FileInformation.LastAccessTime := FileInfo.Base.LastAccessTime;
|
FileInformation.LastAccessTime := FileInfo.Base.LastAccessTime;
|
||||||
FileInformation.LastWriteTime := FileInfo.Base.LastWriteTime;
|
FileInformation.LastWriteTime := FileInfo.Base.LastWriteTime;
|
||||||
@ -171,7 +171,7 @@ begin
|
|||||||
|
|
||||||
// Return cached VFS file info
|
// Return cached VFS file info
|
||||||
if RedirectedPath <> '' then begin
|
if RedirectedPath <> '' then begin
|
||||||
if not HadTrailingDelim or Utils.HasFlag(FILE_ATTRIBUTE_DIRECTORY, FileInfo.Base.FileAttributes) then begin
|
if not HadTrailingDelim or Utils.Flags(FileInfo.Base.FileAttributes).Have(FILE_ATTRIBUTE_DIRECTORY) then begin
|
||||||
FileInformation.CreationTime := FileInfo.Base.CreationTime;
|
FileInformation.CreationTime := FileInfo.Base.CreationTime;
|
||||||
FileInformation.LastAccessTime := FileInfo.Base.LastAccessTime;
|
FileInformation.LastAccessTime := FileInfo.Base.LastAccessTime;
|
||||||
FileInformation.LastWriteTime := FileInfo.Base.LastWriteTime;
|
FileInformation.LastWriteTime := FileInfo.Base.LastWriteTime;
|
||||||
|
|||||||
@ -506,7 +506,7 @@ var
|
|||||||
FileAttrs: integer;
|
FileAttrs: integer;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
result := GetFileAttrs(Path, FileAttrs) and Utils.HasFlag(Windows.FILE_ATTRIBUTE_DIRECTORY, FileAttrs);
|
result := GetFileAttrs(Path, FileAttrs) and Utils.Flags(FileAttrs).Have(Windows.FILE_ATTRIBUTE_DIRECTORY);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function SysOpenFile (const NtAbsPath: WideString; {OUT} var Res: Windows.THandle; const OpenMode: TSysOpenFileMode = OPEN_AS_ANY; const AccessMode: ACCESS_MASK = FILE_GENERIC_READ): boolean;
|
function SysOpenFile (const NtAbsPath: WideString; {OUT} var Res: Windows.THandle; const OpenMode: TSysOpenFileMode = OPEN_AS_ANY; const AccessMode: ACCESS_MASK = FILE_GENERIC_READ): boolean;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user