Releases: dahall/Vanara
Releases · dahall/Vanara
Release Notes - 3.2.4
Solution layout changes
- Moved much of the individual project file detail to root Directory.Build.* files for consistency. Fixed build errors due to bad or missing project tags. Cleaned up project files.
- Fixed almost all the XML doc and obsolete warnings so to get a clean build
- Fixed AppVeyor build so that it actually would build and now provides a NuGet feed (see README page) with access to early release pacakges.
Additions
- Added
Vanara.PInvoke.DnsApi
and supporting unit test supporting dnsapi.dll. - Added
ISimpleMemoryMethods
(subset ofIMemoryMethods
with just alloc and free) andMemoryMethodsFromSimple<TSimple>
which implements most ofIMemoryMethods
using just the methods fromISimpleMemoryMethods
. - Added
GenericStringMarshalerBase
andGenericStringMarshaler
as custom string marshalers that can be typed against anIMemoryMethods
implementation. The convertedLocalStringMarshaler
andCoTaskMemStringMarshaler
to use that new class. - Introduced base class for
SafeAnysizeStruct
to enable reuse with objects that don't use a single field to determine the length of the array. - Added
GET_X_LPARAM
andGET_Y_LPARAM
toMacros
class and fixedHIWORD
andLOWORD
functions to use unchecked to not lose values. (#114) - Added missing
PROPERTYKEY
constants - Added interface and struct from NotificationActivationCallback.h
- Added
SafeEventHandle
explict IntPtr operator and IntPtr parameter overloads forSetEvent
andResetEvent
. - Added
ObjectIdentifiers
static class with constants used by WinEventProc. (#113)
Fixes
- BREAKING CHANGE: Changed PROPERTYKEY.GetCononicalName to GetCanonicalName (fixed misspelling)
- Fixed bug in
ThumbnailToolbarButtonCollection
Release Notes - 3.2.3
Additions
- Added PInvoke libs for wlanapi.dll and wcmapi.dll.
- Added
SOCKET.ToString
overload. - Added implicit IntPtr operator and
CreateFromStructure
method toSOCKADDR
. - Added socket method overload to take uint as protocol.
- Updated methods to use string overload of
CertFindCertificateInStore
Fixes
- Major changes to
SizeT
which could affect anticipated behavior: All conversions to ordinals now look for max value and will return converted value's max value. No more invalid conversions. - Fixed (#109) problem with
SafePSECURITY_DESCRIPTOR
not disposing usingLocalFree
by changing default constructor. - Changed
WSAQUERYSET.dwNameSpace
to NS enum and added constructor to take a namespace. - Changed
WSAQUERYSET2W
strings to be marshaled strings. - BREAKING CHANGE: Fixed spelling of items in
BackgroundCopyCost
- Fixed XML comments
Release Notes - 3.2.2
Additions
- Added functions from cryptdlg.dll and cryptnet.dll to Vanara.PInvoke.Cryptography
- Added remaining functions from wingdi.h and winppi.h to Vanara.PInvoke.Gdi32
- Added remaining functions from winsock2.h to Vanara.PInvoke.Ws2_32
Fixes
- Removed ScriptXXX function from Vanara.PInvoke.Gdi32 as they were actually exported from it
Release Notes - 3.2.1
Additions
- Added all functions for Crypt32.dll, CryptUI.dll to Vanara.PInvoke.Cryptography.
- Completed crypt functions from AdvApi32.dll in Vanara.PInvoke.Security.
- Updated
NTStatus
struct to exposeToHRESULT()
method - Added IntPtr overload for all WinCon functions currently using StringBuilder param (#107)
Fixes
- Lots of XML documentation
- Corrected other build issues related to project files
- Added missing French resources to Vanara.Core
Release Notes - 3.2.0
Additions
- Added ability to put MRU "Clear All" menu item at top (#104), ability to give "Clear All" menu an icon (#103), and provided callback to provide file icons (#102).
- Finished initial work on TaskbarButton form extender that fully enables all interactions with the taskbar button in the UI.
- Added INameSpaceTreeControl and supporting interfaces.
- Added IShellItemFilter
- Added constructor to MENUITEMINFO and changed dwItemData type to IntPtr.
- Added GetItem and SetItem extension methods to TreeNode
- Added ShellNamespaceTreeControl and supporting test code
- Update lzexpand.h file and included in Kernel32
- Added DMPAPER_USER to DMPAPER enum (#106)
- Added extension methods for IPropertyStore
- Added constants for messages and errors related to task bar items.
- Added IObjectArray.ToArray extension method
- Added simpler version of Shell32.AssocCreate.
- Added PathEx.GetShortPath method
- Allow for ShellItem to function even if it doesn't have a IShellItem reference
- BREAKING CHANGES: Allow for ShellLink to function even if not persisted, added Equals functions, add DataFlags and Title property, changed Description to use just a string, removed FullPath property (duplicative and confusing), added Title to ToString, made SaveAs method public.
- BREAKING CHANGE: Major overhaul of shell registration settings. Removed some methods from ShellRegistrar to static methods in registration classes. Completed documentation and enhanced used of collections. Added registration classes for applications and file types.
Fixes
- Removed unused type parameters in generic SendMessage methods
- Fixed bugs in the storage and reading of integer resource identifiers.
- Cleaned up memory use and COM object releases in PropertyStore
- Fixed IconLocation.ToString to display properly.
- Fixed capture and display problems in IndirectResource, and IndirectString.RawValue and ToString for when non-lookup string supplied.
- Updated DisabledItemComboBox with better dispoal handling
- Fixed exceptions thrown by ControlPanel methods by providing HRESULT from underlying COM shell object (#105).
- Changed call at ComReleaser.Dispose to ReleaseComObject instead of FinalReleaseComObject.
Release Notes - 3.1.9
Additions
- Added new functions from olectl.h
- Added Windows 1903 functions from Kernel32 and User32
Fixes
- Fixed bug when using SafeAnysizeStruct (#101)
Release Notes - 3.1.8
Additions
- Completed addition of all functions and interfaces for UrlMon.dll, Opc.dll, and wia_xp.h (OleAut32.dll)
- Added OLEMISC, tagSECURITY_ATTRIBUTES (structure), TYSPEC and uCLSSPEC
Release Notes - 3.1.7
Additions
- Upgraded all projects to support SourceLink and .NET Core 3.1.
- Added new assemblies for UserEnv.dll, Url.dll, UrlMon.dll and Opc.dll
- Added all functions from WinSpool.drv, PrntvPt.dll and Xps Print Interfaces to
Vanara.PInvoke.Printing
. - Added all GDI print functions to
Vanara.PInvoke.Gdi32
.
Fixes
- Fixed problem with some functions trying to use
PIDL[]
, which can't be marshaled, by usingIntPtr[]
. - Fixed memory leaks in BITS and its unit tests.
- Breaking change: Fixed
IEnumIDList.Next
method declaration to support multiple items. - Added missing
CLSCTX
values - Addressed a number of minor user submitted bugs
Release Notes - 3.1.6
Additions
- Added Vanara.PInvoke.Printing project to include, for now, winspool.h functions
- Adding missing kerberos related structures to Vanara.PInvoke.Security
- Added IsMarshalable method and converted most uses of IsBlittable to it.
- Added EnumInheritance and InheritsFrom extension methods.
- Added ISerializable support as last option for pushing and pulling from memory pointers
Fixes
- Fixed overruns on IntPtr write functions
- Potentially Breaking Change: Moved DEVMODE and supporting enums out from Gdi32 class to items under the Vanara.PInvoke namespace. Moved DM_SPECVERSION to const value under DEVMODE struct.
- Fixed MarshalToPtr(Array ... method to not throw casting exception.
Release Notes - 3.1.5
Fixes
- Fixed overflow problem when marshaling arrays and enumerations
- Fixed bug with POLICY_AUDIT_EVENTS_INFO when using 64-bit builds.