lib/windows/file.rb in windows-pr-0.8.7 vs lib/windows/file.rb in windows-pr-0.9.0
- old
+ new
@@ -1,11 +1,12 @@
require 'windows/unicode'
-include Windows
+require 'windows/security'
module Windows
module File
include Windows::Unicode
+ include Windows::Security
API.auto_namespace = 'Windows::File'
API.auto_constant = true
API.auto_method = true
API.auto_unicode = true
@@ -13,10 +14,11 @@
FILE_BEGIN = 0
FILE_CURRENT = 1
FILE_END = 2
# File Attributes
+
FILE_ATTRIBUTE_READONLY = 0x00000001
FILE_ATTRIBUTE_HIDDEN = 0x00000002
FILE_ATTRIBUTE_SYSTEM = 0x00000004
FILE_ATTRIBUTE_DIRECTORY = 0x00000010
FILE_ATTRIBUTE_ARCHIVE = 0x00000020
@@ -28,56 +30,28 @@
FILE_ATTRIBUTE_COMPRESSED = 0x00000800
FILE_ATTRIBUTE_OFFLINE = 0x00001000
FILE_ATTRIBUTE_NOT_CONTENT_INDEXED = 0x00002000
# File types
+
FILE_TYPE_UNKNOWN = 0x0000
FILE_TYPE_DISK = 0x0001
FILE_TYPE_CHAR = 0x0002
FILE_TYPE_PIPE = 0x0003
FILE_TYPE_REMOTE = 0x8000
- # File security and access rights
- APPLICATION_ERROR_MASK = 0x20000000
- ERROR_SEVERITY_SUCCESS = 0x00000000
- ERROR_SEVERITY_INFORMATIONAL = 0x40000000
- ERROR_SEVERITY_WARNING = 0x80000000
- ERROR_SEVERITY_ERROR = 0xc0000000
+ # File compression constants
+
COMPRESSION_FORMAT_NONE = 0
COMPRESSION_FORMAT_DEFAULT = 1
COMPRESSION_FORMAT_LZNT1 = 2
COMPRESSION_ENGINE_STANDARD = 0
COMPRESSION_ENGINE_MAXIMUM = 256
- ACCESS_ALLOWED_ACE_TYPE = 0
- ACCESS_DENIED_ACE_TYPE = 1
ANYSIZE_ARRAY = 1
- SYSTEM_AUDIT_ACE_TYPE = 2
- SYSTEM_ALARM_ACE_TYPE = 3
- OBJECT_INHERIT_ACE = 1
- CONTAINER_INHERIT_ACE = 2
- NO_PROPAGATE_INHERIT_ACE = 4
- INHERIT_ONLY_ACE = 8
- VALID_INHERIT_FLAGS = 16
- SUCCESSFUL_ACCESS_ACE_FLAG = 64
- FAILED_ACCESS_ACE_FLAG = 128
- DELETE = 0x00010000
- READ_CONTROL = 0x20000
- WRITE_DAC = 0x40000
- WRITE_OWNER = 0x80000
- SYNCHRONIZE = 0x100000
- STANDARD_RIGHTS_REQUIRED = 0xf0000
- STANDARD_RIGHTS_READ = 0x20000
- STANDARD_RIGHTS_WRITE = 0x20000
- STANDARD_RIGHTS_EXECUTE = 0x20000
- STANDARD_RIGHTS_ALL = 0x1f0000
- SPECIFIC_RIGHTS_ALL = 0xffff
- ACCESS_SYSTEM_SECURITY = 0x1000000
- MAXIMUM_ALLOWED = 0x2000000
- GENERIC_READ = 0x80000000
- GENERIC_WRITE = 0x40000000
- GENERIC_EXECUTE = 0x20000000
- GENERIC_ALL = 0x10000000
+
+ # File security and access rights
+
FILE_READ_DATA = 1
FILE_LIST_DIRECTORY = 1
FILE_WRITE_DATA = 2
FILE_ADD_FILE = 2
FILE_APPEND_DATA = 4
@@ -91,10 +65,10 @@
FILE_TRAVERSE = 32
FILE_DELETE_CHILD = 64
FILE_READ_ATTRIBUTES = 128
FILE_WRITE_ATTRIBUTES = 256
- FILE_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x1ff
+ FILE_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x1FF
FILE_GENERIC_READ =
STANDARD_RIGHTS_READ |
FILE_READ_DATA |
FILE_READ_ATTRIBUTES |