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
David Hall
8623205679
Added generic helper methods for all interface methods that get a COM interface by specifying its IID.
2019-01-06 11:57:14 -07:00
David Hall
b35d873906
Changed project versions to 2.1.2
2019-01-02 20:30:36 -07:00
David Hall
4356d92c71
Changed project versions to 2.1.1.
2018-12-17 11:45:32 -07:00
David Hall
eb902e4595
Fixed build errors and warnings due to XML comments and obsolete license reference in project files.
2018-12-15 13:44:33 -07:00
David Hall
c6451bf9b3
Updated version to 2.1.0 to indicated addition of Theraot.Core as a dependency.
2018-12-11 11:34:44 -07:00
David Hall
33b358033d
Updated project information to version 2.0.1 and signed all assemblies.
2018-12-07 13:53:39 -07:00
David Hall
fed13f093c
Updated project files for 2.0.1
2018-11-30 14:34:07 -07:00
David Hall
8a1355b0af
Updated comments
2018-11-28 12:33:55 -07:00
David Hall
d434ec4527
Updated project files for 2.0 release
2018-11-28 08:53:23 -07:00
David Hall
12c150a15b
Removed PROPERTYKEY constructor for PropertyDescription and moved to factory method Create since it can return a 'null'. Changed associated code.
2018-11-27 12:07:03 -07:00
David Hall
c5467dfb7e
Another 2.0 major commit. All tests working.
2018-11-19 21:18:50 -07:00
David Hall
627c6d2314
2.0 Checkin - Buildable
2018-10-26 12:24:07 -06:00
David Hall
bfd2730324
Changed project builds to use latest C# minor version
2018-09-27 09:46:40 -05:00
David Hall
07b35daee3
Updated projects to version 2.0.0
2018-09-21 23:28:01 -06:00
David Hall
138accc380
MAJOR BREAKING CHANGES: Fundamentally changed how HANDLEs are represented and used. Much better type safety now that all handles derive from HANDLE and disposing instances are all noted by a SafeHxxx name. Solves problem with circular references and random IntPtr parameters.
2018-09-21 22:35:34 -06:00
David Hall
46d20def8b
Updated project files with updated stats
2018-09-19 06:54:43 -06:00
David Hall
fe45d80854
Due to significant breaking changes related to the removal of conversion operators from GenericSafeHandle to IntPtr, changed version to 1.1.0.
2018-09-04 13:47:00 -06:00
David Hall
bbc22f6646
Changed calls from conversion operator to DangerousGetHandle for all GenericSafeHandle derivatives.
2018-09-04 13:42:49 -06:00
David Hall
6b1ed53536
Made conversion operator from GenericSafeHandle to IntPtr explicit to minimize unintended conversions ( #12 ) and updated all affected functions, including fixing those affected by unintended consequences.
2018-09-04 12:04:25 -06:00
David Hall
ff50e8d23d
Added classes to register and interact with the registry for shell applications, ProgIDs and file associations
2018-08-29 12:59:20 -06:00
David Hall
0f476165ca
Updated all versions to 1.0.19
2018-08-18 21:37:35 -06:00
David Hall
f844f6a8f2
Updated projects for 1.0.18 release
2018-08-10 11:54:21 -06:00
David Hall
6c77595ea2
Updated correlation reports and project files after fixing analysis tool
2018-07-07 21:35:28 -06:00
David Hall
a69e19ebc6
Updated project files and information to 1.0.16
2018-07-02 16:22:56 -06:00
David Hall
c85b8d8fc4
Version 1.0.15 project file updates
2018-06-27 13:25:04 -06:00
David Hall
d4d804e7a3
Updated project files for 1.0.14
2018-06-08 12:00:08 -06:00
David Hall
50f6efb0ff
Added ShellItem.ViewInExplorer method
2018-06-08 11:22:18 -06:00