Skip to content

Releases: dahall/Vanara

Release Notes - 3.2.4

13 Apr 13:01
Compare
Choose a tag to compare

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 of IMemoryMethods with just alloc and free) and MemoryMethodsFromSimple<TSimple> which implements most of IMemoryMethods using just the methods from ISimpleMemoryMethods.
  • Added GenericStringMarshalerBase and GenericStringMarshaler as custom string marshalers that can be typed against an IMemoryMethods implementation. The converted LocalStringMarshaler and CoTaskMemStringMarshaler 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 and GET_Y_LPARAM to Macros class and fixed HIWORD and LOWORD 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 for SetEvent and ResetEvent.
  • 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

02 Apr 00:55
Compare
Choose a tag to compare

Additions

  • Added PInvoke libs for wlanapi.dll and wcmapi.dll.
  • Added SOCKET.ToString overload.
  • Added implicit IntPtr operator and CreateFromStructure method to SOCKADDR.
  • 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 using LocalFree 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

25 Mar 03:03
Compare
Choose a tag to compare

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

17 Mar 14:22
Compare
Choose a tag to compare

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 expose ToHRESULT() 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

27 Feb 01:32
Compare
Choose a tag to compare

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

17 Jan 16:11
Compare
Choose a tag to compare

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

13 Jan 16:34
Compare
Choose a tag to compare

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

06 Jan 14:29
Compare
Choose a tag to compare

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 using IntPtr[].
  • 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

12 Dec 05:15
Compare
Choose a tag to compare

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

26 Nov 15:23
Compare
Choose a tag to compare

Fixes

  • Fixed overflow problem when marshaling arrays and enumerations
  • Fixed bug with POLICY_AUDIT_EVENTS_INFO when using 64-bit builds.