-
Notifications
You must be signed in to change notification settings - Fork 9
/
CHANGES
456 lines (395 loc) · 20.4 KB
/
CHANGES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
= 1.2.6 - 18-Jan-2017
* Removed wrongly included vendor directory from gem package.
= 1.2.5 - 22-Jun-2016
* Fixed invalid handle constant in 64bit Windows environment.
* Suppress test code warnings generated by minitest 5.9.
= 1.2.4 - 18-Oct-2014
* Replaced test-unit with minitest for the test suite. This necessitated the
addition of a test helper file for compatibility.
* Fix for the Windows::Socket tests.
= 1.2.3 - 19-Feb-2014
* Updated the get_last_error method to better handle encoding issues. Thanks
go to dalang for the spot.
* Added the Windows::Security::SSPI module and an initial set of constants.
* Updated library for OleIconToCursor function in the Windows::COM module.
= 1.2.2 - 12-Jul-2012
* Changed some of the function prototypes in the Windows::Process module to
use 'S' instead of 'P' when dealing with const* strings. This fixes potential
errors regarding attempted modification of frozen strings. Thanks go to
Pok Lau and John Keiser.
* Fixed the multi_to_wide documentation. Thanks go to Dan Rathbun for the spot.
* Fixed the MEM_4MB_PAGES constant in the Windows::Memory module.
* Added some token related error constants to the Windows::Error module.
= 1.2.1 - 25-Aug-2011
* The strcpy, mbscpy and wsccpy functions in the Windows::MSVCRT::String
module have been made friendlier. They will now accept either a string
or an address for the second argument.
* Minor modification to one GetFinalPathNameByHandle test.
= 1.2.0 - 24-Mar-2011
* All methods and constants are now private. These methods were never meant
to be used by individual objects, but are only meant to be used internally.
Note that, because of an issue currently in the windows-api library, some
methods may still be currently public, but users of this library should not
count on that for long.
* Added the Windows::WSA and Windows::Socket modules.
* Fixed the MAKEWORD and MAKELONG macro methods in the SystemInfo module.
* Added many more functions and some constants to the Windows::Registry module.
Thanks go to Dan Rathbun for the suggestion.
* Fixed the HKEY_CURRENT_USER constant in the Windows::Registry module.
* The custom GetFinalPathNameByHandle method for Windows XP and 2000 has been
fixed and reworked. It is limited to a defacto VOLUME_NAME_NT flag value,
however. See the comments for details.
= 1.1.3 - 20-Jan-2011
* Added the windows_7? method to the Windows::SystemInfo module.
* Some minor cosmetic updates to other files.
= 1.1.2 - 6-Nov-2010
* Fixed a job security flag name.
= 1.1.1 - 6-Nov-2010
* Added some security flags for Job objects to the Windows::Process module.
* Added namespace functions to the Windows::Synchronize module.
= 1.1.0 - 5-Nov-2010
* Added the get_volume_type method to the Windows::Volume module.
* Added more tests for the Windows::Volume module.
* Removed the non-gem installation task and added a clean task.
= 1.0.9 - 6-Feb-2010
* A couple of modules that were checking against $KCODE now check against
__ENCODING__ or the string encoding for Ruby 1.9.x.
* Removed an indentation warning that was revealed by Ruby 1.9.x.
* Refactored the Rakefile, scoping and adding additional tasks.
* Updated some tests to handling Ruby 1.9.x better. All tests now pass
without warning with 1.9.x.
* Added SERVICE_ACCEPT_PRESHUTDOWN constant to service.rb.
= 1.0.8 - 24-Aug-2009
* Several return value constants that were set at -1 are now set to
0xFFFFFFFF instead because win32-api returns unsigned longs.
* Removed the two mailslot constants from the Windows::File module. They're
defined in the Windows::Mailslot module.
* Added the windows_version method to the Windows::SystemInfo module. It
returns a float in 'major.minor' format.
= 1.0.7 - 20-Aug-2009
* Added the Windows::Mailslot module.
* The IsProcessInJob function in the Windows::Process module is now wrapped
properly so that it doesn't cause an error on Windows 2000. Thanks go to
Finbar Clenaghan for the spot.
* Minor updates to the conversion guide.
= 1.0.6 - 19-Jul-2009
* Added several job functions to the Windows::Process module.
* Updated license to Artistic 2.0.
= 1.0.5 - 21-May-2009
* Fixed VARIANT_TRUE value in the Windows::COM::Variant module.
* Added some functions to the Windows::National module, and handled some
Vista only functions properly.
* Updated the return types of the SafeArrayCreate and SafeArrayCreateVector
functions in the Windows::COM::Automation module.
= 1.0.4 - 15-May-2009
* Created the Windows::COM::Variant module.
* Created the Windows::COM::Accessibility module.
* Added some IDispatch constants to the Windows::COM module.
* Added some IDispatch error constants to the Windows::Error module.
* Added many more constants to the Windows::COM::Automation module.
* Added a couple of functions to the Windows::National module.
* Corrected the return type for various SysXXX functions in the
Windows::COM::Automation module.
* Corrected the prototype for the RegEnumKeyEx function in the
Windows::Registry module.
= 1.0.3 - 23-Apr-2009
* Created the Windows::GDI::MetaFile module.
* Added GetWindowLongPtr and SetWindowLongPtr to Windows::Window::Classes.
* Added DefWindowProc to Windows::Window::Message.
* Added more methods and format constants to the Windows::Clipboard module.
* Added more methods to the Windows::GDI::Bitmap module.
* Prototype update for DragQueryFile() in the Windows::Shell module.
* Return type change for GetClipboardData in the Windows::Clipboard module.
= 1.0.2 - 5-Mar-2009
* Fixed the library for the AttachThreadInput function in the Windows::Thread
module. Thanks go to an anonymous user for the spot.
* Added the beginnings of the Windows::Security::Authentication module.
= 1.0.1 - 9-Feb-2009
* Added the Windows::Window::Menu module.
* Added the Windows::Window::Classes module.
* Added tests for several Windows::Window::XXX modules that weren't
previously covered.
* Now properly wraps some methods in the Windows::Network::Winsock module
that weren't supported on Windows 2000.
* Added the IsWow64Process function to the Windows::Process module.
* Added the windows_64? helper method to the Windows::Process module.
= 1.0.0 - 5-Feb-2009
* Fixed the prototype for DuplicateHandle() in the Windows::Handle module.
= 0.9.9 - 1-Feb-2009
* Now explicitly checks for Win32::API::LoadLibraryError in the method
declarations instead of Windows::API::Error. The latter no longer exists,
and the former is a better way to check for methods that don't exist on
particular versions of Windows. This change requires windows-api 0.3.0
and win32-api 1.3.0.
* Added a few functions to the Windows::Security module.
* Added the NtQuerySystemInformation function to the Windows::NTFS::Winternl
module.
* Added tests for the Windows::NTFS::Winternl module.
* Declaration fix in Windows::Security module for Win2k.
* Fixed a directory test for Win2k.
= 0.9.8 - 15-Dec-2008
* Added many more functions and a few constants to the Windows::Security
module.
= 0.9.7 - 5-Dec-2008
* Renamed Windows::NTFS::File to Windows::NTFS::Winternl.
* Updated the Windows::Network::Management and Windows::Shell modules to use
the 'S' prototype where appropriate.
* Updated the Windows::File module to use the 'S' prototype where appropriate.
* Added the GetFinalPathNameByHandle function to the Windows::NTFS::Winternl
module for Windows XP/2000.
* Added a few new functions to the Windows::Volume module and converted 'P'
prototypes to 'S' where appropriate.
* Added SE_OBJECT_TYPE enumeration values to the Windows::Security module.
= 0.9.6 - 14-Nov-2008
* Updated the RegisterServiceCtrlHandler and RegisterServiceCtrlHandlerEx
prototypes in the Windows::Service module. Changed old 'P' prototype to 'K'
for callbacks.
* Added explicit ANSI and Wide character functions for GetFileSecurity and
SetFileSecurity in the Windows::Security module (since automatic unicode
generation is set to false for that particular module).
* Added IO reparse point tag constants to the Windows::File module.
* The multi_to_wide helper method in Windows::Unicode now returns the string
as-is if it's already a Unicode string.
* A couple 'P' prototypes were switched to 'S' in Windows::Unicode functions.
= 0.9.5 - 21-Oct-2008
* Fixed the rescue clauses for unsupported functions for the Windows::Console
and Windows::Debug modules. Thanks go to an anonymous user for the spot.
* Added a couple functions to the Windows::File and Windows::NIO modules.
* Removed the SetFilePointer and SetFilePointerEx functions from the
Windows::File module since they're already in the Windows::NIO module.
= 0.9.4 - 27-Sep-2008
* Added some macros from windef.h to the Windows::SystemInfo module.
* Added the windows_2000?, windows_xp?, windows_2003? and windows_vista?
helper methods to the Windows::SystemInfo module.
* Added the umask and umask_s functions to the Windows::MSVCRT::File module.
* Added SH_DENYNO and SHORT_LIVED constants to the Windows::MSVCRT::IO module.
* Fixed the prototype for open and wopen in the Windows::MSVCRT::IO module.
* Added SHGetFolderLocation to the Windows::Shell module.
* Added NT privilege constants to the Windows::Security module.
* The wide_to_multi helper function is now friendlier with regards to strings
that may be missing a trailing double null.
= 0.9.3 - 12-Sep-2008
* Added event logging functions for Windows Vista and later to the
Windows::EventLog module.
= 0.9.2 - 5-Sep-2008
* Added some WoW64 functions to Windows::File and Windows::SystemInfo.
* All modules now rescue Windows::API::Error for failed function loads.
I was previously inconsistent on just what error I was rescuing.
= 0.9.1 - 28-Jul-2008
* Yet another refactoring of the multi_to_wide and wide_to_multi helper
methods in the Windows::Unicode module. In addition to a bug fix, they
now raise an ArgumentError if they fail.
* Yet another tweak to get_last_error in the Windows::Error module. It now
always uses the explicit ANSI version of the FormatMessage function.
* Added tests for the multi_to_wide and wide_to_multi helper methods.
= 0.9.0 - 26-Jul-2008
* The process of converting prototypes from 'P' to 'S' has begun. This
means that this library now requires win32-api 1.2.0 or later.
* Added the Windows::Window::Message module.
* Added the Windows::Window::Timer module.
* Added the Windows::Window::Dialog module.
* Added many more functions and constants to the Windows::Security module.
* All ACE related constants have been move from the Windows::File module and
are instead defined in the Windows::Security module. Not to worry, though.
The Windows::File module now mixes in the Windows::Security module.
* Added several profile related functions to the Windows::Shell module.
* Changed the prototype of ConvertSidToStringSid and ConvertStringSidToSid
back to 'LP' in the Windows::Security module. I'm not sure why I changed
those before. If this causes too much grief I'll change them back.
= 0.8.7 - 23-Jun-2008
* Wide character fix for the get_last_error helper function. Thanks go to
Dave Whitley for the spot.
* Added local memory functions and constants to the Windows::Memory module.
= 0.8.6 - 14-Jun-2008
* Added the Windows::Network::Winsock module.
* Added the Windows::ToolHelper module.
* Added CLSCTX enum constants to the Windows::COM module.
* Added several WSA socket error constants to Windows::Error.
* Moved the Process32First and Process32Next functions from Windows::Process
to Windows::ToolHelper.
= 0.8.5 - 28-May-2008
* Added more pipe related error codes to the Windows::Error module.
* Added the FlushFileBuffers function to the Windows::File module.
= 0.8.4 - 18-May-2008
* Added the Windows::NTFS::File module.
* Added several IOCTL macro methods to the Windows::DeviceIO module.
* Wrapped the GetLayeredWindowAttributes function in the Windows::Window
module since it is only supported on Windows XP or later.
* Fixed the CreateThread prototype with regards to callback support.
= 0.8.3 - 26-Apr-2008
* Now requires windows-api 0.2.3 or later to take advantage of the
improvements in auto constant generation.
* Fixed a scope resolution bug in the custom memcpy method in the
Windows::MSVCRT::Buffer module.
* Added some more Windows::MSVCRT::String functions.
* Added the FSCTL_ENUM_USN_DATA macro method in Windows::DeviceIO.
* Some modules were refactored to take advantage of the improvements in
windows-api 0.2.3. This resulted in a net reduction of code.
= 0.8.2 - 17-Apr-2008
* Most of the MSVCRT modules now use the MSVCRT_DLL from the Windows::API
library. This helps resolve an obscure bug where state information from a
statically linked runtime DLL is local to that runtime and not shared with
the Ruby process.
* Now requires windows-api 0.2.2 or later.
* Added more MSVCRT tests.
= 0.8.1 - 27-Mar-2008
* Added waitable timer functions to the Windows::Synchronize module.
* Fixed params 3 and 4 in the CreateProcess function.
= 0.8.0 - 20-Jan-2008
* Added the Windows::COM::Automation module.
* Moved Windows::NetworkManagement to Windows::Network::Management.
* Added the Windows::Network::SNMP module.
* Added a MAXPATH constant to Windows::Limits, which is variable depending
on whether or not $KCODE is set to UTF8.
* Added some macro methods to Windows::Error.
* Added many more methods to Windows::COM.
* Fixed the prototype for the SetConsoleCtrlHandler in the Windows::Console
module, and added the CTRL_CLOSE_EVENT constant.
= 0.7.4 - 11-Dec-2007
* Added several more functions to Windows::Window.
* Added many more constants to the Windows::NetworkManagement module.
* Added several more functions and a few constants to the Windows::Process
module.
* The multi_to_wide and wide_to_multi methods in Windows::Unicode will now
return nil if you pass a nil argument. Also, they will raise a TypeError
if you pass a non-nil, non-string object.
= 0.7.3 - 23-Nov-2007
* Several thread related methods were moved out of the Windows::Process
module and into the Windows::Thread module.
* Added critical section methods to the Windows::Synchronize module.
* Added many more constants and methods to the Windows::Shell module.
* Created the Windows::Thread module.
* Fixed the PathCreateFromUrl return type in the Windows::Path module.
* Added the strncpy and wcsncpy functions to the Windows::MSVCRT::String
module.
* Added several token related methods and constants to the Windows::Security
module.
* The multi_to_wide and wide_to_multi methods were refactored slightly. Both
now only use MSVCRT string functions internally in case any Ruby String
methods are redefined.
= 0.7.2 - 15-Oct-2007
* Added the Windows::MSVCRT::Time module.
* Added the Windows::MSVCRT::Directory module.
* Added some SID related security constants to the Windows::Security module.
* Added more constants and the HasOverlappedIoCompleted macro to the
Windows::Synchronize module.
* Added some 'find' methods to the Windows::File module.
* Some prototype fixes for the 'Virtual' functions in Windows::Memory.
= 0.7.1 - 21-Sep-2007
* Added USN (changejournal) macros to Windows::DeviceIO.
* Added the Heap functions to Windows::Memory.
* Added the Windows::Time module.
* Added a Rakefile with tasks for installation and testing.
* Added and refactored some tests.
= 0.7.0 - 9-Aug-2007
* All modules now use the windows-api library behind the scenes.
* Added the Windows::NIO module. This contains native Windows IO functions.
* Added several more functions to the Windows::GDI::PaintDrawing module.
* Fixed the prototype for the GetWindowsDirectory function in the
Windows::SystemInfo module.
= 0.6.6 - 3-May-2007
* Added the Windows::MSVCRT::IO module.
* Removed the SetConsoleCommandHistoryMode method from the Windows::Console
module. This was a preliminary function for Vista only, and it has since
been removed. Thanks go to Drew Colthorp for the spot.
= 0.6.5 - 28-Feb-2007
* Important bug fixes for the Windows::Directory, Windows::Memory,
Windows::Synchronize and Windows::Volume modules. These were either fixes
for the function declaration or the wrapper method. Thanks go to Katsuyuki
Miyamuko for the spot and the patches.
= 0.6.4 - 28-Feb-2007
* Add more string functions to the Windows::MSVCRT::String module.
* Minor enhancement to the multi_to_wide and wide_to_multi helper methods in
the Windows::Unicode module. You can now pass an explicit encoding as an
optional second argument.
* Added several more methods to the Windows::National module.
* Finer grained method wrapping/checking for the Windows::Volume module.
Thanks go to Dave Rose for the spot.
= 0.6.3 - 2-Feb-2007
* Fixed the DLL for SetLastErrorEx in the Windows::Error module.
* Fixed an unitialized constant bug in the Windows::DeviceIO module.
* Fixed a bug in the NetWkstaSetInfo() method, from the
Windows::NetworkManagement module. Thanks go to Richard (???) for the spot.
* Added more security related methods and constants to the Windows::Security
module.
* Fixed a bug in the GetComputerName method in the Windows::SystemInfo module.
Thanks go to Russell Christopher for the spot and the fix.
* Changed method prototype for GetUserName and GetUserNameEx in the
Windows::SystemInfo module.
* Added the PIPE_UNLIMITED_INSTANCES constant to the Windows::Pipe module.
* Altered the prototype for the ConvertSidToStringSid() and
ConvertStringSidToSid() methods from the Windows::Security module.
= 0.6.2 - 21-Dec-2006
* Added file related constants from sys/stat.h to the Windows::MSVCRT::File
module.
* Added the open_osfhandle method to the Windows::Handle module.
* Changed the signatures for the VirtualFree and VirtualFreeEx functions in
the Windows::Memory module.
* Added the Windows::GDI::Bitmap, Windows::GDI::DeviceContext and
Windows::GDI::PaintingDrawing modules.
= 0.6.1 - 22-Nov-2006
* Changed the signature for VirtualAlloc and VirtualAllocEx in the
Windows::Memory module (long instead of pointer for first argument).
* Added the get_osfhandle method to the Windows::Handle module.
= 0.6.0 - 5-Nov-2006
* Added the Windows::Volume module.
= 0.5.6 - 22-Oct-2006
* Modified the memcpy method in Windows::MSVCRT::Buffer to do the right
thing based on the type of the parameters, as well as automatically
set the default size to the size of the source being copied.
= 0.5.5 - 11-Oct-2006
* Prototype modification for VirtualQuery and VirtualQueryEx in the
Windows::Memory module.
= 0.5.4 - 8-Sep-2006
* Added the Windows::NetworkManagement module, which contains methods like
NetUserAdd(), etc.
* Fixed bugs in SetLastError and SetLastErrorEx declarations.
* Finer grained method wrapping/checking for the Windows::Library module.
* Finer grained method wrapping/checking for the Windows::Console module.
* Added a test case for the Windows::Library module.
* Added the LOCKFILE_EXCLUSIVE_LOCK and LOCKFILE_FAIL_IMMEDIATELY constants
to the Windows::File module.
= 0.5.3 - 10-Aug-2006
* Added wide character functions to the EventLog module.
* Added a test suite for the EventLog module.
* Fixed method wrapper for MapViewOfFileEx.
* Finer grained method wrapping/checking for the Windows::Registry module (the
RegSaveKeyEx might not be defined).
= 0.5.2 - 29-Jul-2006
* Prototype fixes/changes for CreateProcess, GlobalLock, GlobalMemoryStatusEx,
and CreateFileMapping.
* Finer grained method wrapping/checking for the Windows::Process module (only
two methods might not be defined).
* Added method wrappers for the Handle constants.
* Added mmap related methods and constants.
* Added more test cases.
* Added wide character methods to the Windows::Directory class.
* Added wide character helper methods.
* Added a few more methods to MSVCRT::String.
= 0.5.1 - 26-May-2006
* Minor updates and fixes for the Unicode and DeviceIO modules.
* Added some wide character support, based on $KCODE values (which should
not be used at this time).
= 0.5.0 - 23-May-2006
* Added the Registry module
* Added the EventLog module
* Added the National module
* Added the SystemInfo module
= 0.4.0 - 7-May-2006
* Bug fix for the WaitForMultipleObjects method in synchronize.rb
* Added the Window module (just a few constants for now)
* Added the Console module (AttachConsole, etc)
* Added the Library module (LoadLibrary, etc)
* Added the Directory module (CreateDirectory, etc)
* Added the Shell module (some constants, a few methods for now)
* Added the Unicode module (WideCharToMultiByte, etc)
* Added process creation, priority and startf flags to the Process module
= 0.3.0 - 22-Apr-2006
* Added the Limits module.
* Added the Security module.
* Fixed a signature bug in the MSVCRT/Buffer module.
= 0.2.0 - 13-Apr-2006
* Added the FileSystem module.
* Fixed signature and dll mistakes in the File module.
= 0.1.0 - 4-Apr-2006
* Initial release