windows-pr 0.8.7 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGES +15 -0
- data/MANIFEST +9 -1
- data/lib/windows/clipboard.rb +1 -2
- data/lib/windows/com/automation.rb +58 -0
- data/lib/windows/com.rb +0 -1
- data/lib/windows/console.rb +0 -1
- data/lib/windows/debug.rb +0 -1
- data/lib/windows/device_io.rb +0 -1
- data/lib/windows/error.rb +37 -32
- data/lib/windows/eventlog.rb +5 -6
- data/lib/windows/file.rb +10 -36
- data/lib/windows/file_mapping.rb +0 -1
- data/lib/windows/filesystem.rb +0 -1
- data/lib/windows/gdi/bitmap.rb +0 -1
- data/lib/windows/gdi/device_context.rb +0 -1
- data/lib/windows/gdi/painting_drawing.rb +0 -1
- data/lib/windows/handle.rb +0 -1
- data/lib/windows/library.rb +0 -1
- data/lib/windows/memory.rb +0 -1
- data/lib/windows/msvcrt/buffer.rb +0 -1
- data/lib/windows/msvcrt/directory.rb +8 -9
- data/lib/windows/msvcrt/file.rb +0 -1
- data/lib/windows/msvcrt/io.rb +0 -1
- data/lib/windows/msvcrt/string.rb +0 -1
- data/lib/windows/msvcrt/time.rb +0 -1
- data/lib/windows/national.rb +0 -1
- data/lib/windows/network/management.rb +523 -0
- data/lib/windows/network/snmp.rb +90 -0
- data/lib/windows/network/winsock.rb +126 -0
- data/lib/windows/nio.rb +0 -1
- data/lib/windows/ntfs/file.rb +58 -0
- data/lib/windows/path.rb +105 -38
- data/lib/windows/pipe.rb +0 -1
- data/lib/windows/security.rb +292 -6
- data/lib/windows/service.rb +0 -1
- data/lib/windows/shell.rb +4 -1
- data/lib/windows/sound.rb +0 -1
- data/lib/windows/synchronize.rb +0 -1
- data/lib/windows/system_info.rb +0 -1
- data/lib/windows/thread.rb +0 -1
- data/lib/windows/time.rb +0 -1
- data/lib/windows/unicode.rb +0 -1
- data/lib/windows/volume.rb +0 -1
- data/lib/windows/window/dialog.rb +89 -0
- data/lib/windows/window/message.rb +289 -0
- data/lib/windows/window/properties.rb +18 -0
- data/lib/windows/window/timer.rb +17 -0
- data/lib/windows/window.rb +0 -1
- data/test/tc_com.rb +17 -19
- data/test/tc_msvcrt_directory.rb +57 -27
- data/test/tc_msvcrt_string.rb +74 -18
- data/windows-pr.gemspec +4 -5
- metadata +33 -15
data/CHANGES
CHANGED
@@ -1,3 +1,18 @@
|
|
1
|
+
= 0.9.0 - 26-Jul-2008
|
2
|
+
* The process of converting prototypes from 'P' to 'S' has begun. This
|
3
|
+
means that this library now requires win32-api 1.2.0 or later.
|
4
|
+
* Added the Windows::Window::Message module.
|
5
|
+
* Added the Windows::Window::Timer module.
|
6
|
+
* Added the Windows::Window::Dialog module.
|
7
|
+
* Added many more functions and constants to the Windows::Security module.
|
8
|
+
* All ACE related constants have been move from the Windows::File module and
|
9
|
+
are instead defined in the Windows::Security module. Not to worry, though.
|
10
|
+
The Windows::File module now mixes in the Windows::Security module.
|
11
|
+
* Added several profile related functions to the Windows::Shell module.
|
12
|
+
* Changed the prototype of ConvertSidToStringSid and ConvertStringSidToSid
|
13
|
+
back to 'LP' in the Windows::Security module. I'm not sure why I changed
|
14
|
+
those before. If this causes too much grief I'll change them back.
|
15
|
+
|
1
16
|
= 0.8.7 - 23-Jun-2008
|
2
17
|
* Wide character fix for the get_last_error helper function. Thanks go to
|
3
18
|
Dave Whitley for the spot.
|
data/MANIFEST
CHANGED
@@ -51,4 +51,12 @@ lib/windows/msvcrt/string.rb
|
|
51
51
|
lib/windows/msvcrt/time.rb
|
52
52
|
|
53
53
|
lib/windows/network/management.rb
|
54
|
-
lib/windows/network/snmp.rb
|
54
|
+
lib/windows/network/snmp.rb
|
55
|
+
lib/windows/network/winsock.rb
|
56
|
+
|
57
|
+
lib/windows/ntfs/file.rb
|
58
|
+
|
59
|
+
lib/windows/window/dialog.rb
|
60
|
+
lib/windows/window/message.rb
|
61
|
+
lib/windows/window/properties.rb
|
62
|
+
lib/windows/window/timer.rb
|
data/lib/windows/clipboard.rb
CHANGED
@@ -1,5 +1,4 @@
|
|
1
1
|
require 'windows/api'
|
2
|
-
include Windows
|
3
2
|
|
4
3
|
module Windows
|
5
4
|
module Clipboard
|
@@ -32,6 +31,6 @@ module Windows
|
|
32
31
|
API.new('IsClipboardFormatAvailable', 'I', 'B', 'user32')
|
33
32
|
API.new('GetClipboardFormatName', 'IPI', 'I', 'user32')
|
34
33
|
API.new('EnumClipboardFormats', 'I', 'I', 'user32')
|
35
|
-
API.new('RegisterClipboardFormat', '
|
34
|
+
API.new('RegisterClipboardFormat', 'S', 'I', 'user32')
|
36
35
|
end
|
37
36
|
end
|
@@ -0,0 +1,58 @@
|
|
1
|
+
require 'windows/api'
|
2
|
+
|
3
|
+
module Windows
|
4
|
+
module COM
|
5
|
+
module Automation
|
6
|
+
API.auto_namespace = 'Windows::COM::Automation'
|
7
|
+
API.auto_constant = true
|
8
|
+
API.auto_method = true
|
9
|
+
API.auto_unicode = false
|
10
|
+
|
11
|
+
API.new('BstrFromVector', 'PP', 'L', 'oleaut32')
|
12
|
+
API.new('CreateErrorInfo', 'P', 'L', 'oleaut32')
|
13
|
+
API.new('CreateTypeLib2', 'PPP', 'L', 'oleaut32')
|
14
|
+
API.new('DispGetIDsOfNames', 'PPLP', 'L', 'oleaut32')
|
15
|
+
API.new('DispGetParam', 'PLLPP', 'L', 'oleaut32')
|
16
|
+
API.new('DispInvoke', 'PPPLPPPP', 'L', 'oleaut32')
|
17
|
+
API.new('GetActiveObject', 'PPP', 'L', 'oleaut32')
|
18
|
+
API.new('LoadRegTypeLib', 'PLLLP', 'L', 'oleaut32')
|
19
|
+
API.new('LoadTypeLib', 'PPP', 'L', 'oleaut32')
|
20
|
+
API.new('LoadTypeLibEx', 'PPP', 'L', 'oleaut32')
|
21
|
+
API.new('RegisterActiveObject', 'PPLP', 'L', 'oleaut32')
|
22
|
+
API.new('RevokeActiveObject', 'LP', 'L', 'oleaut32')
|
23
|
+
API.new('RegisterTypeLib', 'PPP', 'L', 'oleaut32')
|
24
|
+
API.new('SafeArrayAccessData', 'PP', 'L', 'oleaut32')
|
25
|
+
API.new('SafeArrayAllocData', 'P', 'L', 'oleaut32')
|
26
|
+
API.new('SafeArrayAllocDescriptor', 'LP', 'L', 'oleaut32')
|
27
|
+
API.new('SafeArrayCopy', 'PP', 'L', 'oleaut32')
|
28
|
+
API.new('SafeArrayCopyData', 'PP', 'L', 'oleaut32')
|
29
|
+
API.new('SafeArrayCreate', 'LLP', 'P', 'oleaut32')
|
30
|
+
API.new('SafeArrayCreateVector', 'LLL', 'P', 'oleaut32')
|
31
|
+
API.new('SafeArrayDestroy', 'P', 'L', 'oleaut32')
|
32
|
+
API.new('SafeArrayDestroyData', 'P', 'L', 'oleaut32')
|
33
|
+
API.new('SafeArrayDestroyDescriptor', 'P', 'L', 'oleaut32')
|
34
|
+
API.new('SafeArrayGetDim', 'P', 'L', 'oleaut32')
|
35
|
+
API.new('SafeArrayGetElement', 'PLP', 'L', 'oleaut32')
|
36
|
+
API.new('SafeArrayGetElemsize', 'P', 'L', 'oleaut32')
|
37
|
+
API.new('SafeArrayGetLBound', 'PLP', 'L', 'oleaut32')
|
38
|
+
API.new('SafeArrayGetUBound', 'PLP', 'L', 'oleaut32')
|
39
|
+
API.new('SafeArrayLock', 'P', 'L', 'oleaut32')
|
40
|
+
API.new('SafeArrayPtrOfIndex', 'PPP', 'L', 'oleaut32')
|
41
|
+
API.new('SafeArrayPutElement', 'PPP', 'L', 'oleaut32')
|
42
|
+
API.new('SafeArrayRedim', 'PP', 'L', 'oleaut32')
|
43
|
+
API.new('SafeArrayUnaccessData', 'P', 'L', 'oleaut32')
|
44
|
+
API.new('SafeArrayUnlock', 'P', 'L', 'oleaut32')
|
45
|
+
API.new('SetErrorInfo', 'LP', 'L', 'oleaut32')
|
46
|
+
API.new('SysAllocString', 'P', 'P', 'oleaut32')
|
47
|
+
API.new('SysAllocStringByteLen', 'PI', 'P', 'oleaut32')
|
48
|
+
API.new('SysFreeString', 'P', 'L', 'oleaut32')
|
49
|
+
API.new('SysReAllocString', 'PP', 'L', 'oleaut32')
|
50
|
+
API.new('SysReAllocStringLen', 'PPI', 'P', 'oleaut32')
|
51
|
+
API.new('SysStringByteLen', 'P', 'L', 'oleaut32')
|
52
|
+
API.new('SysStringLen', 'P', 'L', 'oleaut32')
|
53
|
+
API.new('SystemTimeToVariantTime', 'PP', 'I', 'oleaut32')
|
54
|
+
API.new('UnRegisterTypeLib', 'PLLLL', 'I', 'oleaut32')
|
55
|
+
API.new('VectorFromBstr', 'PP', 'L', 'oleaut32')
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
data/lib/windows/com.rb
CHANGED
data/lib/windows/console.rb
CHANGED
data/lib/windows/debug.rb
CHANGED
data/lib/windows/device_io.rb
CHANGED
data/lib/windows/error.rb
CHANGED
@@ -10,7 +10,6 @@
|
|
10
10
|
# by the GetLastError() function.
|
11
11
|
############################################################################
|
12
12
|
require 'windows/api'
|
13
|
-
include Windows
|
14
13
|
|
15
14
|
module Windows
|
16
15
|
module Error
|
@@ -241,6 +240,12 @@ module Windows
|
|
241
240
|
ERROR_I24_NO_MONITOR_SUPPORT = 0x12
|
242
241
|
ERROR_I24_INVALID_PARAMETER = 0x13
|
243
242
|
|
243
|
+
APPLICATION_ERROR_MASK = 0x20000000
|
244
|
+
ERROR_SEVERITY_SUCCESS = 0x00000000
|
245
|
+
ERROR_SEVERITY_INFORMATIONAL = 0x40000000
|
246
|
+
ERROR_SEVERITY_WARNING = 0x80000000
|
247
|
+
ERROR_SEVERITY_ERROR = 0xc0000000
|
248
|
+
|
244
249
|
ALLOWED_FAIL = 0x0001
|
245
250
|
ALLOWED_ABORT = 0x0002
|
246
251
|
ALLOWED_RETRY = 0x0004
|
@@ -286,45 +291,45 @@ module Windows
|
|
286
291
|
TC_SIGNAL = 3
|
287
292
|
|
288
293
|
# From WinError.h
|
289
|
-
ERROR_INVALID_FLAGS =
|
290
|
-
ERROR_NO_UNICODE_TRANSLATION =
|
294
|
+
ERROR_INVALID_FLAGS = 0x1004
|
295
|
+
ERROR_NO_UNICODE_TRANSLATION = 0x1113
|
291
296
|
|
292
|
-
E_INVALIDARG =
|
293
|
-
E_NOINTERFACE =
|
294
|
-
E_NOTIMPL =
|
295
|
-
E_OUTOFMEMORY =
|
296
|
-
E_UNEXPECTED =
|
297
|
+
E_INVALIDARG = 0x80070057
|
298
|
+
E_NOINTERFACE = 0x80004002
|
299
|
+
E_NOTIMPL = 0x80004001
|
300
|
+
E_OUTOFMEMORY = 0x8007000E
|
301
|
+
E_UNEXPECTED = 0x8000FFFF
|
297
302
|
|
298
|
-
RPC_E_TIMEOUT =
|
303
|
+
RPC_E_TIMEOUT = 0x8001011F
|
299
304
|
|
300
|
-
CO_E_NOT_SUPPORTED =
|
305
|
+
CO_E_NOT_SUPPORTED = 0x80004021
|
301
306
|
|
302
|
-
CLASS_E_NOAGGREGATION =
|
307
|
+
CLASS_E_NOAGGREGATION = 0x80040110
|
303
308
|
|
304
309
|
# Registry errors
|
305
|
-
REGDB_E_CLASSNOTREG =
|
310
|
+
REGDB_E_CLASSNOTREG = 0x80040154
|
306
311
|
|
307
312
|
# msterr.h
|
308
|
-
SCHED_S_TASK_READY =
|
309
|
-
SCHED_S_TASK_RUNNING =
|
310
|
-
SCHED_S_TASK_DISABLED =
|
311
|
-
SCHED_S_TASK_HAS_NOT_RUN =
|
312
|
-
SCHED_S_TASK_HAS_NO_MORE_RUNS =
|
313
|
-
SCHED_S_TASK_NOT_SCHEDULED =
|
314
|
-
SCHED_S_TASK_TERMINATED =
|
315
|
-
SCHED_S_TASK_NO_VALID_TRIGGERS =
|
316
|
-
SCHED_S_EVENT_TRIGGER =
|
317
|
-
SCHED_E_TRIGGER_NOT_FOUND =
|
318
|
-
SCHED_E_TASK_NOT_READY =
|
319
|
-
SCHED_E_TASK_NOT_RUNNING =
|
320
|
-
SCHED_E_SERVICE_NOT_INSTALLED =
|
321
|
-
SCHED_E_CANNOT_OPEN_TASK =
|
322
|
-
SCHED_E_INVALID_TASK =
|
323
|
-
SCHED_E_ACCOUNT_INFORMATION_NOT_SET =
|
324
|
-
SCHED_E_ACCOUNT_NAME_NOT_FOUND =
|
325
|
-
SCHED_E_ACCOUNT_DBASE_CORRUPT =
|
326
|
-
SCHED_E_NO_SECURITY_SERVICES =
|
327
|
-
SCHED_E_UNKNOWN_OBJECT_VERSION =
|
313
|
+
SCHED_S_TASK_READY = 0x00041300
|
314
|
+
SCHED_S_TASK_RUNNING = 0x00041301
|
315
|
+
SCHED_S_TASK_DISABLED = 0x00041302
|
316
|
+
SCHED_S_TASK_HAS_NOT_RUN = 0x00041303
|
317
|
+
SCHED_S_TASK_HAS_NO_MORE_RUNS = 0x00041304
|
318
|
+
SCHED_S_TASK_NOT_SCHEDULED = 0x00041305
|
319
|
+
SCHED_S_TASK_TERMINATED = 0x00041306
|
320
|
+
SCHED_S_TASK_NO_VALID_TRIGGERS = 0x00041307
|
321
|
+
SCHED_S_EVENT_TRIGGER = 0x00041308
|
322
|
+
SCHED_E_TRIGGER_NOT_FOUND = 0x00041309
|
323
|
+
SCHED_E_TASK_NOT_READY = 0x0004130A
|
324
|
+
SCHED_E_TASK_NOT_RUNNING = 0x0004130B
|
325
|
+
SCHED_E_SERVICE_NOT_INSTALLED = 0x0004130C
|
326
|
+
SCHED_E_CANNOT_OPEN_TASK = 0x0004130D
|
327
|
+
SCHED_E_INVALID_TASK = 0x0004130E
|
328
|
+
SCHED_E_ACCOUNT_INFORMATION_NOT_SET = 0x0004130F
|
329
|
+
SCHED_E_ACCOUNT_NAME_NOT_FOUND = 0x00041310
|
330
|
+
SCHED_E_ACCOUNT_DBASE_CORRUPT = 0x00041311
|
331
|
+
SCHED_E_NO_SECURITY_SERVICES = 0x00041312
|
332
|
+
SCHED_E_UNKNOWN_OBJECT_VERSION = 0x00041313
|
328
333
|
|
329
334
|
# Socket errors
|
330
335
|
WSA_INVALID_HANDLE = 6
|
data/lib/windows/eventlog.rb
CHANGED
@@ -1,5 +1,4 @@
|
|
1
1
|
require 'windows/api'
|
2
|
-
include Windows
|
3
2
|
|
4
3
|
module Windows
|
5
4
|
module EventLog
|
@@ -22,18 +21,18 @@ module Windows
|
|
22
21
|
|
23
22
|
EVENTLOG_FULL_INFO = 0
|
24
23
|
|
25
|
-
API.new('BackupEventLog', '
|
26
|
-
API.new('ClearEventLog', '
|
24
|
+
API.new('BackupEventLog', 'LS', 'B', 'advapi32')
|
25
|
+
API.new('ClearEventLog', 'LS', 'B', 'advapi32')
|
27
26
|
API.new('CloseEventLog', 'L', 'B', 'advapi32')
|
28
27
|
API.new('DeregisterEventSource', 'L', 'B', 'advapi32')
|
29
28
|
API.new('GetEventLogInformation', 'LLPLP', 'B', 'advapi32')
|
30
29
|
API.new('GetNumberOfEventLogRecords', 'LP', 'B', 'advapi32')
|
31
30
|
API.new('GetOldestEventLogRecord', 'LP', 'B', 'advapi32')
|
32
31
|
API.new('NotifyChangeEventLog', 'LL', 'B', 'advapi32')
|
33
|
-
API.new('OpenBackupEventLog', '
|
34
|
-
API.new('OpenEventLog', '
|
32
|
+
API.new('OpenBackupEventLog', 'SS', 'L', 'advapi32')
|
33
|
+
API.new('OpenEventLog', 'SS', 'L', 'advapi32')
|
35
34
|
API.new('ReadEventLog', 'LLLPLPP', 'B', 'advapi32')
|
36
|
-
API.new('RegisterEventSource', '
|
35
|
+
API.new('RegisterEventSource', 'SS', 'L', 'advapi32')
|
37
36
|
API.new('ReportEvent', 'LIILPILPP', 'B', 'advapi32')
|
38
37
|
end
|
39
38
|
end
|
data/lib/windows/file.rb
CHANGED
@@ -1,9 +1,10 @@
|
|
1
1
|
require 'windows/unicode'
|
2
|
-
|
2
|
+
require 'windows/security'
|
3
3
|
|
4
4
|
module Windows
|
5
5
|
module File
|
6
6
|
include Windows::Unicode
|
7
|
+
include Windows::Security
|
7
8
|
|
8
9
|
API.auto_namespace = 'Windows::File'
|
9
10
|
API.auto_constant = true
|
@@ -15,6 +16,7 @@ module Windows
|
|
15
16
|
FILE_END = 2
|
16
17
|
|
17
18
|
# File Attributes
|
19
|
+
|
18
20
|
FILE_ATTRIBUTE_READONLY = 0x00000001
|
19
21
|
FILE_ATTRIBUTE_HIDDEN = 0x00000002
|
20
22
|
FILE_ATTRIBUTE_SYSTEM = 0x00000004
|
@@ -30,52 +32,24 @@ module Windows
|
|
30
32
|
FILE_ATTRIBUTE_NOT_CONTENT_INDEXED = 0x00002000
|
31
33
|
|
32
34
|
# File types
|
35
|
+
|
33
36
|
FILE_TYPE_UNKNOWN = 0x0000
|
34
37
|
FILE_TYPE_DISK = 0x0001
|
35
38
|
FILE_TYPE_CHAR = 0x0002
|
36
39
|
FILE_TYPE_PIPE = 0x0003
|
37
40
|
FILE_TYPE_REMOTE = 0x8000
|
38
41
|
|
39
|
-
# File
|
40
|
-
|
41
|
-
ERROR_SEVERITY_SUCCESS = 0x00000000
|
42
|
-
ERROR_SEVERITY_INFORMATIONAL = 0x40000000
|
43
|
-
ERROR_SEVERITY_WARNING = 0x80000000
|
44
|
-
ERROR_SEVERITY_ERROR = 0xc0000000
|
42
|
+
# File compression constants
|
43
|
+
|
45
44
|
COMPRESSION_FORMAT_NONE = 0
|
46
45
|
COMPRESSION_FORMAT_DEFAULT = 1
|
47
46
|
COMPRESSION_FORMAT_LZNT1 = 2
|
48
47
|
COMPRESSION_ENGINE_STANDARD = 0
|
49
48
|
COMPRESSION_ENGINE_MAXIMUM = 256
|
50
|
-
ACCESS_ALLOWED_ACE_TYPE = 0
|
51
|
-
ACCESS_DENIED_ACE_TYPE = 1
|
52
49
|
ANYSIZE_ARRAY = 1
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
CONTAINER_INHERIT_ACE = 2
|
57
|
-
NO_PROPAGATE_INHERIT_ACE = 4
|
58
|
-
INHERIT_ONLY_ACE = 8
|
59
|
-
VALID_INHERIT_FLAGS = 16
|
60
|
-
SUCCESSFUL_ACCESS_ACE_FLAG = 64
|
61
|
-
FAILED_ACCESS_ACE_FLAG = 128
|
62
|
-
DELETE = 0x00010000
|
63
|
-
READ_CONTROL = 0x20000
|
64
|
-
WRITE_DAC = 0x40000
|
65
|
-
WRITE_OWNER = 0x80000
|
66
|
-
SYNCHRONIZE = 0x100000
|
67
|
-
STANDARD_RIGHTS_REQUIRED = 0xf0000
|
68
|
-
STANDARD_RIGHTS_READ = 0x20000
|
69
|
-
STANDARD_RIGHTS_WRITE = 0x20000
|
70
|
-
STANDARD_RIGHTS_EXECUTE = 0x20000
|
71
|
-
STANDARD_RIGHTS_ALL = 0x1f0000
|
72
|
-
SPECIFIC_RIGHTS_ALL = 0xffff
|
73
|
-
ACCESS_SYSTEM_SECURITY = 0x1000000
|
74
|
-
MAXIMUM_ALLOWED = 0x2000000
|
75
|
-
GENERIC_READ = 0x80000000
|
76
|
-
GENERIC_WRITE = 0x40000000
|
77
|
-
GENERIC_EXECUTE = 0x20000000
|
78
|
-
GENERIC_ALL = 0x10000000
|
50
|
+
|
51
|
+
# File security and access rights
|
52
|
+
|
79
53
|
FILE_READ_DATA = 1
|
80
54
|
FILE_LIST_DIRECTORY = 1
|
81
55
|
FILE_WRITE_DATA = 2
|
@@ -93,7 +67,7 @@ module Windows
|
|
93
67
|
FILE_READ_ATTRIBUTES = 128
|
94
68
|
FILE_WRITE_ATTRIBUTES = 256
|
95
69
|
|
96
|
-
FILE_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE |
|
70
|
+
FILE_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x1FF
|
97
71
|
|
98
72
|
FILE_GENERIC_READ =
|
99
73
|
STANDARD_RIGHTS_READ |
|
data/lib/windows/file_mapping.rb
CHANGED
data/lib/windows/filesystem.rb
CHANGED
data/lib/windows/gdi/bitmap.rb
CHANGED
data/lib/windows/handle.rb
CHANGED
data/lib/windows/library.rb
CHANGED
data/lib/windows/memory.rb
CHANGED
@@ -1,5 +1,4 @@
|
|
1
1
|
require 'windows/api'
|
2
|
-
include Windows
|
3
2
|
|
4
3
|
module Windows
|
5
4
|
module MSVCRT
|
@@ -9,8 +8,8 @@ module Windows
|
|
9
8
|
API.auto_constant = true
|
10
9
|
API.auto_unicode = false
|
11
10
|
|
12
|
-
API.new('_chdir', '
|
13
|
-
API.new('_wchdir', '
|
11
|
+
API.new('_chdir', 'S', 'I', MSVCRT_DLL)
|
12
|
+
API.new('_wchdir', 'S', 'I', MSVCRT_DLL)
|
14
13
|
API.new('_chdrive', 'I', 'I', MSVCRT_DLL)
|
15
14
|
API.new('_getcwd', 'PI', 'P', MSVCRT_DLL)
|
16
15
|
API.new('_wgetcwd', 'PI', 'P', MSVCRT_DLL)
|
@@ -19,12 +18,12 @@ module Windows
|
|
19
18
|
API.new('_getdiskfree', 'IP', 'I', MSVCRT_DLL)
|
20
19
|
API.new('_getdrive', 'V', 'I', MSVCRT_DLL)
|
21
20
|
API.new('_getdrives', 'V', 'L', MSVCRT_DLL)
|
22
|
-
API.new('_mkdir', '
|
23
|
-
API.new('_wmkdir', '
|
24
|
-
API.new('_rmdir', '
|
25
|
-
API.new('_wrmdir', '
|
26
|
-
API.new('_searchenv', '
|
27
|
-
API.new('_wsearchenv', '
|
21
|
+
API.new('_mkdir', 'S', 'I', MSVCRT_DLL)
|
22
|
+
API.new('_wmkdir', 'S', 'I', MSVCRT_DLL)
|
23
|
+
API.new('_rmdir', 'S', 'I', MSVCRT_DLL)
|
24
|
+
API.new('_wrmdir', 'S', 'I', MSVCRT_DLL)
|
25
|
+
API.new('_searchenv', 'SSP', 'V', MSVCRT_DLL)
|
26
|
+
API.new('_wsearchenv', 'SSP', 'V', MSVCRT_DLL)
|
28
27
|
end
|
29
28
|
end
|
30
29
|
end
|
data/lib/windows/msvcrt/file.rb
CHANGED
data/lib/windows/msvcrt/io.rb
CHANGED
data/lib/windows/msvcrt/time.rb
CHANGED