Vanara/Windows.Shell.Common
David Hall fd44bc7167 Added ShellItemImages.GetImage (non-async) method and changed ShellItem.GetImage to use it. 2023-09-12 17:13:27 -06:00
..
Registration Updated moved classes so they do not depend on System.Windows.Forms. There are lots of breaking changes when compared to Vanara.Windows.Shell, mostly around the use of IWin32Window. 2022-01-06 15:11:41 -07:00
ShellData Added Vanara.Windows.Taskbar class to get information on the Shell's taskbar. 2022-03-14 09:25:40 -06:00
ShellExtensions Fixed bug introduced by GetMessage fix 2022-12-29 13:39:08 -07:00
ShellFileOperations Added ShellFileOperations ctor taking an IFileOperation rather than creating one every time. (#336) 2022-11-04 10:48:01 -06:00
ShellObjects Added ShellItemImages.GetImage (non-async) method and changed ShellItem.GetImage to use it. 2023-09-12 17:13:27 -06:00
ShellProperties Changed default flag for ShellItemPropertyStore to GPS_BESTEFFORT to prevent exceptions. #378 2023-03-08 14:28:51 -06:00
TaskBar Added Vanara.Windows.Taskbar class to get information on the Shell's taskbar. 2022-03-14 09:25:40 -06:00
BindContext.cs Added BindCtx support for WIN32_FIND_DATA "simple parsing" and optional object parameters. 2022-06-14 09:59:51 -06:00
ControlPanel.cs Moved less-dependent classes from Vanara.Windows.Shell to Vanara.Windows.Shell.Common 2021-12-30 13:50:24 -07:00
FileInUseHandler.cs Updated moved classes so they do not depend on System.Windows.Forms. There are lots of breaking changes when compared to Vanara.Windows.Shell, mostly around the use of IWin32Window. 2022-01-06 15:11:41 -07:00
IconLocation.cs BREAKING CHANGES: I have dramatically reduced dependencies of almost all assemblies on .NET runtime assemblies not part of core System assemblies, most specifically System.Drawing and System.Windows.Forms. This forced the removal of some overloaded methods and the replacement of leveraged structures and enums with native equivalents. I added Vanara.Windows.Shell.Common which has all the content from Vanara.WIndows.Shell that did not have dependencies. I extracted all extension methods from Gdi32 and User32 and moved them to Vanara.Windows.Extensions. 2022-01-14 07:32:51 -07:00
MRUManager.cs Pushed MRUManager base class to Windows.Shell.Common 2022-06-09 22:31:52 -06:00
NativeClipboard.cs More BREAKING CHANGES to NativeClipboard. (Sorry!) All atomic methods to set data have been removed due to inconsistencies and design challenges. New model forces all setting and getting to be done through IDataObject and it's methods and extensions. See documentation for class for example. Addresses #355. 2023-01-29 10:20:13 -07:00
RecycleBin.cs Moved Vanara.Windows.Shell files to Common project 2022-01-06 15:07:36 -07:00
RegistryExtensions.cs Moved less-dependent classes from Vanara.Windows.Shell to Vanara.Windows.Shell.Common 2021-12-30 13:50:24 -07:00
ShellFileInfo.cs BREAKING CHANGES: I have dramatically reduced dependencies of almost all assemblies on .NET runtime assemblies not part of core System assemblies, most specifically System.Drawing and System.Windows.Forms. This forced the removal of some overloaded methods and the replacement of leveraged structures and enums with native equivalents. I added Vanara.Windows.Shell.Common which has all the content from Vanara.WIndows.Shell that did not have dependencies. I extracted all extension methods from Gdi32 and User32 and moved them to Vanara.Windows.Extensions. 2022-01-14 07:32:51 -07:00
ShellImageList.cs BREAKING CHANGES: I have dramatically reduced dependencies of almost all assemblies on .NET runtime assemblies not part of core System assemblies, most specifically System.Drawing and System.Windows.Forms. This forced the removal of some overloaded methods and the replacement of leveraged structures and enums with native equivalents. I added Vanara.Windows.Shell.Common which has all the content from Vanara.WIndows.Shell that did not have dependencies. I extracted all extension methods from Gdi32 and User32 and moved them to Vanara.Windows.Extensions. 2022-01-14 07:32:51 -07:00
ShellItemChangeWatcher.cs BREAKING CHANGES: I have dramatically reduced dependencies of almost all assemblies on .NET runtime assemblies not part of core System assemblies, most specifically System.Drawing and System.Windows.Forms. This forced the removal of some overloaded methods and the replacement of leveraged structures and enums with native equivalents. I added Vanara.Windows.Shell.Common which has all the content from Vanara.WIndows.Shell that did not have dependencies. I extracted all extension methods from Gdi32 and User32 and moved them to Vanara.Windows.Extensions. 2022-01-14 07:32:51 -07:00
StockIcon.cs BREAKING CHANGES: I have dramatically reduced dependencies of almost all assemblies on .NET runtime assemblies not part of core System assemblies, most specifically System.Drawing and System.Windows.Forms. This forced the removal of some overloaded methods and the replacement of leveraged structures and enums with native equivalents. I added Vanara.Windows.Shell.Common which has all the content from Vanara.WIndows.Shell that did not have dependencies. I extracted all extension methods from Gdi32 and User32 and moved them to Vanara.Windows.Extensions. 2022-01-14 07:32:51 -07:00
Utils.cs More work on NativeClipboard 2022-12-30 18:24:08 -07:00
Vanara.Windows.Shell.Common.csproj Updated project files 2023-01-29 10:57:53 -07:00
WallpaperManager.cs BREAKING CHANGES: I have dramatically reduced dependencies of almost all assemblies on .NET runtime assemblies not part of core System assemblies, most specifically System.Drawing and System.Windows.Forms. This forced the removal of some overloaded methods and the replacement of leveraged structures and enums with native equivalents. I added Vanara.Windows.Shell.Common which has all the content from Vanara.WIndows.Shell that did not have dependencies. I extracted all extension methods from Gdi32 and User32 and moved them to Vanara.Windows.Extensions. 2022-01-14 07:32:51 -07:00
pkgreadme.md Updated project files 2023-01-29 10:57:53 -07:00
readme.md Updated project files 2023-01-31 15:32:15 -08:00

readme.md

Assembly report for Vanara.Windows.Shell.Common.dll

Common classes for Windows Shell items derived from the Vanara PInvoke libraries. Includes shell items, files, icons, links, and taskbar lists.

Enumerations

Enum Description Values
Vanara.Windows.Shell.ChangeFilters Changes that might occur to a shell item or folder. ItemRenamed, ItemCreated, ItemDeleted, FolderCreated, FolderDeleted, MediaInserted, MediaRemoved, DriveRemoved, DriveAdded, FolderShared, FolderUnshared, Attributes, FolderUpdated, ItemUpdated, ServerDisconnected, SystemImageUpdated, DriveAddedInteractive, FolderRenamed, AllDiskEvents, DriveFreeSpaceChanged, ExtendedEvent, FileAssociationChanged, AllGlobalEvents, AllEvents
Vanara.Windows.Shell.ShellFileOperationDialog.DialogStatus Provides operation status flags for ShellFileOperationDialog. NotStarted, Running, Paused, Cancelled, Stopped, Errors
Vanara.Windows.Shell.ExecutableType Specifies the executable file type. Nonexecutable, DOS, Win32Console, Windows
Vanara.Windows.Shell.FileUsageType Constants used to indicate how a file in use is being used. Playing, Editing, Generic
Vanara.Windows.Shell.FolderItemFilter A filter for the types of children to enumerate. Folders, NonFolders, IncludeHidden, Printers, Shareable, Storage, FastItems, FlatList, IncludeSuperHidden
Vanara.Windows.Shell.LibraryFolderFilter Defines options for filtering folder items. FileSystemOnly, StorageObjects, AllItems
Vanara.Windows.Shell.LibraryViewTemplate Defines the type of view assigned to a library folder. Documents, General, Music, Pictures, Videos, Custom
Vanara.Windows.Shell.LinkResolution Flags determining how the links with missing targets are resolved. None, NoUI, AnyMatch, Update, NoUpdate, NoSearch, NoTrack, NoLinkInfo, InvokeMSI, NoUIWithMsgPump, OfferDeleteWithoutFile, KnownFolder, MachineInLocalTarget, UpdateMachineAndSid, NoObjectID
Vanara.Configuration.MRUManager.MenuPlacement The placement of a menu item in a list. Bottom, Top
Vanara.Windows.Shell.ShellFileOperations.OperationFlags Flags that control the file operation. MultiDestFiles, Silent, RenameOnCollision, NoConfirmation, WantMappingHandle, AllowUndo, FilesOnly, SimpleProgress, NoConfirmMkDir, NoErrorUI, NoUI, NoCopySecurityAttribs, NoRecursion, NoConnectedElements, WantNukeWarning, NoSkipJunctions, PreferHardLink, ShowElevationPrompt, RecycleOnDelete, EarlyFailure, PreserveFileExtensions, KeepNewerFile, NoCopyHooks, NoMinimizeBox, MoveACLsAcrossVolumes, DontDisplaySourcePath, DontDisplayDestPath, RequireElevation, AddUndoRecord, CopyAsDownload, DontDisplayLocations
Vanara.Windows.Shell.ShellFileOperationDialog.OperationMode Flags used in Mode Default, Running, Starting, Undoing, BlockedByErrors, Indeterminate
Vanara.Windows.Shell.ShellFileOperationDialog.OperationType Describes an action being performed that requires progress to be shown to the user using progress dialog. None, Moving, Copying, Recycling, ApplyingAttributes, Downloading, SearchingInternet, Calculating, Uploading, SearchingFiles, Deleting, Renaming, Formatting, CopyMoving
Vanara.Windows.Shell.ShellIconType The type of icon to be returned from Vanara.Windows.Shell.ShellFileInfo.GetIcon(Vanara.Windows.Shell.ShellIconType). Large, Small, Open, ShellDefinedSize, LinkOverlay, Selected
Vanara.Windows.Shell.ShellImageSize Used to determine the size of the icon returned by ShellImageList.GetSystemIcon. Large, Small, ExtraLarge, SystemSmall, Jumbo
Vanara.Windows.Shell.ShellItemAttribute Attributes that can be retrieved on an item (file or folder) or set of items using Vanara.Windows.Shell.ShellItem.Attributes. CanCopy, CanMove, CanLink, Storage, CanRename, CanDelete, HasPropSheet, DropTarget, CapabilityMask, System, Encrypted, IsSlow, Ghosted, Link, Share, ReadOnly, Hidden, DisplayAttrMask, NonEnumerated, NewContent, CanMoniker, HasStorage, Stream, StorageAncestor, Validate, Removable, Compressed, Browsable, FileSysAncestor, Folder, FileSystem, StorageCapMask, HasSubfolder, ContentsMask, PKEYMask
Vanara.Windows.Shell.ShellItemComparison Used to determine how to compare two Shell items. ShellItem.Compare uses this enumerated type. Display, Canonical, SecondaryFileSystemPath, AllFields
Vanara.Windows.Shell.ShellItemDisplayString Requests the form of an item's display name to retrieve through Vanara.Windows.Shell.ShellItem.GetDisplayName(Vanara.Windows.Shell.ShellItemDisplayString). NormalDisplay, ParentRelativeParsing, DesktopAbsoluteParsing, ParentRelativeEditing, DesktopAbsoluteEditing, FileSysPath, Url, ParentRelativeForAddressBar, ParentRelative, ParentRelativeForUI
Vanara.Windows.Shell.ShellItemGetImageOptions Options for retrieving images from a Vanara.Windows.Shell.ShellItem. ResizeToFit, BiggerSizeOk, MemoryOnly, IconOnly, ThumbnailOnly, InCacheOnly, CropToSquare, WideThumbnails, IconBackground, ScaleUp
Vanara.Windows.Shell.ShellItemToolTipOptions Flags that direct the handling of the item from which you're retrieving the info tip text. Default, Name, LinkNotTarget, LinkTarget, AllowDelay, SingleLine
Vanara.Windows.Shell.TaskbarButtonProgressState State of the progress shown on a taskbar button. None, Indeterminate, Normal, Error, Paused
Vanara.Windows.Shell.ShellFileOperations.TransferFlags Used by methods of the ITransferSource and ITransferDestination interfaces to control their file operations. Normal, FailExist, RenameExist, OverwriteExist, AllowDecryption, NoSecurity, CopyCreationTime, CopyWriteTime, UseFullAccess, DeleteRecycleIfPossible, CopyHardLink, CopyLocalizedName, MoveAsCopyDelete, SuspendShellEvents
Vanara.Windows.Shell.VerbMultiSelectModel A value that determines if a user can select a single item, multiple items, or a selection from an item. Unset, Player, Single, Document
Vanara.Windows.Shell.VerbPosition Determines the placement of a verb in a menu. Undefined, Top, Bottom
Vanara.Windows.Shell.VerbSelectionModel Determines menu location. Item, BackgroundShortcutMenu
Vanara.Windows.Shell.WallpaperFit Specifies how the desktop wallpaper should be displayed. Center, Tile, Stretch, Fit, Fill, Span

Interfaces

Interface Description
Vanara.Windows.Shell.IComObject Exposed methods from Vanara.Windows.Shell.ComObject.
Vanara.Configuration.MRUManager.IFileListStorage Defines a class that implements storage for an MRU file list.
Vanara.Windows.Shell.IJumpListItem Represents a Jump List item.
Vanara.Configuration.MRUManager.IMenuBuilder Defines a class that implements a menu handler for an MRU file list.

Classes

Class Description
Vanara.Windows.ExtenderProviderBase.AddExtenderEventArgs Arguments for the Vanara.Windows.ExtenderProviderBase1.AddingExtender` event.
Vanara.Windows.Shell.Registration.AppRegistration Represents the registration entries for an application.
Vanara.Configuration.MRUManager.AppSettingsFileListStorage Storage in the local application settings.
Vanara.Windows.Shell.BindContext Wraps the System.Runtime.InteropServices.ComTypes.IBindCtx COM type.
Vanara.Windows.Shell.ComClassFactory An implementation of Vanara.PInvoke.Ole32.IClassFactory to be used in conjunction with Vanara.Windows.Shell.IComObject derivatives.
Vanara.Windows.Shell.CommandVerb Encapsulates a shortcut menu verb in the registry.
Vanara.Windows.Shell.CommandVerbDictionary A dictionary of Command Verbs defined in the Windows Registry.
Vanara.Windows.Shell.ComObject Base class for all COM objects which handles calling AddRef and Release for the assembly, connection to IClassFactory, implements IObjectWithSite, using an internal message loop, and a mechanism to issue a non-blocking call to itself. Once implemented, you only need to implement your own interfaces. The IClassFactory implementation can get any derived interfaces through casting for calls to its QueryInterface method. If you want more control, override the QueryInterface method in this class.
Vanara.Windows.Shell.ComObjWrapper
Vanara.Windows.Shell.ControlPanel Provides a means to open Control Panel items and get their paths.
Vanara.Windows.Shell.DragEventArgs Provides data for the Vanara.Windows.Shell.ShellDropTarget.DragDrop, Vanara.Windows.Shell.ShellDropTarget.DragEnter, or Vanara.Windows.Shell.ShellDropTarget.DragOver event.
Vanara.Windows.ExtenderProviderBase A generic base to implement System.ComponentModel.IExtenderProvider for a single extender type.
Vanara.Windows.Shell.FileInUseHandler A handler for applications that open file types that can be opened by other applications. An application's use of this object enables Windows Explorer to discover the source of sharing errors, which enables users to address and retry operations that fail due to those errors. This object handles registering the file with the Running Object Table (see Vanara.PInvoke.Ole32.IRunningObjectTable). It will revoke that registration on disposal or when the Vanara.Windows.Shell.FileInUseHandler.Registered property is set to .
Vanara.Windows.Shell.Registration.FileTypeAssociation Manages registry entries related to file types and file associations.
Vanara.Windows.Shell.IconLocation Wraps the icon location string used by some Shell classes.
Vanara.Windows.Shell.JumpList Provides access to the jump list on the application's task bar icon.
Vanara.Windows.Shell.JumpListDestination A file-based destination for a jumplist with an associated category.
Vanara.Windows.Shell.JumpListItem An item in a Jump List.
Vanara.Windows.Shell.JumpListSeparator A separator which can be inserted into a custom list or task list.
Vanara.Windows.Shell.JumpListTask A task for a jumplist.
Vanara.Windows.Shell.MemoryPropertyStore An in-memory property store.
Vanara.Windows.Shell.ShellContextMenu.MenuItemInfo Provides information about a single menu entry discovered in a native menu.
Vanara.PInvoke.MessageLoop.MessageEventArgs Holds a copy of the MSG instance retrieved by GetMessage.
Vanara.PInvoke.MessageLoop This class encapsulates the management of a message loop for an application. It supports queuing a callback to the application via the message loop to enable the app to return from a call and continue processing that call later. This behavior is needed when implementing a shell verb as verbs must not block the caller. The ComObject derived class should call QueueNonBlockingCallback in its invoke function, for example IExecuteCommand::Execute() or IDropTarget::Drop() passing a method that will complete the initialization work.
Vanara.Configuration.MRUManager A class that manages a Most Recently Used file listing.
Vanara.Windows.Shell.NativeClipboard Static class with methods to interact with the Clipboard.
Vanara.Windows.Shell.ProgId Represents a programmatic identifier in the registry for an application.
Vanara.Windows.Shell.PropertyBag Encapsulates an Vanara.PInvoke.OleAut32.IPropertyBag instance.
Vanara.Windows.Shell.PropertyDescription Enumerate and retrieve individual property description details. Wraps the Vanara.PInvoke.PropSys.IPropertyDescription shell interface
Vanara.Windows.Shell.PropertyDescriptionList Exposes methods that extract information from a collection of property descriptions presented as a list.
Vanara.Windows.Shell.PropertyStore Encapsulates the IPropertyStore object.
Vanara.Windows.Shell.PropertyType Exposes methods that extract data from enumeration information.
Vanara.Windows.Shell.PropertyTypeList Exposes methods that enumerate the possible values for a property.
Vanara.Windows.Shell.ReadOnlyPropertyStore Encapsulates the IPropertyStore object.
Vanara.Windows.Shell.RecycleBin A static object that represents the system Recycle Bin.
Vanara.Windows.Shell.RegBasedDictionary A virtual dictionary that is based on values in the Windows Registry.
Vanara.Windows.Shell.RegBasedSettings Base class for registry based settings.
Vanara.Configuration.MRUManager.RegistryFileListStorage
Vanara.Windows.Shell.SearchCondition Provides properties and methods for retrieving information about a search condition.
Vanara.Windows.Shell.ShellAssociation Represents a Shell file association defined in the Windows Registry. Wraps Vanara.PInvoke.ShlwApi.IQueryAssociations.
Vanara.Windows.Shell.ShellAssociation.ShellAssociationHandler Represents a handler (executable) for a Vanara.Windows.Shell.ShellAssociation.
Vanara.Windows.Shell.ShellCommand Wraps the functionality of IInitializeCommand. When deriving, handling the Vanara.Windows.Shell.ShellCommand.InitializeCommand event is optional.
Vanara.Windows.Shell.ShellContextMenu Provides support for displaying the context menu of a shell item.
Vanara.Windows.Shell.ShellDataTable Represents a System.Data.DataTable that is populated asynchronously with information about shell items.
Vanara.Windows.Shell.ShellDropTarget COM object that implements IDropTarget. Solves race problem on drop and simplifies interface calls. All IDropTarget methods call their equivalent On[MethodName] equivalents. To specialize their handling, simply override the On[MethodName] method or hook an event to the corresponding event.
Vanara.Windows.Shell.ShellExecuteCommand Wraps the functionality of IExecuteCommand. To implement, derive from this class and override the Vanara.Windows.Shell.ShellExecuteCommand.OnExecute method. All Shell items passed to the command are available through the Vanara.Windows.Shell.ShellExecuteCommand.SelectedItems property.
Vanara.Windows.Shell.ShellFileInfo Information and icons for any shell file.
Vanara.Windows.Shell.ShellFileOperations.ShellFileNewOpEventArgs Arguments supplied to the Vanara.Windows.Shell.ShellFileOperations.PostNewItem event.
Vanara.Windows.Shell.ShellFileOperationDialog The Shell's progress dialog.
Vanara.Windows.Shell.ShellFileOperations Queued and static file operations using the Shell.
Vanara.Windows.Shell.ShellFileOperations.ShellFileOpEventArgs Arguments supplied to events from Vanara.Windows.Shell.ShellFileOperations. Depending on the event, some properties may not be set.
Vanara.Windows.Shell.ShellFolder A folder or container of Vanara.Windows.Shell.ShellItem instances.
Vanara.Windows.Shell.ShellFolderCategorizer Exposes a list of categorizers registered on an IShellFolder.
Vanara.Windows.Shell.ShellFolderCategory A shell folder category object.
Vanara.Windows.Shell.ShellImageList Represents the System Image List holding images for all shell icons.
Vanara.Windows.Shell.ShellItem Encapsulates an item in the Windows Shell.
Vanara.Windows.Shell.ShellItemArray A folder or container of Vanara.Windows.Shell.ShellItem instances.
Vanara.Windows.Shell.ShellItemChangeWatcher.ShellItemChangeEventArgs Provides data for Vanara.Windows.Shell.ShellItemChangeWatcher events.
Vanara.Windows.Shell.ShellItemChangeWatcher Listens to the shell item change notifications and raises events when a folder, or item in a folder, changes.
Vanara.Windows.Shell.ShellItemImages Exposes methods that get images related to shell items.
Vanara.Windows.Shell.ShellItemPropertyStore A property store for a Vanara.Windows.Shell.ShellItem.
Vanara.Windows.Shell.ShellItemPropertyUpdates A dictionary of properties that can be used to set or update property values on Shell items via the Vanara.Windows.Shell.ShellFileOperations.QueueApplyPropertiesOperation(Vanara.Windows.Shell.ShellItem,Vanara.Windows.Shell.ShellItemPropertyUpdates) method. This class wraps the Vanara.Windows.Shell.ShellItemPropertyUpdates.IPropertyChangeArray COM interface.
Vanara.Windows.Shell.ShellLibrary Shell library encapsulation.
Vanara.Windows.Shell.ShellLibrary.ShellLibraryFolders Folders of a Vanara.Windows.Shell.ShellLibrary.
Vanara.Windows.Shell.ShellLink Represents a Shell Shortcut (.lnk) file.
Vanara.Windows.Shell.ShellNavigationHistory The navigation log is a history of the locations visited by a shell view object.
Vanara.Windows.Shell.ShellRegistrar Contains static methods used to register and unregister shell items in the Windows Registry.
Vanara.Windows.Shell.ShellSearch Represents functionality of the Windows Search Service.
Vanara.Windows.Shell.ShellSearchViewSettings Settings that change the folder view of a search.
Vanara.Windows.Shell.StockIcon Represents a standard system icon.
Vanara.Windows.Shell.TaskBar.Taskbar Provides information about and some control of the system taskbar.
Vanara.Windows.Shell.TaskbarList Methods that control the Windows taskbar. It allows you to dynamically add, remove, and activate items on the taskbar. This wraps all of the ITaskbarListX interfaces.
Vanara.Windows.Shell.TaskBar.TrayIcon
Vanara.Windows.Shell.Utils Utility methods for shell functions.
Vanara.Windows.Shell.WallpaperManager Provides methods for managing the desktop wallpaper.
Vanara.Windows.Shell.WallpaperManager.WallpaperMonitor Represents the wallpaper settings on a single monitor.
Vanara.Windows.Shell.WallpaperManager.WallpaperSlideshow Represents the settings for a wallpaper slideshow.