New Assemblies
- Vanara.PInvoke.ElsCore
- Vanara.PInvoke.SpellCheckingAPI
- Vanara.PInvoke.ActiveDS
- Vanara.DirectoryServices
Additions
- Added ADS errors to HRESULT values
- Added AnySIzeStructFieldArray for cases when using in-memory structures with ANYSIZE arrays as the final field.
- Added BCRYPT_DH_PARAMETERS_MAGIC const, BCRYPT_DH_PARAMETER_HEADER struct, and handle converters to BCRYPT_HANDLE
- Added BCRYPT_XX_HANDLE conversions to BCRYPT_HANDLE
- Added IEnumVARIANT.Enum extension method
- Added MakeAbsoluteSD method with non-typed params.
- Added NCryptBufferDesc ctor for arrays of NCryptBuffer
- Added SafeAllocatedMemoryHandleBase.Equals overload that compares to IntPtr, byte[], and object.
- Added StructPointer class to use in place of T* in structures.
- Added VariantClear overload for ref VARANT param
- Added backup stream structure and enums
- Added missing ComCtl32.ImageList_XXX methods #481
- Added missing messages, constants and enums related to the Touch API.
- Added some helper methods and class to SpellCheckerApi
- Added some helpers for structure fields that are pointers to arrays.
- Added unsafe methods and structs to work with BITMAPINFO
Fixes/Changes
- Breaking change: Updated ComDlg32.OPENFILENAME structure so that all LPCTSTR values are
string?
. - Changed SafePACL and SafePACE size specifiers so they alway align to DWORD boundaries rather than forcing correct input and throwing exceptions.
- Extended SafeAllocatedMemoryBase.Equals to check more than handle and CompareTo to check handle equality first.
- Extended VARIANT.ToObject to better support arrays.
- Fixed bug in SafePSECURITY_DESCRIPTOR.MakeAbsolute, added MakePackedAbsolute to create a single allocated block with all parts of an absolute SD, and MakeSelfRelatative to round things out.
- Fixed bug with new SafeHandle.Equals code
- Fixed small bug in NCryptBufferDesc assignment of pBuffers not setting values correctly when null.
- Set hresult of exceptionForHR with supplied message (#479)
- Updated XML docs for IPortableDeviceXX methods per #483
- Updated memory classes CreateFromStringList methods to support nullable strings.
Full Changelog: v4.0.3...v4.0.4