windows-pr 1.1.3 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (123) hide show
  1. data/CHANGES +15 -0
  2. data/MANIFEST +65 -65
  3. data/README +149 -149
  4. data/Rakefile +37 -52
  5. data/doc/conversion_guide.txt +37 -37
  6. data/lib/windows/clipboard.rb +2 -0
  7. data/lib/windows/com.rb +2 -0
  8. data/lib/windows/com/accessibility.rb +12 -10
  9. data/lib/windows/com/automation.rb +149 -147
  10. data/lib/windows/com/variant.rb +24 -22
  11. data/lib/windows/console.rb +114 -112
  12. data/lib/windows/debug.rb +35 -33
  13. data/lib/windows/device_io.rb +248 -246
  14. data/lib/windows/directory.rb +2 -0
  15. data/lib/windows/error.rb +2 -0
  16. data/lib/windows/eventlog.rb +2 -0
  17. data/lib/windows/file.rb +264 -262
  18. data/lib/windows/file_mapping.rb +25 -23
  19. data/lib/windows/filesystem.rb +2 -0
  20. data/lib/windows/gdi/bitmap.rb +65 -63
  21. data/lib/windows/gdi/device_context.rb +46 -44
  22. data/lib/windows/gdi/metafile.rb +40 -38
  23. data/lib/windows/gdi/painting_drawing.rb +115 -113
  24. data/lib/windows/handle.rb +2 -0
  25. data/lib/windows/library.rb +2 -0
  26. data/lib/windows/limits.rb +34 -31
  27. data/lib/windows/mailslot.rb +2 -0
  28. data/lib/windows/memory.rb +2 -0
  29. data/lib/windows/msvcrt/buffer.rb +75 -73
  30. data/lib/windows/msvcrt/directory.rb +31 -29
  31. data/lib/windows/msvcrt/file.rb +47 -45
  32. data/lib/windows/msvcrt/io.rb +62 -60
  33. data/lib/windows/msvcrt/string.rb +2 -0
  34. data/lib/windows/msvcrt/time.rb +169 -167
  35. data/lib/windows/national.rb +580 -578
  36. data/lib/windows/network/management.rb +525 -523
  37. data/lib/windows/network/snmp.rb +92 -90
  38. data/lib/windows/network/winsock.rb +128 -126
  39. data/lib/windows/nio.rb +2 -0
  40. data/lib/windows/ntfs/winternl.rb +96 -82
  41. data/lib/windows/path.rb +143 -141
  42. data/lib/windows/pipe.rb +42 -40
  43. data/lib/windows/process.rb +2 -0
  44. data/lib/windows/registry.rb +171 -126
  45. data/lib/windows/security.rb +479 -477
  46. data/lib/windows/security/authentication.rb +32 -30
  47. data/lib/windows/service.rb +142 -140
  48. data/lib/windows/shell.rb +171 -169
  49. data/lib/windows/socket.rb +86 -0
  50. data/lib/windows/sound.rb +39 -37
  51. data/lib/windows/synchronize.rb +133 -131
  52. data/lib/windows/system_info.rb +4 -2
  53. data/lib/windows/thread.rb +2 -0
  54. data/lib/windows/time.rb +48 -46
  55. data/lib/windows/tool_helper.rb +36 -34
  56. data/lib/windows/unicode.rb +2 -0
  57. data/lib/windows/volume.rb +61 -59
  58. data/lib/windows/window.rb +81 -79
  59. data/lib/windows/window/classes.rb +59 -57
  60. data/lib/windows/window/dialog.rb +91 -89
  61. data/lib/windows/window/menu.rb +102 -100
  62. data/lib/windows/window/message.rb +297 -295
  63. data/lib/windows/window/properties.rb +20 -18
  64. data/lib/windows/window/timer.rb +19 -17
  65. data/lib/windows/wsa.rb +102 -0
  66. data/test/tc_clipboard.rb +41 -41
  67. data/test/tc_com.rb +32 -32
  68. data/test/tc_com_automation.rb +15 -15
  69. data/test/tc_console.rb +108 -108
  70. data/test/tc_debug.rb +48 -48
  71. data/test/tc_device_io.rb +29 -29
  72. data/test/tc_directory.rb +25 -25
  73. data/test/tc_error.rb +38 -50
  74. data/test/tc_eventlog.rb +58 -58
  75. data/test/tc_file.rb +67 -67
  76. data/test/tc_file_mapping.rb +38 -38
  77. data/test/tc_filesystem.rb +27 -27
  78. data/test/tc_gdi_bitmap.rb +25 -25
  79. data/test/tc_gdi_metafile.rb +23 -23
  80. data/test/tc_handle.rb +36 -36
  81. data/test/tc_library.rb +37 -37
  82. data/test/tc_limits.rb +34 -34
  83. data/test/tc_mailslot.rb +22 -22
  84. data/test/tc_memory.rb +44 -44
  85. data/test/tc_msvcrt_buffer.rb +59 -68
  86. data/test/tc_msvcrt_directory.rb +96 -98
  87. data/test/tc_msvcrt_file.rb +80 -80
  88. data/test/tc_msvcrt_io.rb +48 -48
  89. data/test/tc_msvcrt_string.rb +94 -93
  90. data/test/tc_msvcrt_time.rb +19 -29
  91. data/test/tc_national.rb +38 -38
  92. data/test/tc_network_management.rb +32 -32
  93. data/test/tc_network_snmp.rb +31 -31
  94. data/test/tc_network_winsock.rb +34 -34
  95. data/test/tc_nio.rb +32 -32
  96. data/test/tc_ntfs_winternl.rb +33 -18
  97. data/test/tc_path.rb +90 -90
  98. data/test/tc_pipe.rb +53 -53
  99. data/test/tc_process.rb +24 -24
  100. data/test/tc_registry.rb +29 -29
  101. data/test/tc_security.rb +104 -104
  102. data/test/tc_security_authentication.rb +34 -34
  103. data/test/tc_service.rb +57 -57
  104. data/test/tc_shell.rb +34 -34
  105. data/test/tc_socket.rb +20 -0
  106. data/test/tc_sound.rb +37 -37
  107. data/test/tc_synchronize.rb +75 -75
  108. data/test/tc_system_info.rb +33 -43
  109. data/test/tc_thread.rb +29 -29
  110. data/test/tc_time.rb +32 -32
  111. data/test/tc_tool_helper.rb +29 -29
  112. data/test/tc_unicode.rb +62 -62
  113. data/test/tc_volume.rb +47 -47
  114. data/test/tc_window.rb +45 -45
  115. data/test/tc_window_classes.rb +33 -33
  116. data/test/tc_window_dialog.rb +33 -33
  117. data/test/tc_window_menu.rb +29 -29
  118. data/test/tc_window_message.rb +33 -33
  119. data/test/tc_window_properties.rb +29 -29
  120. data/test/tc_window_timer.rb +29 -29
  121. data/test/tc_wsa.rb +19 -0
  122. data/windows-pr.gemspec +1 -1
  123. metadata +13 -7
@@ -1,38 +1,38 @@
1
- == Parameters
2
- Long: 'L'
3
- Integer: 'I'
4
- Pointer: 'P'
5
- Void: 'V'
6
- String: 'S'
7
- Callback: 'K' # win32-api only
8
-
9
- == Windows Data Types
10
- BOOL => 'I' (or 'B', win32-api only)
11
- DWORD => 'L'
12
- HANDLE => 'L'
13
- LPDWORD => 'P' (or 'L')
14
- LPTSTR => 'P'
15
- LPCTSTR => 'S'
16
- UINT => 'L'
17
- VOID => 'V'
18
- WORD => 'I'
19
- LPVOID => 'L' (or 'P')
20
- CALLBACK => 'K'
21
-
22
- == C Data Types
23
- void => 'V'
24
- void* => 'P'
25
- char* => 'P'
26
- const char* => 'L'
27
- int => 'I'
28
- long => 'L'
29
- struct => 'P'
30
- struct* => 'P'
31
-
32
- == Notes
33
- In practice most LPVOID types should be designated as 'L' because this
34
- usually means the function is looking for an address. Check the documentation
35
- for details.
36
-
37
- If using the windows-api library, you can use 'B' instead of 'I' for the return
1
+ == Parameters
2
+ Long: 'L'
3
+ Integer: 'I'
4
+ Pointer: 'P'
5
+ Void: 'V'
6
+ String: 'S'
7
+ Callback: 'K' # win32-api only
8
+
9
+ == Windows Data Types
10
+ BOOL => 'I' (or 'B', win32-api only)
11
+ DWORD => 'L'
12
+ HANDLE => 'L'
13
+ LPDWORD => 'P' (or 'L')
14
+ LPTSTR => 'P'
15
+ LPCTSTR => 'S'
16
+ UINT => 'L'
17
+ VOID => 'V'
18
+ WORD => 'I'
19
+ LPVOID => 'L' (or 'P')
20
+ CALLBACK => 'K'
21
+
22
+ == C Data Types
23
+ void => 'V'
24
+ void* => 'P'
25
+ char* => 'P'
26
+ const char* => 'L'
27
+ int => 'I'
28
+ long => 'L'
29
+ struct => 'P'
30
+ struct* => 'P'
31
+
32
+ == Notes
33
+ In practice most LPVOID types should be designated as 'L' because this
34
+ usually means the function is looking for an address. Check the documentation
35
+ for details.
36
+
37
+ If using the windows-api library, you can use 'B' instead of 'I' for the return
38
38
  type for functions that return a BOOL.
@@ -7,6 +7,8 @@ module Windows
7
7
  API.auto_method = true
8
8
  API.auto_unicode = true
9
9
 
10
+ private
11
+
10
12
  CF_TEXT = 1
11
13
  CF_BITMAP = 2
12
14
  CF_METAFILEPICT = 3
data/lib/windows/com.rb CHANGED
@@ -7,6 +7,8 @@ module Windows
7
7
  API.auto_method = true
8
8
  API.auto_unicode = false
9
9
 
10
+ private
11
+
10
12
  # These constants are from wtypes.h but are only used in a COM context
11
13
  # as far as I know.
12
14
 
@@ -1,14 +1,16 @@
1
1
  require 'windows/api'
2
2
 
3
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
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
10
12
 
11
- API.new('ObjectFromLresult', 'LPIP', 'L', 'oleacc')
12
- end
13
- end
14
- end
13
+ API.new('ObjectFromLresult', 'LPIP', 'L', 'oleacc')
14
+ end
15
+ end
16
+ end
@@ -1,147 +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
- 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
+ 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,22 +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
- 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
+ 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