Skip to content

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jan 13, 2026

Updated Vanara.PInvoke.User32 from 4.2.1 to 5.0.0.

Release notes

Sourced from Vanara.PInvoke.User32's releases.

5.0.0

Major release due to magnitude of changes introduced with full generation. Generation of simpler methods and consolidation of methods into safe handles added for primary assemblies. More to come.

Generator

  • Complete rewrite of code generator to merge existing and new SizeDef and Ignore attributes
  • Lots of updates based on new generated code. Mostly cosmetic, removing duplicate functions that are now generated, adjusting attributes to get the correct generation, and fixing a few bugs along the way.
  • Added generator support of methods that ask for a known interface and its GUID to automatically grab the grid.
  • Fixed and finished adding LPArray generator
  • Generator that adds simplified methods as overloads or as members of supporting handles

Additions

  • Added SHCreateDefaultContextMenuEx overloads and improve DEFCONTEXTMENU
  • Added ShellItemArray.FromPaths for creating from file paths
  • Added DisposingList to Vanara.Core for managed disposal of list elements
  • Added DynamicallyAccessedMembersAttribute for backward compatibility
  • Added FMTID values and moved PROPERTYKEY constants to using those instead of individual definitionFixed bug in SAFEARRAY.VarType property
  • Added Guid* operator to SafeGuidPtr
  • Added InteropExtensions.UnsafeAddrOfPinnedSpanElement method
  • Added OleThreadState class to handle thread-safe calling of OleInitializeCleaned and optimized POINT struct
  • Added OleThreadState handling to ShellContextMenu, added Invoke method, optimized codeChanged ctors for CMINVOKECOMMANDINFOEX
  • Added SafeMemStruct.GetStringAtOffset method
  • Added Shell32.PIDL IsFolder and IsRoot properties
  • Added StringSyntaxAttribute for pre-NET7
  • Added StructPointer support for putting and geting "in" struct values
  • Added ability to export and import wallpaper settings for WallpaperManagerCommits
  • Added default ctor to SafeAnysizeStructMarshaler to prevent errors
  • Added enhanced interface for errors, IErrorProvider2 and used to genercize FunctionHelper.CallMethodWithTypedBufUpdated MarshalAs LPArray attributes with direction attribute and size param valueAdded more SizeParamIndex values
  • Added function and property to SafeBITMAPINFO to get header by ref.
  • Added implicit conversion of HCFFILE and SafeHCFFILE to HFILE for appropriate use by many CldApi functions (#​563)Commits on Oct 14, 2025
  • Added memory handle support for Span in ctor and implicit operator
  • Added more attributes to IShellFolder methods
  • Added more buffer error codes
  • Added unit tests for ShellItemChangeWatcher.
  • Introduced a readonly FOURCC struct in Vanara.PInvoke to represent four-character codes used in multimedia formats. Provides constructors for uint, string, and char inputs, implicit conversions, string validation, and a string representation method. Designed for interop compatibility with sequential layout.Added code generation to Gdi32 assembly
  • Updated WLAN enums

Breaking Changes

  • Update IShellItem.BindToHandler signature and docs
  • Hid ShellItem.Dispose() to favor new Dispose(bool) methodUpdated shell unit tests to cover and exercise changes
  • Removed Vanara.PInvoke.SizeFieldName and updated helper method to use SafeDefAttribute instead. Too much overlapping functionality, limited use, and additional work for generator.Updated methods that have called FunctionHelper.IUnkObj to use MarshalAs attribute so generator can see themReplaced SizeFieldName attributes with SizeDef
  • Changed shell object wrappers to better handle disposing of COM objects using Dispose pattern and hard releasing of interface. Added Dispose(bool) method and finalizers.Updated lots of unit tests to work better, work correctly, or use more recent data.Commits on Dec 10, 2025

Fixes

  • Changed IPropertyDescription.FormatForDisplay to expose HRESULT return valueChanged impl of SHGetPropertyStoreFromIDList to use generated overload
  • Clarified ambiguous calls in ShlObj and improved structures with ctors and attributesChanged IContextMenu.GetCommandString declaration and fixed extension
  • Cleaned up PROPERTYKEY
  • Converted NativeClipboard to use OleThreadState
  • Enhance Shell32.BHID enum with additional CorrespondingType mappings
  • Fix ListViewNotification enum to start with correct LVN_FIRST value #​571
  • Fix msbuild commands in cibuild.yml
  • Fixed Marshal.SizeOf expressions
    ... (truncated)

Commits viewable in compare view.

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

---
updated-dependencies:
- dependency-name: Vanara.PInvoke.User32
  dependency-version: 5.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added .NET Pull requests that update .NET code dependencies Pull requests that update a dependency file labels Jan 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file .NET Pull requests that update .NET code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants