windows-pr 1.1.2 → 1.1.3

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