windows-pr 1.2.2 → 1.2.3

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.
Files changed (126) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGES +444 -438
  3. data/MANIFEST +68 -65
  4. data/README +154 -153
  5. data/Rakefile +42 -37
  6. data/doc/conversion_guide.txt +37 -37
  7. data/lib/windows/clipboard.rb +61 -61
  8. data/lib/windows/com.rb +192 -192
  9. data/lib/windows/com/accessibility.rb +16 -16
  10. data/lib/windows/com/automation.rb +149 -149
  11. data/lib/windows/com/variant.rb +24 -24
  12. data/lib/windows/console.rb +114 -114
  13. data/lib/windows/debug.rb +35 -35
  14. data/lib/windows/device_io.rb +248 -248
  15. data/lib/windows/directory.rb +27 -27
  16. data/lib/windows/error.rb +504 -498
  17. data/lib/windows/eventlog.rb +80 -80
  18. data/lib/windows/file.rb +264 -264
  19. data/lib/windows/file_mapping.rb +25 -25
  20. data/lib/windows/filesystem.rb +15 -15
  21. data/lib/windows/gdi/bitmap.rb +65 -65
  22. data/lib/windows/gdi/device_context.rb +46 -46
  23. data/lib/windows/gdi/metafile.rb +40 -40
  24. data/lib/windows/gdi/painting_drawing.rb +115 -115
  25. data/lib/windows/handle.rb +23 -23
  26. data/lib/windows/library.rb +44 -44
  27. data/lib/windows/limits.rb +34 -34
  28. data/lib/windows/mailslot.rb +24 -24
  29. data/lib/windows/memory.rb +128 -128
  30. data/lib/windows/msvcrt/buffer.rb +75 -75
  31. data/lib/windows/msvcrt/directory.rb +31 -31
  32. data/lib/windows/msvcrt/file.rb +47 -47
  33. data/lib/windows/msvcrt/io.rb +73 -73
  34. data/lib/windows/msvcrt/string.rb +182 -182
  35. data/lib/windows/msvcrt/time.rb +169 -169
  36. data/lib/windows/national.rb +580 -580
  37. data/lib/windows/network/management.rb +525 -525
  38. data/lib/windows/network/snmp.rb +92 -92
  39. data/lib/windows/network/winsock.rb +128 -128
  40. data/lib/windows/nio.rb +50 -50
  41. data/lib/windows/ntfs/winternl.rb +117 -117
  42. data/lib/windows/path.rb +143 -143
  43. data/lib/windows/pipe.rb +42 -42
  44. data/lib/windows/process.rb +176 -176
  45. data/lib/windows/registry.rb +171 -171
  46. data/lib/windows/security.rb +479 -479
  47. data/lib/windows/security/authentication.rb +32 -32
  48. data/lib/windows/security/sspi.rb +153 -0
  49. data/lib/windows/service.rb +142 -142
  50. data/lib/windows/shell.rb +171 -171
  51. data/lib/windows/socket.rb +86 -86
  52. data/lib/windows/sound.rb +39 -39
  53. data/lib/windows/synchronize.rb +133 -133
  54. data/lib/windows/system_info.rb +229 -229
  55. data/lib/windows/thread.rb +64 -64
  56. data/lib/windows/time.rb +48 -48
  57. data/lib/windows/tool_helper.rb +36 -36
  58. data/lib/windows/unicode.rb +155 -155
  59. data/lib/windows/volume.rb +61 -61
  60. data/lib/windows/window.rb +81 -81
  61. data/lib/windows/window/classes.rb +59 -59
  62. data/lib/windows/window/dialog.rb +91 -91
  63. data/lib/windows/window/menu.rb +102 -102
  64. data/lib/windows/window/message.rb +297 -297
  65. data/lib/windows/window/properties.rb +20 -20
  66. data/lib/windows/window/timer.rb +19 -19
  67. data/lib/windows/wsa.rb +102 -102
  68. data/test/tc_clipboard.rb +41 -41
  69. data/test/tc_com.rb +32 -32
  70. data/test/tc_com_automation.rb +15 -15
  71. data/test/tc_console.rb +108 -108
  72. data/test/tc_debug.rb +48 -48
  73. data/test/tc_device_io.rb +29 -29
  74. data/test/tc_directory.rb +25 -25
  75. data/test/tc_error.rb +38 -38
  76. data/test/tc_eventlog.rb +58 -58
  77. data/test/tc_file.rb +67 -67
  78. data/test/tc_file_mapping.rb +38 -38
  79. data/test/tc_filesystem.rb +27 -27
  80. data/test/tc_gdi_bitmap.rb +25 -25
  81. data/test/tc_gdi_metafile.rb +23 -23
  82. data/test/tc_handle.rb +36 -36
  83. data/test/tc_library.rb +37 -37
  84. data/test/tc_limits.rb +34 -34
  85. data/test/tc_mailslot.rb +22 -22
  86. data/test/tc_memory.rb +44 -44
  87. data/test/tc_msvcrt_buffer.rb +63 -63
  88. data/test/tc_msvcrt_directory.rb +96 -96
  89. data/test/tc_msvcrt_file.rb +80 -80
  90. data/test/tc_msvcrt_io.rb +48 -48
  91. data/test/tc_msvcrt_string.rb +94 -94
  92. data/test/tc_msvcrt_time.rb +19 -19
  93. data/test/tc_national.rb +38 -38
  94. data/test/tc_network_management.rb +32 -32
  95. data/test/tc_network_snmp.rb +31 -31
  96. data/test/tc_network_winsock.rb +34 -34
  97. data/test/tc_nio.rb +32 -32
  98. data/test/tc_ntfs_winternl.rb +48 -48
  99. data/test/tc_path.rb +90 -90
  100. data/test/tc_pipe.rb +53 -53
  101. data/test/tc_process.rb +24 -24
  102. data/test/tc_registry.rb +29 -29
  103. data/test/tc_security.rb +104 -104
  104. data/test/tc_security_authentication.rb +34 -34
  105. data/test/tc_security_sspi.rb +23 -0
  106. data/test/tc_service.rb +57 -57
  107. data/test/tc_shell.rb +34 -34
  108. data/test/tc_socket.rb +20 -20
  109. data/test/tc_sound.rb +37 -37
  110. data/test/tc_synchronize.rb +75 -75
  111. data/test/tc_system_info.rb +33 -33
  112. data/test/tc_thread.rb +29 -29
  113. data/test/tc_time.rb +32 -32
  114. data/test/tc_tool_helper.rb +29 -29
  115. data/test/tc_unicode.rb +83 -83
  116. data/test/tc_volume.rb +47 -47
  117. data/test/tc_window.rb +45 -45
  118. data/test/tc_window_classes.rb +33 -33
  119. data/test/tc_window_dialog.rb +33 -33
  120. data/test/tc_window_menu.rb +29 -29
  121. data/test/tc_window_message.rb +33 -33
  122. data/test/tc_window_properties.rb +29 -29
  123. data/test/tc_window_timer.rb +29 -29
  124. data/test/tc_wsa.rb +19 -19
  125. data/windows-pr.gemspec +33 -34
  126. metadata +31 -32
@@ -1,16 +1,16 @@
1
- require 'windows/api'
2
-
3
- module Windows
4
- module COM
5
- module Accessibility
6
- API.auto_namespace = 'Windows::COM::Accessibility'
7
- API.auto_constant = true
8
- API.auto_method = true
9
- API.auto_unicode = false
10
-
11
- private
12
-
13
- API.new('ObjectFromLresult', 'LPIP', 'L', 'oleacc')
14
- end
15
- end
16
- end
1
+ require 'windows/api'
2
+
3
+ module Windows
4
+ module COM
5
+ module Accessibility
6
+ API.auto_namespace = 'Windows::COM::Accessibility'
7
+ API.auto_constant = true
8
+ API.auto_method = true
9
+ API.auto_unicode = false
10
+
11
+ private
12
+
13
+ API.new('ObjectFromLresult', 'LPIP', 'L', 'oleacc')
14
+ end
15
+ end
16
+ end
@@ -1,149 +1,149 @@
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
- private
12
-
13
- REGKIND_DEFAULT = 0
14
- REGKIND_REGISTER = 1
15
- REGKIND_NONE = 2
16
-
17
- # VARKIND enum
18
-
19
- VAR_PERINSTANCE = 0
20
- VAR_STATIC = 1
21
- VAR_CONST = 2
22
- VAR_DISPATCH = 3
23
-
24
- # TYPEKIND enum
25
-
26
- TKIND_ENUM = 0
27
- TKIND_RECORD = 1
28
- TKIND_MODULE = 2
29
- TKIND_INTERFACE = 3
30
- TKIND_DISPATCH = 4
31
- TKIND_COCLASS = 5
32
- TKIND_ALIAS = 6
33
- TKIND_UNION = 7
34
- TKIND_MAX = 8
35
-
36
- # LIBFLAGS enum
37
-
38
- LIBFLAG_FRESTRICTED = 0x1
39
- LIBFLAG_FCONTROL = 0x2
40
- LIBFLAG_FHIDDEN = 0x4
41
- LIBFLAG_FHASDISKIMAGE = 0x8
42
-
43
- PARAMFLAG_NONE = 0
44
- PARAMFLAG_FIN = 0x1
45
- PARAMFLAG_FOUT = 0x2
46
- PARAMFLAG_FLCID = 0x4
47
- PARAMFLAG_FRETVAL = 0x8
48
- PARAMFLAG_FOPT = 0x10
49
- PARAMFLAG_FHASDEFAULT = 0x20
50
- PARAMFLAG_FHASCUSTDATA = 0x40
51
-
52
- # FUNCFLAGS enum
53
-
54
- FUNCFLAG_FRESTRICTED = 0x1
55
- FUNCFLAG_FSOURCE = 0x2
56
- FUNCFLAG_FBINDABLE = 0x4
57
- FUNCFLAG_FREQUESTEDIT = 0x8
58
- FUNCFLAG_FDISPLAYBIND = 0x10
59
- FUNCFLAG_FDEFAULTBIND = 0x20
60
- FUNCFLAG_FHIDDEN = 0x40
61
- FUNCFLAG_FUSESGETLASTERROR = 0x80
62
- FUNCFLAG_FDEFAULTCOLLELEM = 0x100
63
- FUNCFLAG_FUIDEFAULT = 0x200
64
- FUNCFLAG_FNONBROWSABLE = 0x400
65
- FUNCFLAG_FREPLACEABLE = 0x800
66
- FUNCFLAG_FIMMEDIATEBIND = 0x1000
67
-
68
- # TYPEFLAGS enum
69
-
70
- TYPEFLAG_FAPPOBJECT = 0x1
71
- TYPEFLAG_FCANCREATE = 0x2
72
- TYPEFLAG_FLICENSED = 0x4
73
- TYPEFLAG_FPREDECLID = 0x8
74
- TYPEFLAG_FHIDDEN = 0x10
75
- TYPEFLAG_FCONTROL = 0x20
76
- TYPEFLAG_FDUAL = 0x40
77
- TYPEFLAG_FNONEXTENSIBLE = 0x80
78
- TYPEFLAG_FOLEAUTOMATION = 0x100
79
- TYPEFLAG_FRESTRICTED = 0x200
80
- TYPEFLAG_FAGGREGATABLE = 0x400
81
- TYPEFLAG_FREPLACEABLE = 0x800
82
- TYPEFLAG_FDISPATCHABLE = 0x1000
83
- TYPEFLAG_FREVERSEBIND = 0x2000
84
- TYPEFLAG_FPROXY = 0x4000
85
-
86
- # VARFLAGS enum
87
-
88
- VARFLAG_FREADONLY = 0x1
89
- VARFLAG_FSOURCE = 0x2
90
- VARFLAG_FBINDABLE = 0x4
91
- VARFLAG_FREQUESTEDIT = 0x8
92
- VARFLAG_FDISPLAYBIND = 0x10
93
- VARFLAG_FDEFAULTBIND = 0x20
94
- VARFLAG_FHIDDEN = 0x40
95
- VARFLAG_FRESTRICTED = 0x80
96
- VARFLAG_FDEFAULTCOLLELEM = 0x100
97
- VARFLAG_FUIDEFAULT = 0x200
98
- VARFLAG_FNONBROWSABLE = 0x400
99
- VARFLAG_FREPLACEABLE = 0x800
100
- VARFLAG_FIMMEDIATEBIND = 0x1000
101
-
102
- API.new('BstrFromVector', 'PP', 'L', 'oleaut32')
103
- API.new('CreateErrorInfo', 'P', 'L', 'oleaut32')
104
- API.new('CreateTypeLib2', 'PPP', 'L', 'oleaut32')
105
- API.new('DispGetIDsOfNames', 'PPLP', 'L', 'oleaut32')
106
- API.new('DispGetParam', 'PLLPP', 'L', 'oleaut32')
107
- API.new('DispInvoke', 'PPPLPPPP', 'L', 'oleaut32')
108
- API.new('GetActiveObject', 'PPP', 'L', 'oleaut32')
109
- API.new('LoadRegTypeLib', 'PLLLP', 'L', 'oleaut32')
110
- API.new('LoadTypeLib', 'PP', 'L', 'oleaut32')
111
- API.new('LoadTypeLibEx', 'PLP', 'L', 'oleaut32')
112
- API.new('RegisterActiveObject', 'PPLP', 'L', 'oleaut32')
113
- API.new('RevokeActiveObject', 'LP', 'L', 'oleaut32')
114
- API.new('RegisterTypeLib', 'PPP', 'L', 'oleaut32')
115
- API.new('SafeArrayAccessData', 'PP', 'L', 'oleaut32')
116
- API.new('SafeArrayAllocData', 'P', 'L', 'oleaut32')
117
- API.new('SafeArrayAllocDescriptor', 'LP', 'L', 'oleaut32')
118
- API.new('SafeArrayCopy', 'PP', 'L', 'oleaut32')
119
- API.new('SafeArrayCopyData', 'PP', 'L', 'oleaut32')
120
- API.new('SafeArrayCreate', 'LLP', 'L', 'oleaut32')
121
- API.new('SafeArrayCreateVector', 'LLL', 'L', 'oleaut32')
122
- API.new('SafeArrayDestroy', 'P', 'L', 'oleaut32')
123
- API.new('SafeArrayDestroyData', 'P', 'L', 'oleaut32')
124
- API.new('SafeArrayDestroyDescriptor', 'P', 'L', 'oleaut32')
125
- API.new('SafeArrayGetDim', 'P', 'L', 'oleaut32')
126
- API.new('SafeArrayGetElement', 'PLP', 'L', 'oleaut32')
127
- API.new('SafeArrayGetElemsize', 'P', 'L', 'oleaut32')
128
- API.new('SafeArrayGetLBound', 'PLP', 'L', 'oleaut32')
129
- API.new('SafeArrayGetUBound', 'PLP', 'L', 'oleaut32')
130
- API.new('SafeArrayLock', 'P', 'L', 'oleaut32')
131
- API.new('SafeArrayPtrOfIndex', 'PPP', 'L', 'oleaut32')
132
- API.new('SafeArrayPutElement', 'PPP', 'L', 'oleaut32')
133
- API.new('SafeArrayRedim', 'PP', 'L', 'oleaut32')
134
- API.new('SafeArrayUnaccessData', 'P', 'L', 'oleaut32')
135
- API.new('SafeArrayUnlock', 'P', 'L', 'oleaut32')
136
- API.new('SetErrorInfo', 'LP', 'L', 'oleaut32')
137
- API.new('SysAllocString', 'P', 'L', 'oleaut32')
138
- API.new('SysAllocStringByteLen', 'PI', 'L', 'oleaut32')
139
- API.new('SysFreeString', 'P', 'V', 'oleaut32')
140
- API.new('SysReAllocString', 'PP', 'L', 'oleaut32')
141
- API.new('SysReAllocStringLen', 'PPI', 'L', 'oleaut32')
142
- API.new('SysStringByteLen', 'P', 'L', 'oleaut32')
143
- API.new('SysStringLen', 'P', 'L', 'oleaut32')
144
- API.new('SystemTimeToVariantTime', 'PP', 'I', 'oleaut32')
145
- API.new('UnRegisterTypeLib', 'PLLLL', 'I', 'oleaut32')
146
- API.new('VectorFromBstr', 'PP', 'L', 'oleaut32')
147
- end
148
- end
149
- end
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
+ private
12
+
13
+ REGKIND_DEFAULT = 0
14
+ REGKIND_REGISTER = 1
15
+ REGKIND_NONE = 2
16
+
17
+ # VARKIND enum
18
+
19
+ VAR_PERINSTANCE = 0
20
+ VAR_STATIC = 1
21
+ VAR_CONST = 2
22
+ VAR_DISPATCH = 3
23
+
24
+ # TYPEKIND enum
25
+
26
+ TKIND_ENUM = 0
27
+ TKIND_RECORD = 1
28
+ TKIND_MODULE = 2
29
+ TKIND_INTERFACE = 3
30
+ TKIND_DISPATCH = 4
31
+ TKIND_COCLASS = 5
32
+ TKIND_ALIAS = 6
33
+ TKIND_UNION = 7
34
+ TKIND_MAX = 8
35
+
36
+ # LIBFLAGS enum
37
+
38
+ LIBFLAG_FRESTRICTED = 0x1
39
+ LIBFLAG_FCONTROL = 0x2
40
+ LIBFLAG_FHIDDEN = 0x4
41
+ LIBFLAG_FHASDISKIMAGE = 0x8
42
+
43
+ PARAMFLAG_NONE = 0
44
+ PARAMFLAG_FIN = 0x1
45
+ PARAMFLAG_FOUT = 0x2
46
+ PARAMFLAG_FLCID = 0x4
47
+ PARAMFLAG_FRETVAL = 0x8
48
+ PARAMFLAG_FOPT = 0x10
49
+ PARAMFLAG_FHASDEFAULT = 0x20
50
+ PARAMFLAG_FHASCUSTDATA = 0x40
51
+
52
+ # FUNCFLAGS enum
53
+
54
+ FUNCFLAG_FRESTRICTED = 0x1
55
+ FUNCFLAG_FSOURCE = 0x2
56
+ FUNCFLAG_FBINDABLE = 0x4
57
+ FUNCFLAG_FREQUESTEDIT = 0x8
58
+ FUNCFLAG_FDISPLAYBIND = 0x10
59
+ FUNCFLAG_FDEFAULTBIND = 0x20
60
+ FUNCFLAG_FHIDDEN = 0x40
61
+ FUNCFLAG_FUSESGETLASTERROR = 0x80
62
+ FUNCFLAG_FDEFAULTCOLLELEM = 0x100
63
+ FUNCFLAG_FUIDEFAULT = 0x200
64
+ FUNCFLAG_FNONBROWSABLE = 0x400
65
+ FUNCFLAG_FREPLACEABLE = 0x800
66
+ FUNCFLAG_FIMMEDIATEBIND = 0x1000
67
+
68
+ # TYPEFLAGS enum
69
+
70
+ TYPEFLAG_FAPPOBJECT = 0x1
71
+ TYPEFLAG_FCANCREATE = 0x2
72
+ TYPEFLAG_FLICENSED = 0x4
73
+ TYPEFLAG_FPREDECLID = 0x8
74
+ TYPEFLAG_FHIDDEN = 0x10
75
+ TYPEFLAG_FCONTROL = 0x20
76
+ TYPEFLAG_FDUAL = 0x40
77
+ TYPEFLAG_FNONEXTENSIBLE = 0x80
78
+ TYPEFLAG_FOLEAUTOMATION = 0x100
79
+ TYPEFLAG_FRESTRICTED = 0x200
80
+ TYPEFLAG_FAGGREGATABLE = 0x400
81
+ TYPEFLAG_FREPLACEABLE = 0x800
82
+ TYPEFLAG_FDISPATCHABLE = 0x1000
83
+ TYPEFLAG_FREVERSEBIND = 0x2000
84
+ TYPEFLAG_FPROXY = 0x4000
85
+
86
+ # VARFLAGS enum
87
+
88
+ VARFLAG_FREADONLY = 0x1
89
+ VARFLAG_FSOURCE = 0x2
90
+ VARFLAG_FBINDABLE = 0x4
91
+ VARFLAG_FREQUESTEDIT = 0x8
92
+ VARFLAG_FDISPLAYBIND = 0x10
93
+ VARFLAG_FDEFAULTBIND = 0x20
94
+ VARFLAG_FHIDDEN = 0x40
95
+ VARFLAG_FRESTRICTED = 0x80
96
+ VARFLAG_FDEFAULTCOLLELEM = 0x100
97
+ VARFLAG_FUIDEFAULT = 0x200
98
+ VARFLAG_FNONBROWSABLE = 0x400
99
+ VARFLAG_FREPLACEABLE = 0x800
100
+ VARFLAG_FIMMEDIATEBIND = 0x1000
101
+
102
+ API.new('BstrFromVector', 'PP', 'L', 'oleaut32')
103
+ API.new('CreateErrorInfo', 'P', 'L', 'oleaut32')
104
+ API.new('CreateTypeLib2', 'PPP', 'L', 'oleaut32')
105
+ API.new('DispGetIDsOfNames', 'PPLP', 'L', 'oleaut32')
106
+ API.new('DispGetParam', 'PLLPP', 'L', 'oleaut32')
107
+ API.new('DispInvoke', 'PPPLPPPP', 'L', 'oleaut32')
108
+ API.new('GetActiveObject', 'PPP', 'L', 'oleaut32')
109
+ API.new('LoadRegTypeLib', 'PLLLP', 'L', 'oleaut32')
110
+ API.new('LoadTypeLib', 'PP', 'L', 'oleaut32')
111
+ API.new('LoadTypeLibEx', 'PLP', 'L', 'oleaut32')
112
+ API.new('RegisterActiveObject', 'PPLP', 'L', 'oleaut32')
113
+ API.new('RevokeActiveObject', 'LP', 'L', 'oleaut32')
114
+ API.new('RegisterTypeLib', 'PPP', 'L', 'oleaut32')
115
+ API.new('SafeArrayAccessData', 'PP', 'L', 'oleaut32')
116
+ API.new('SafeArrayAllocData', 'P', 'L', 'oleaut32')
117
+ API.new('SafeArrayAllocDescriptor', 'LP', 'L', 'oleaut32')
118
+ API.new('SafeArrayCopy', 'PP', 'L', 'oleaut32')
119
+ API.new('SafeArrayCopyData', 'PP', 'L', 'oleaut32')
120
+ API.new('SafeArrayCreate', 'LLP', 'L', 'oleaut32')
121
+ API.new('SafeArrayCreateVector', 'LLL', 'L', 'oleaut32')
122
+ API.new('SafeArrayDestroy', 'P', 'L', 'oleaut32')
123
+ API.new('SafeArrayDestroyData', 'P', 'L', 'oleaut32')
124
+ API.new('SafeArrayDestroyDescriptor', 'P', 'L', 'oleaut32')
125
+ API.new('SafeArrayGetDim', 'P', 'L', 'oleaut32')
126
+ API.new('SafeArrayGetElement', 'PLP', 'L', 'oleaut32')
127
+ API.new('SafeArrayGetElemsize', 'P', 'L', 'oleaut32')
128
+ API.new('SafeArrayGetLBound', 'PLP', 'L', 'oleaut32')
129
+ API.new('SafeArrayGetUBound', 'PLP', 'L', 'oleaut32')
130
+ API.new('SafeArrayLock', 'P', 'L', 'oleaut32')
131
+ API.new('SafeArrayPtrOfIndex', 'PPP', 'L', 'oleaut32')
132
+ API.new('SafeArrayPutElement', 'PPP', 'L', 'oleaut32')
133
+ API.new('SafeArrayRedim', 'PP', 'L', 'oleaut32')
134
+ API.new('SafeArrayUnaccessData', 'P', 'L', 'oleaut32')
135
+ API.new('SafeArrayUnlock', 'P', 'L', 'oleaut32')
136
+ API.new('SetErrorInfo', 'LP', 'L', 'oleaut32')
137
+ API.new('SysAllocString', 'P', 'L', 'oleaut32')
138
+ API.new('SysAllocStringByteLen', 'PI', 'L', 'oleaut32')
139
+ API.new('SysFreeString', 'P', 'V', 'oleaut32')
140
+ API.new('SysReAllocString', 'PP', 'L', 'oleaut32')
141
+ API.new('SysReAllocStringLen', 'PPI', 'L', 'oleaut32')
142
+ API.new('SysStringByteLen', 'P', 'L', 'oleaut32')
143
+ API.new('SysStringLen', 'P', 'L', 'oleaut32')
144
+ API.new('SystemTimeToVariantTime', 'PP', 'I', 'oleaut32')
145
+ API.new('UnRegisterTypeLib', 'PLLLL', 'I', 'oleaut32')
146
+ API.new('VectorFromBstr', 'PP', 'L', 'oleaut32')
147
+ end
148
+ end
149
+ end
@@ -1,24 +1,24 @@
1
- require 'windows/api'
2
-
3
- module Windows
4
- module COM
5
- module Variant
6
- API.auto_namespace = 'Windows::COM::Variant'
7
- API.auto_constant = true
8
- API.auto_method = true
9
- API.auto_unicode = false
10
-
11
- private
12
-
13
- VARIANT_TRUE = -1
14
- VARIANT_FALSE = 0
15
-
16
- API.new('VariantChangeType', 'PPIL', 'L', 'oleaut32')
17
- API.new('VariantChangeTypeEx', 'PPLLL', 'L', 'oleaut32')
18
- API.new('VariantClear', 'P', 'L', 'oleaut32')
19
- API.new('VariantCopy', 'PP', 'L', 'oleaut32')
20
- API.new('VariantCopyInd', 'PP', 'L', 'oleaut32')
21
- API.new('VariantInit', 'P', 'V', 'oleaut32')
22
- end
23
- end
24
- end
1
+ require 'windows/api'
2
+
3
+ module Windows
4
+ module COM
5
+ module Variant
6
+ API.auto_namespace = 'Windows::COM::Variant'
7
+ API.auto_constant = true
8
+ API.auto_method = true
9
+ API.auto_unicode = false
10
+
11
+ private
12
+
13
+ VARIANT_TRUE = -1
14
+ VARIANT_FALSE = 0
15
+
16
+ API.new('VariantChangeType', 'PPIL', 'L', 'oleaut32')
17
+ API.new('VariantChangeTypeEx', 'PPLLL', 'L', 'oleaut32')
18
+ API.new('VariantClear', 'P', 'L', 'oleaut32')
19
+ API.new('VariantCopy', 'PP', 'L', 'oleaut32')
20
+ API.new('VariantCopyInd', 'PP', 'L', 'oleaut32')
21
+ API.new('VariantInit', 'P', 'V', 'oleaut32')
22
+ end
23
+ end
24
+ end
@@ -1,114 +1,114 @@
1
- require 'windows/api'
2
-
3
- module Windows
4
- module Console
5
- API.auto_namespace = 'Windows::Console'
6
- API.auto_constant = true
7
- API.auto_method = true
8
- API.auto_unicode = true
9
-
10
- private
11
-
12
- CTRL_C_EVENT = 0
13
- CTRL_BREAK_EVENT = 1
14
- CTRL_CLOSE_EVENT = 2
15
- CTRL_LOGOFF_EVENT = 5
16
- CTRL_SHUTDOWN_EVENT = 6
17
-
18
- ENABLE_PROCESSED_INPUT = 0x0001
19
- ENABLE_LINE_INPUT = 0x0002
20
- ENABLE_WRAP_AT_EOL_OUTPUT = 0x0002
21
- ENABLE_ECHO_INPUT = 0x0004
22
- ENABLE_WINDOW_INPUT = 0x0008
23
- ENABLE_MOUSE_INPUT = 0x0010
24
- ENABLE_INSERT_MODE = 0x0020
25
- ENABLE_QUICK_EDIT_MODE = 0x0040
26
-
27
- STD_INPUT_HANDLE = -10
28
- STD_OUTPUT_HANDLE = -11
29
- STD_ERROR_HANDLE = -12
30
-
31
- # Console window constants
32
- FOREGROUND_BLUE = 0x0001
33
- FOREGROUND_GREEN = 0x0002
34
- FOREGROUND_RED = 0x0004
35
- FOREGROUND_INTENSITY = 0x0008
36
- BACKGROUND_BLUE = 0x0010
37
- BACKGROUND_GREEN = 0x0020
38
- BACKGROUND_RED = 0x0040
39
- BACKGROUND_INTENSITY = 0x0080
40
- COMMON_LVB_LEADING_BYTE = 0x0100
41
- COMMON_LVB_TRAILING_BYTE = 0x0200
42
- COMMON_LVB_GRID_HORIZONTAL = 0x0400
43
- COMMON_LVB_GRID_LVERTICAL = 0x0800
44
- COMMON_LVB_GRID_RVERTICAL = 0x1000
45
- COMMON_LVB_REVERSE_VIDEO = 0x4000
46
- COMMON_LVB_UNDERSCORE = 0x8000
47
- COMMON_LVB_SBCSDBCS = 0x0300
48
-
49
- CONSOLE_FULLSCREEN = 1
50
- CONSOLE_OVERSTRIKE = 1
51
- CONSOLE_FULLSCREEN_HARDWARE = 2
52
-
53
- API.new('AddConsoleAlias', 'PPP', 'B')
54
- API.new('AllocConsole', 'V', 'B')
55
- API.new('CreateConsoleScreenBuffer', 'LLPLP', 'L')
56
- API.new('FillConsoleOutputAttribute', 'LILLP', 'B')
57
- API.new('FillConsoleOutputCharacter', 'LILLP', 'B')
58
- API.new('FlushConsoleInputBuffer', 'L', 'B')
59
- API.new('FreeConsole', 'V', 'B')
60
- API.new('GenerateConsoleCtrlEvent', 'LL', 'B')
61
- API.new('GetConsoleAlias', 'PPLP', 'L')
62
- API.new('GetConsoleAliases', 'PLP', 'L')
63
- API.new('GetConsoleAliasesLength', 'P', 'L')
64
- API.new('GetConsoleAliasExes', 'PL', 'L')
65
- API.new('GetConsoleAliasExesLength', 'V', 'L')
66
- API.new('GetConsoleCP', 'V', 'I')
67
- API.new('GetConsoleCursorInfo', 'LP', 'B')
68
- API.new('GetConsoleMode', 'LP', 'B')
69
- API.new('GetConsoleOutputCP', 'V', 'I')
70
- API.new('GetConsoleScreenBufferInfo', 'LP', 'B')
71
- API.new('GetConsoleTitle', 'PL', 'L')
72
- API.new('GetConsoleWindow', 'V', 'L')
73
- API.new('GetLargestConsoleWindowSize', 'L', 'L')
74
- API.new('GetNumberOfConsoleInputEvents', 'LP', 'B')
75
- API.new('GetNumberOfConsoleMouseButtons', 'L', 'B')
76
- API.new('GetStdHandle', 'L', 'L')
77
- API.new('PeekConsoleInput', 'LPLP', 'B')
78
- API.new('ReadConsole', 'LPLPP', 'B')
79
- API.new('ReadConsoleInput', 'LPLP', 'B')
80
- API.new('ReadConsoleOutput', 'LPLLP', 'B')
81
- API.new('ReadConsoleOutputAttribute', 'LPLLP', 'B')
82
- API.new('ReadConsoleOutputCharacter', 'LPLLP', 'B')
83
- API.new('ScrollConsoleScreenBuffer', 'LPPLP', 'B')
84
- API.new('SetConsoleActiveScreenBuffer', 'L', 'B')
85
- API.new('SetConsoleCP', 'L', 'B')
86
- API.new('SetConsoleCtrlHandler', 'KI', 'B')
87
- API.new('SetConsoleCursorInfo', 'LP', 'B')
88
- API.new('SetConsoleCursorPosition', 'LP', 'B')
89
- API.new('SetConsoleMode', 'LL', 'B')
90
- API.new('SetConsoleOutputCP', 'I', 'B')
91
- API.new('SetConsoleScreenBufferSize', 'LL', 'B')
92
- API.new('SetConsoleTextAttribute', 'LL', 'B')
93
- API.new('SetConsoleTitle', 'P', 'B')
94
- API.new('SetConsoleWindowInfo', 'LIP', 'B')
95
- API.new('SetStdHandle', 'LL', 'B')
96
- API.new('WriteConsole', 'LPLPP', 'B')
97
- API.new('WriteConsoleInput', 'LPLP', 'B')
98
- API.new('WriteConsoleOutput', 'LPLLP', 'B')
99
- API.new('WriteConsoleOutputAttribute', 'LPLLP', 'B')
100
- API.new('WriteConsoleOutputCharacter', 'LPLLP', 'B')
101
-
102
- begin
103
- API.new('AttachConsole', 'L', 'B')
104
- API.new('GetConsoleDisplayMode', 'P', 'L')
105
- API.new('GetConsoleFontSize', 'LL', 'L')
106
- API.new('GetConsoleProcessList', 'PL', 'L')
107
- API.new('GetConsoleSelectionInfo', 'P', 'B')
108
- API.new('GetCurrentConsoleFont' , 'LIP', 'B')
109
- API.new('SetConsoleDisplayMode', 'LLP', 'B')
110
- rescue Win32::API::LoadLibraryError
111
- # Windows XP or later
112
- end
113
- end
114
- end
1
+ require 'windows/api'
2
+
3
+ module Windows
4
+ module Console
5
+ API.auto_namespace = 'Windows::Console'
6
+ API.auto_constant = true
7
+ API.auto_method = true
8
+ API.auto_unicode = true
9
+
10
+ private
11
+
12
+ CTRL_C_EVENT = 0
13
+ CTRL_BREAK_EVENT = 1
14
+ CTRL_CLOSE_EVENT = 2
15
+ CTRL_LOGOFF_EVENT = 5
16
+ CTRL_SHUTDOWN_EVENT = 6
17
+
18
+ ENABLE_PROCESSED_INPUT = 0x0001
19
+ ENABLE_LINE_INPUT = 0x0002
20
+ ENABLE_WRAP_AT_EOL_OUTPUT = 0x0002
21
+ ENABLE_ECHO_INPUT = 0x0004
22
+ ENABLE_WINDOW_INPUT = 0x0008
23
+ ENABLE_MOUSE_INPUT = 0x0010
24
+ ENABLE_INSERT_MODE = 0x0020
25
+ ENABLE_QUICK_EDIT_MODE = 0x0040
26
+
27
+ STD_INPUT_HANDLE = -10
28
+ STD_OUTPUT_HANDLE = -11
29
+ STD_ERROR_HANDLE = -12
30
+
31
+ # Console window constants
32
+ FOREGROUND_BLUE = 0x0001
33
+ FOREGROUND_GREEN = 0x0002
34
+ FOREGROUND_RED = 0x0004
35
+ FOREGROUND_INTENSITY = 0x0008
36
+ BACKGROUND_BLUE = 0x0010
37
+ BACKGROUND_GREEN = 0x0020
38
+ BACKGROUND_RED = 0x0040
39
+ BACKGROUND_INTENSITY = 0x0080
40
+ COMMON_LVB_LEADING_BYTE = 0x0100
41
+ COMMON_LVB_TRAILING_BYTE = 0x0200
42
+ COMMON_LVB_GRID_HORIZONTAL = 0x0400
43
+ COMMON_LVB_GRID_LVERTICAL = 0x0800
44
+ COMMON_LVB_GRID_RVERTICAL = 0x1000
45
+ COMMON_LVB_REVERSE_VIDEO = 0x4000
46
+ COMMON_LVB_UNDERSCORE = 0x8000
47
+ COMMON_LVB_SBCSDBCS = 0x0300
48
+
49
+ CONSOLE_FULLSCREEN = 1
50
+ CONSOLE_OVERSTRIKE = 1
51
+ CONSOLE_FULLSCREEN_HARDWARE = 2
52
+
53
+ API.new('AddConsoleAlias', 'PPP', 'B')
54
+ API.new('AllocConsole', 'V', 'B')
55
+ API.new('CreateConsoleScreenBuffer', 'LLPLP', 'L')
56
+ API.new('FillConsoleOutputAttribute', 'LILLP', 'B')
57
+ API.new('FillConsoleOutputCharacter', 'LILLP', 'B')
58
+ API.new('FlushConsoleInputBuffer', 'L', 'B')
59
+ API.new('FreeConsole', 'V', 'B')
60
+ API.new('GenerateConsoleCtrlEvent', 'LL', 'B')
61
+ API.new('GetConsoleAlias', 'PPLP', 'L')
62
+ API.new('GetConsoleAliases', 'PLP', 'L')
63
+ API.new('GetConsoleAliasesLength', 'P', 'L')
64
+ API.new('GetConsoleAliasExes', 'PL', 'L')
65
+ API.new('GetConsoleAliasExesLength', 'V', 'L')
66
+ API.new('GetConsoleCP', 'V', 'I')
67
+ API.new('GetConsoleCursorInfo', 'LP', 'B')
68
+ API.new('GetConsoleMode', 'LP', 'B')
69
+ API.new('GetConsoleOutputCP', 'V', 'I')
70
+ API.new('GetConsoleScreenBufferInfo', 'LP', 'B')
71
+ API.new('GetConsoleTitle', 'PL', 'L')
72
+ API.new('GetConsoleWindow', 'V', 'L')
73
+ API.new('GetLargestConsoleWindowSize', 'L', 'L')
74
+ API.new('GetNumberOfConsoleInputEvents', 'LP', 'B')
75
+ API.new('GetNumberOfConsoleMouseButtons', 'L', 'B')
76
+ API.new('GetStdHandle', 'L', 'L')
77
+ API.new('PeekConsoleInput', 'LPLP', 'B')
78
+ API.new('ReadConsole', 'LPLPP', 'B')
79
+ API.new('ReadConsoleInput', 'LPLP', 'B')
80
+ API.new('ReadConsoleOutput', 'LPLLP', 'B')
81
+ API.new('ReadConsoleOutputAttribute', 'LPLLP', 'B')
82
+ API.new('ReadConsoleOutputCharacter', 'LPLLP', 'B')
83
+ API.new('ScrollConsoleScreenBuffer', 'LPPLP', 'B')
84
+ API.new('SetConsoleActiveScreenBuffer', 'L', 'B')
85
+ API.new('SetConsoleCP', 'L', 'B')
86
+ API.new('SetConsoleCtrlHandler', 'KI', 'B')
87
+ API.new('SetConsoleCursorInfo', 'LP', 'B')
88
+ API.new('SetConsoleCursorPosition', 'LP', 'B')
89
+ API.new('SetConsoleMode', 'LL', 'B')
90
+ API.new('SetConsoleOutputCP', 'I', 'B')
91
+ API.new('SetConsoleScreenBufferSize', 'LL', 'B')
92
+ API.new('SetConsoleTextAttribute', 'LL', 'B')
93
+ API.new('SetConsoleTitle', 'P', 'B')
94
+ API.new('SetConsoleWindowInfo', 'LIP', 'B')
95
+ API.new('SetStdHandle', 'LL', 'B')
96
+ API.new('WriteConsole', 'LPLPP', 'B')
97
+ API.new('WriteConsoleInput', 'LPLP', 'B')
98
+ API.new('WriteConsoleOutput', 'LPLLP', 'B')
99
+ API.new('WriteConsoleOutputAttribute', 'LPLLP', 'B')
100
+ API.new('WriteConsoleOutputCharacter', 'LPLLP', 'B')
101
+
102
+ begin
103
+ API.new('AttachConsole', 'L', 'B')
104
+ API.new('GetConsoleDisplayMode', 'P', 'L')
105
+ API.new('GetConsoleFontSize', 'LL', 'L')
106
+ API.new('GetConsoleProcessList', 'PL', 'L')
107
+ API.new('GetConsoleSelectionInfo', 'P', 'B')
108
+ API.new('GetCurrentConsoleFont' , 'LIP', 'B')
109
+ API.new('SetConsoleDisplayMode', 'LLP', 'B')
110
+ rescue Win32::API::LoadLibraryError
111
+ # Windows XP or later
112
+ end
113
+ end
114
+ end