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
David Hall
8df9eba7bb
Updated project files with new versions and comments
2018-05-30 12:32:03 -06:00
David Hall
2cfce3c7d3
Updated versions to 1.0.12 and corresponding release notes
2018-04-05 14:54:36 -06:00
David Hall
cd8afc3891
Updated XML documentation
2018-04-05 14:17:33 -06:00
David Hall
d9337cb5d2
Changed icon retrieval methods to use ShellImageList.
2018-04-05 13:26:16 -06:00
David Hall
ca7ca983ca
Changed GetIcon to GetSystemIcon and added GetFileIcon.
2018-04-05 13:25:38 -06:00
David Hall
09dd4c1e70
Update report files and release notes
2018-04-04 09:27:40 -06:00
David Hall
0d8b96fe9b
Corrected XML documentation errors
2018-04-03 18:35:18 -06:00
David Hall
6551700381
Updated versions to 1.0.11 and corresponding release notes
2018-04-03 17:58:52 -06:00
David Hall
541b5c39d4
Added ShellFileOperations class along with supporting unit tests to encapsulate IFileOperations interface
2018-04-03 13:21:51 -06:00
David Hall
d137adff78
ShellUtil.GetShellItemForPath now can get an item that doesn't exist on the file system.
2018-04-03 13:20:57 -06:00
David Hall
bc62f02393
Exposed IEnumShellItems
2018-03-30 11:54:56 -06:00
David Hall
7ce016b4cf
Added constructors for lists of items
2018-03-29 18:25:08 -06:00
David Hall
84b7a3bada
Updated to version 1.0.10
2018-03-26 19:19:38 -06:00
David Hall
30554d4c67
Updated builds and reports with updated constucts
2018-03-26 16:56:47 -06:00
David Hall
cd9e856f77
Changed version to 1.0.9
2018-03-26 15:06:12 -06:00
David Hall
dbf2e68121
Updated projects to version 1.0.8
2018-02-07 09:44:01 -07:00
David Hall
5e9fff54ef
Added ControlPanel class to Shell assembly
2018-01-29 17:57:03 -07:00
David Hall
c5885b4c17
Updated projects for 1.0.7 build.
2018-01-27 15:07:38 -07:00
David Hall
3b6d12c8e0
Enhanced and fixed COM Property abstractions.
2018-01-27 14:40:26 -07:00
David Hall
ce2db9f278
Improved error handling and documentation
2018-01-22 18:23:01 -07:00
David Hall
4335cdaf8d
Corrected ShellItem.GetImage
2018-01-20 22:30:03 -07:00
David Hall
b772f916e4
Working build / checkpoint for Vanara.Windows.Shell.
2018-01-20 18:19:18 -07:00
David Hall
9b7e3ef765
Rolled project versions to 1.0.6
2017-12-29 13:54:58 -07:00
David Hall
ea0dd3fd16
Changed project version to 1.0.5
2017-12-14 21:26:21 -07:00
David Hall
f446e2e9b7
1.0.4 Release Build
2017-12-14 17:34:14 -07:00
David Hall
57375676b5
Removed unneeded references from project dependencies
2017-12-14 11:37:56 -07:00
David Hall
8a1c33e158
Renamed Vanara.UI to Vanara.Windows.Forms and reorganized contents
2017-12-13 10:20:03 -07:00
David Hall
a30f82d282
Lots of assembly refactoring: split PInvoke.User32 so GDI functions are in separate assembly, moved system classes from Vanara.UI to Vanara.System, split off shell classes to Vanara.Windows.Shell
2017-12-12 18:41:40 -07:00