dahall
a3bfd8c7cd
Added code and tests to refresh icon on Recycle Bin after changes.
2020-06-20 15:36:57 -06:00
dahall
c6eaafaf0a
Added more BHID mappings for ShellItem.GetHandler calls.
2020-06-20 15:36:29 -06:00
dahall
a9162da80f
Fixed XML docs, cleaned code, added parameter attributes and missing CoClass values for IShellFolder, added Vanara.Windows.Shell.RecycleBin class and tests
2020-06-20 12:10:20 -06:00
dahall
c31890cf6a
Added string methods to ShellFileOperations and some tests for Recycle Bin.
2020-06-15 09:22:37 -06:00
dahall
67178177c2
Updated project files for release
2020-06-14 11:17:58 -06:00
dahall
c251318fc1
Added WallpaperManager to Vanara.Windows.Shell to manage wallpapers.
2020-06-10 20:38:05 -06:00
dahall
4c241ed618
Fixed bug resolving .lnk files in ShellLink
2020-06-04 08:45:23 -06:00
dahall
28eaf62f3b
Updated project information
2020-06-02 22:02:36 -06:00
dahall
491c26e0d6
BREAKING CHANGE: Changed default behavior of ShellItem.Properties so that it is read-only. It was failing for all shell items that didn't have their own properties. To get previous behavior, simply set "shellItem.Properties.ReadOnly = false" before setting properties.
2020-06-01 10:43:51 -06:00
dahall
24031bc4d1
BREAKING CHANGE: Changed ShellItemPropertyStore.Descriptions to get a dictionary of PropertyDescription items rather than the PropertyDescriptionList that was already available from ShellItem. Added improved execption when IPropertyStore instance cannot be created due to a shell item with no r/w support.
2020-06-01 10:41:25 -06:00
dahall
26ee1ba93d
Derived PropertyStore from ReadOnlyPropertyStore
2020-06-01 10:38:37 -06:00
dahall
f57a7321b2
Added MemoryPropertyStore with stream r/w support representing a property store that lives separate from a ShellItem
2020-06-01 10:37:52 -06:00
dahall
ddd6935037
Added ReadOnlyPropertyStore as the base object wrapping IPropertyStore.
2020-06-01 10:37:00 -06:00
dahall
92302b015a
Another, hopefully final, fix for #124
2020-05-28 17:52:05 -06:00
dahall
e1b31bd0ab
Fixed crashes on ShellItemChangeWatcher with unrecognized events.
2020-05-28 13:16:37 -06:00
dahall
efdd8da0d1
To ShellItemChangeWatcher, added attributes to properties, added Path property tied to Item property for use in designer, error handling if registration fails, and fixed bug with PIDLs and memory reads ( #124 ).
2020-05-27 22:11:36 -06:00
dahall
b375436c38
BREAKING CHANGE: Changed PROPERTYKEY.GetCononicalName to GetCanonicalName (fixed misspelling)
2020-04-06 08:52:57 -06:00
dahall
c0ff453a20
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.
2020-04-03 14:51:10 -06:00
dahall
54994c84bf
Fixed bug in collection where parent wasn't set
2020-04-02 20:10:20 -06:00
dahall
0702fc0c4d
Removed unused private field
2020-04-02 19:54:04 -06:00
dahall
9fdb1ea000
Update project versions to 3.2.4
2020-04-01 18:48:29 -06:00
dahall
1c217e668e
Updated project files to 3.2.3
2020-03-31 18:51:44 -06:00
dahall
476960ecbf
Updated project versions to 3.2.2.
2020-03-17 19:48:07 -06:00
dahall
24dc30de5a
Updated project files with v3.2.1 information.
2020-03-09 10:23:37 -06:00
dahall
82f474e741
Add and corrected XML documentation.
2020-03-01 18:59:39 -07:00
dahall
19b3efd408
Updated project information and version to 3.2.0
2020-02-26 17:35:48 -07:00
dahall
ae3d4dc52c
Finished intial work on TaskbarButton form extender that fully enables all interactions with the taskbar button in the UI.
2020-02-26 15:20:47 -07:00
dahall
129a8247aa
Fixed RawValue and ToString for when non-lookup string supplied.
2020-02-26 15:19:13 -07:00
dahall
c93fbb5880
Fixed ToString
2020-02-26 15:18:40 -07:00
dahall
4b003a36be
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.
2020-02-26 15:18:06 -07:00
dahall
ff228216a4
Renamed file to match class name.
2020-02-26 15:14:49 -07:00
dahall
fd802f7961
Cleaned up memory use and COM object releases.
2020-02-22 16:09:36 -07:00
dahall
8f9e7aa117
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.
2020-02-22 16:08:17 -07:00
dahall
c892a083f6
Allow for ShellItem to function even if it doesn't have a IShellItem reference
2020-02-22 16:04:41 -07:00
dahall
18ba5de75d
Fixed capture and display problems
2020-02-20 13:57:46 -07:00
dahall
54b19e01e1
Cleaned and refactored
2020-02-13 11:49:36 -07:00
dahall
23aa0cef40
Cleaned up project file
2020-02-13 10:48:35 -07:00
dahall
8a30f5ce3c
Fixed exceptions thrown by ControlPanel methods by providing HRESULT from underlying COM shell object. #105
2020-02-08 15:08:44 -07:00
dahall
c856d06332
Updated project files for v3.1.9
2020-01-17 08:50:25 -07:00
dahall
42677e2063
Project files update for v3.1.8.
2020-01-13 09:26:39 -07:00
dahall
aff96b0adf
Fixed bug in defintion of IEnumIDList.Next and all dependent methods. ( #97 )
2020-01-04 15:44:00 -07:00
dahall
6edf55346d
Added support for .NET Core 3.1
2020-01-03 16:46:48 -07:00
David Hall
19bbc90234
Corrected bug in ShellItem.Open that would incorrectly try to open .url files as IShellLink. Now opens them as IShellItem. ( #82 )
2019-12-30 14:21:15 -07:00
David Hall
4ced0d98da
Fixed ShellItem.GetImage so it doesn't fail when it cannot make the returning bitmap transparent. ( #85 )
2019-12-30 11:23:18 -07:00
David Hall
b875577809
Fix for #81
2019-12-29 22:37:43 -07:00
David Hall
1ee34f1001
Updated all project files to version 3.1.7
2019-12-17 15:05:04 -07:00
David Hall
c2c9a6e2e6
Updated project files to support SourceLink
2019-12-17 14:56:55 -07:00
David Hall
61d0fbb908
Updated project files for 3.1.6 release
2019-12-11 22:09:39 -07:00
David Hall
8bb754f22e
Updated project files to version 3.1.5
2019-11-26 08:20:16 -07:00
David Hall
2036104502
Update project information for 3.1.4
2019-11-25 07:02:08 -07:00
David Hall
7c5f05b381
Added documentation
2019-11-23 19:00:15 -07:00
David Hall
2c94f7cdde
Updated constructor with strong type param
2019-11-20 12:56:03 -07:00
David Hall
2eab8af7eb
Changed project versions to 3.1.4
2019-11-13 23:07:14 -05:00
David Hall
035f6ce631
Updated project files for v3.1.3
2019-11-08 08:29:33 -07:00
David Hall
7f6c787af1
BREAKING CHANGE: moved interfaces and VARIANT from oaidl.h into Vanara.PInvoke.OleAut32 from Ole32 as they are actually hosted there. This required some changes to supproting code.
2019-11-06 22:13:59 -07:00
David Hall
0eb05fc0b0
Updated project info for 3.1.2 release
2019-11-04 06:49:29 -07:00
David Hall
6ef7235bf3
Update project versions to 3.1.2
2019-10-23 13:44:41 -06:00
David Hall
8302691c8e
First pass at adding support for Windows Search
2019-10-23 13:42:37 -06:00
David Hall
4097090539
Fixed ShellItem.FileInfo and PropertyDescriptions so they don't throw exceptions on non-file system types.
2019-10-23 13:37:16 -06:00
David Hall
3a09d5230a
Added parented constructor for ShellItemArray
2019-10-23 13:14:46 -06:00
David Hall
0223ac1721
Fixed ViewInExplorer for folder items
2019-10-23 13:14:23 -06:00
David Hall
f10199e737
Changed EnumerateChildren to remove default params
2019-10-23 13:12:52 -06:00
David Hall
3045ff2aaa
Fixed condition where IEnumIDList is not implemented ( #68 )
2019-10-21 07:23:25 -06:00
David Hall
dee8220068
Update project file information and version to 3.1.1.
2019-10-17 13:43:37 -06:00
David Hall
4451258143
ADDED: Support for .NET Core 3.0 in all projects!!
...
Updated project files to version 3.1.0, changed icon to embedded NuGet resource rather than link, consolidated dependency conditions in project files, and updated all NuGet dependencies.
2019-10-03 13:35:16 -06:00
David Hall
1f725bbefc
Changed EventHandlerEx<T> (Theraot) to EventHandle<T>.
2019-10-03 12:55:32 -06:00
David Hall
830177d435
Minor file access changes to support .NET Core 3
2019-10-03 11:15:05 -06:00
David Hall
804c4a946d
Fixed compiler warnings
2019-09-18 15:33:26 -06:00
David Hall
846783b115
Updated project documentation
2019-09-05 21:03:18 -06:00
David Hall
d56d9486e7
Updated project information to version 3.0.1, added DLL references, and updated markdown files.
2019-09-04 14:11:25 -06:00
David Hall
6b8e0ccf58
Combined PInvoke.User32 and PInvoke.User32.Gdi and updated all dependencies.
...
Added .NET Standard 2.0 and .NET Core 2.0 and 2.1 support to all projects except Windows.Forms and Windows.Shell
2019-08-27 16:03:21 -06:00
David Hall
d89a9df2a5
With so many breaking changes, I decided to roll the version to 3.0.0.
2019-08-27 12:42:33 -06:00
David Hall
ee72119e36
MAJOR BREAKING CHANGE: Moved all extension methods for System.Object to Vanara.Extensions.Reflection namespace to avoid Intellisense overloads with methods that will be rarely used.
2019-08-17 14:42:49 -06:00
David Hall
3f6303a4df
Updated to support other indirect resource strings (from SHLoadIndirectString docs)
2019-08-01 17:54:31 -06:00
David Hall
19d8a8d396
Fixed XML comments
2019-06-25 17:28:19 -06:00
David Hall
7ce7b96209
* Derived SafeCoTaskMemString from base class SafeMemString derived from SafeMemHandle<T>.
...
* BREAKING CHANGE: Removed CharCapacity and made Capacity show char allocation. Size (from parent) shows byte capacity. Mimics StringBuilder.
2019-06-25 17:10:57 -06:00
David Hall
36c5b82f91
Updated and fixed file functions in Kernel32. Changed WIN32_FIND_DATA back to a structure and corrected IShellLinkW reference. Added EnumFilesEx and EnumVolumes to simplify related functions. Fixed search handles so they dispose without error. Changed GetFullPathName, GetLongPathName and GetShortPathName to exclusively use the Unicode instance to avoid filename length restrictions.
2019-06-16 15:07:59 -06:00
David Hall
422ab0a7dd
Updated project files for 2.8.11 release
2019-06-07 20:42:41 -06:00
David Hall
f59831bc2c
Updated project files for 2.3.10
2019-06-04 12:18:56 -06:00
David Hall
0b83c0a914
Updated projects for version 2.3.9
2019-05-25 19:47:54 -06:00
David Hall
1097a9422a
POTENTIALLY BREAKING CHANGES: I had to make PropertyStore work without holding onto the IPropertyStore interface so as to prevent a lock condition on the ShellItem ( #49 ). So I had to change some of the protected methods to support the change.
2019-05-08 19:01:44 -06:00
David Hall
3eccb98a50
Added CreateBindCtx method in ShellUtil and migrated existing code to use it
2019-05-08 18:58:46 -06:00
David Hall
e3ae1b5b55
Made private until more debugging is done
2019-05-08 15:00:18 -06:00
David Hall
1e6c187c68
Optimized
2019-05-08 14:59:52 -06:00
David Hall
f35daedf85
Added GetHandler that takes a IBindCtx param. Added GetStream method to get a ComStream of the item's content.
2019-05-08 09:28:37 -06:00
David Hall
10cc4c031c
Added BindContext encapsulation of IBindCtx
2019-05-08 09:26:42 -06:00
David Hall
56f517d6e9
Updated project information for 2.3.8
2019-04-30 08:00:06 -06:00
David Hall
0cc1d914d0
Updated project files for 2.3.7 release
2019-04-24 08:48:29 -06:00
David Hall
5be3e15570
Update project versions to 2.3.6
2019-04-15 13:45:35 -06:00
David Hall
72a2ceb50c
Updated project versions to 2.3.5
2019-03-12 08:05:49 -06:00
David Hall
3877cc58bc
Pushing point release due to some debug files getting into the NuGet packages
2019-03-08 20:09:11 -07:00
David Hall
1bdbca3d57
Updated projects for version 2.3.3
2019-03-08 12:38:52 -07:00
David Hall
f71612fd05
Cleaned up using statements
2019-03-07 11:43:18 -07:00
David Hall
00b8227a10
Updated project versions to 2.3.2
2019-02-27 16:53:42 -07:00
David Hall
ec8fec7902
Updated project files to 2.3.1
2019-02-24 18:54:29 -07:00
David Hall
eba27e984c
Prepped projects for release
2019-02-22 16:11:12 -07:00
David Hall
91ad5730b6
Update project versions to 2.3.0
2019-02-20 11:08:59 -07:00
David Hall
f59699c64c
Futher work on ControlPanel class
2019-02-18 14:30:35 -07:00
David Hall
60db43af40
Filled out options to make more complete wrapper
2019-02-15 14:41:06 -07:00
David Hall
05887bfac4
Updated project files for release
2019-02-11 19:38:05 -07:00
David Hall
99ee4ef78f
Reorganized and cleaned
2019-02-08 12:26:08 -07:00
David Hall
06f20708b9
Separated and enhanced functionality of resource string handlers.
2019-02-08 12:15:23 -07:00
David Hall
7e183c2b6c
Updated project files to 2.2.1
2019-02-05 14:25:27 -07:00
David Hall
abf525fb54
Reorganized, documented and provided methods that act on HWND for broader use.
2019-02-04 09:42:46 -07:00
David Hall
1525d85285
Reorganized folder placement
2019-02-04 09:28:35 -07:00
David Hall
9c06983c3d
Reorganized into folder
2019-02-02 13:39:56 -07:00
David Hall
2c8d48e40c
Added ProcessMessage event for ease of injection
2019-02-02 13:35:57 -07:00
David Hall
22972ba828
Reorganized into folders
2019-02-02 13:35:21 -07:00
David Hall
1efc1993f2
Updated project information
2019-02-01 16:41:11 -07:00
David Hall
e4073a57e5
Cleaned, fixed (sorry this shouldn't have been released), and documented
2019-02-01 15:12:44 -07:00
David Hall
e3c6baaee8
Added docs
2019-02-01 15:12:08 -07:00
David Hall
841cf454ce
Hid until complete
2019-02-01 15:11:42 -07:00
David Hall
6c083b511f
Derived from ShellCommand and now call CancelTimeout after DragDrop event fires.
2019-02-01 11:43:05 -07:00
David Hall
f5c7ecf216
Added new ComObject derivatives to wrap IInitializeCommand and IExecuteCommand
2019-02-01 11:42:29 -07:00
David Hall
54917af61c
Fixed failures when internal pointer to IShellItemArray is null
2019-02-01 11:41:08 -07:00
David Hall
6598e489aa
Removed internal call to cancel message loop timeout and made it a method for derived classes to call at the appropriate time.
2019-02-01 11:40:42 -07:00
David Hall
ea363f2d1f
Put back thread capture code
2019-02-01 11:39:42 -07:00
David Hall
7bee51986c
Added IInitializeCommand support with corresponding properties CommandName and Properties
2019-01-31 13:39:23 -07:00
David Hall
5808a621cf
Added IPropertyBag wrapper
2019-01-31 13:38:34 -07:00
David Hall
4d2642d49a
Added Type.CLSID() extension method
2019-01-31 11:39:35 -07:00
David Hall
a5fb81cd96
Fixed bug in DelegateExecute property
2019-01-31 11:39:03 -07:00
David Hall
15b3a02b86
Removed OnXXX methods in favor of events, fixed bug in Drop, added example in docs
2019-01-31 11:38:37 -07:00
David Hall
7dcab68cd3
Made public, changed to use IComObject interface, added Resume (calls CoResumeClassObjects), changed methods to explicit to minimize change of inadvertent overwrites.
2019-01-31 11:37:30 -07:00
David Hall
927951e593
Exposed core methods in interface, pushed class factory to inline construction, added message loop timeout cancel to QueryInterface, added handling of REGCLS_SUSPENDED
2019-01-31 11:36:02 -07:00
David Hall
14d863faa5
Renamed, made public, documented and hardened
2019-01-31 11:33:27 -07:00
David Hall
4c21a6541d
Added constructors that let derived classes handle parameters to CoRegisterClassObject
2019-01-29 19:59:52 -07:00
David Hall
e0f09599ce
Changed parameter to CoRegisterClassObject to point to CLSID object. Added Resume method.
2019-01-29 19:59:16 -07:00
David Hall
99bff8e3c8
Added TypeLib and ServerExecutable lines to LocalServer registration
2019-01-29 19:58:19 -07:00
David Hall
df51958bad
Replaced ComRegistrar references with ShellRegistrar
2019-01-29 14:50:56 -07:00
David Hall
b07bcbad48
Removed ComLocalServer and included functionality in ComObject
2019-01-29 14:50:19 -07:00
David Hall
971a8247ca
Made internal
2019-01-29 14:49:25 -07:00
David Hall
515bedc299
Merged ComRegistrar into ShellRegistrar. Completed work to allow local registrations in ShellRegistrar.
2019-01-29 14:48:54 -07:00
David Hall
dd78ab07c9
Added abstract class for implementing IDropTarget
2019-01-27 22:14:20 -05:00
David Hall
c5d247948c
Added documentation
2019-01-27 22:02:12 -05:00
David Hall
4af471a8ad
Added Running property
2019-01-27 22:01:33 -05:00
David Hall
f24bed37a7
Updated to use user or system root
2019-01-27 21:40:08 -05:00
David Hall
4603de0f2f
Added GetRoot method
2019-01-27 21:39:06 -05:00
David Hall
426f257b7d
Fixed another Guid => string problem
2019-01-27 21:38:21 -05:00
David Hall
46e7b8031a
Extended callback to accept a variable
2019-01-27 17:43:13 -05:00
David Hall
78e58a1ddc
Fixed bug when writing Guid values being in wrong format for registry
2019-01-27 17:42:41 -05:00
David Hall
21c5fcb28d
Added ToRegString methods for Guids
2019-01-27 17:41:34 -05:00
David Hall
bd7004e95f
Added FromDataObject factory method
2019-01-27 17:41:01 -05:00
David Hall
3dccc360ba
Fixed bug in RegisterCommandVerb when supplying null values
2019-01-27 17:40:32 -05:00
David Hall
5d63153ee5
Added classes to support creating a COM Local Server:
...
ComClassFactory - impl of IClassFactory
ComLocalServer - creates message loop and registers class
ComMessageLoop - impl of simple message loop
ComObject - base class for COM objects
ComRegistrar - class for registering COM objects
2019-01-27 00:47:46 -05:00
David Hall
8f1e78e0f3
Updated project versions to 2.2.0 as there have been lots of changes, some of which are breaking.
2019-01-21 08:42:39 -08:00
David Hall
8fa7d0aafa
Changed project versions to 2.1.3
2019-01-14 14:46:49 -07:00
David Hall
e75e12e431
Added stronger types
2019-01-14 10:32:56 -07:00
David Hall
77d9cb57a4
Made ShellItem.Open public
2019-01-08 08:16:51 -07:00
David Hall
1e16ceed27
Updated copyright and PackageTags formatting in project files
2019-01-07 15:00:20 -07:00
David Hall
1d966558ed
Updated code to use new extension methods
2019-01-06 12:35:32 -07:00