Commit Graph

93 Commits (7de0f5301480fc4126c5bebe0a2dd25d2c2f0886)

Author SHA1 Message Date
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 badc08c7e5 Extended StructureToPtr so that it works with `enum` values. 2019-06-17 13:44:46 -06:00
David Hall ea5e8d6c2b Consolidated code and fixed bug in ToFileTimeStruct that mixed up UTC conversion. 2019-06-15 13:50:10 -06:00
David Hall 1c25f88529 Added Write method to set string into memory 2019-06-07 10:58:30 -06:00
David Hall 6627c016f2 Added Get/SetFieldValue extension methods 2019-05-08 12:50:26 -06:00
David Hall f738792e11 Better null handling 2019-05-08 12:50:01 -06:00
David Hall 0ff50e3291 Added CopyTo extension that specifies a start offset. 2019-05-08 09:23:04 -06:00
David Hall 0aacc9ff30 Extension to enumerate strings from an IEnumString instance 2019-05-08 09:22:16 -06:00
David Hall 9a76ee5597 Converted MarshalingStream references to NativeMemoryStream. 2019-04-10 12:13:28 -06:00
David Hall 34d48333d6 Corrected documentation errors 2019-04-10 11:28:19 -06:00
David Hall 39264cc1ab Separated GetPropertyValue into 2 separate methods and removed type changing to prevent unintended consequences. 2019-04-09 09:16:59 -06:00
David Hall 83404805c7 Fixed so InvokeMethod would see private methods 2019-04-08 16:20:19 -06:00
David Hall a941609f2c Minor optimization of property Position use 2019-04-08 11:25:17 -06:00
David Hall 791e8af6a6 Added extension dump function for IntPtr 2019-04-08 11:24:19 -06:00
David Hall 427de28a0e Added ToStructure method with boundary checking. Cleaned and optimized code. 2019-03-26 21:03:39 -07:00
David Hall 3c40989527 Fixed Unicode bug in GetString 2019-03-25 17:40:06 -07:00
David Hall f64c2b5e6b Added FindElementType extension method for Type. 2019-03-25 17:34:43 -07:00
David Hall 43a453fef9 Fixed bug in ToStructure where mishandled IntPtr. Added length checking to ToStringEnum. Changed length param on FillMemory to 'long' to work on 64-bit systems. 2019-03-25 17:34:03 -07:00
David Hall ef2f74cd83 Added allocation size handling to GetString and AllocString 2019-03-21 09:34:36 -06:00
David Hall d7266f1919 Added ToArray and ToIEnum methods that work on Type value rather than generic type param. 2019-03-15 16:15:48 -06:00
David Hall 6a46bd4c96 Added null handler to MarshalToPtr 2019-03-13 09:56:21 -06:00
David Hall 0ede8d5738 Added MarshalObjectsToPtr method to handle object arrays. Cleaned up MarshalToPtr for string enums. 2019-03-07 09:22:04 -07:00
David Hall 3bed0225b4 Added FillMemory method for pointers 2019-01-25 11:08:18 -05:00
David Hall c8122aef53 Change obsolete use of Enum.ToString 2019-01-16 08:07:00 -07:00
David Hall 9d83f279e1 Added QueryInterface method for objects 2019-01-08 08:17:45 -07:00
David Hall 16109f8336 Added BitPosition method and changed generic constraints to use System.Enum 2018-12-17 14:34:18 -07:00
David Hall 5282b5225d Added byte array extension method to dump to a hex string grid. 2018-12-11 11:32:01 -07:00
David Hall b6b9049de8 Fixed bug with COM objects and GetPropertyValue 2018-12-07 20:59:30 -07:00
David Hall c1b6852e7e Added SetPropertyValue method and changed TryGetType to use an out parameter. 2018-12-07 13:52:43 -07:00
David Hall 8a1355b0af Updated comments 2018-11-28 12:33:55 -07:00
David Hall 9e6c1629a3 Added more constraints on BitHelper methods to limit to whole numbers better. 2018-11-28 10:49:26 -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 6228da1b53 Added extension method InvokeGenericMethod to invoke a generic method using reflection on an object. 2018-09-10 15:49:58 -06:00
David Hall acb6097003 Added GitBits and SetBits methods 2018-08-07 17:21:43 -06:00
David Hall ee0d7a0e2c Fixed bug in SetBit 2018-07-27 09:09:43 -06:00
David Hall 5dfd395653 Added static methods for bit manipulation in BitHelper class. 2018-07-26 16:48:06 -06:00
David Hall 6420d47abc Fixed problem with GetAllTypes extension method 2018-04-05 14:49:56 -06:00
David Hall d9dc3e3c05 Improved GetType static method and added GetAllTypes() method for an AppDomain. 2018-04-05 10:52:36 -06:00
David Hall e617c912a3 Added GetCustomAttributes extension method and converted existing uses. 2018-01-12 11:41:42 -07:00
David Hall 7e372c55db Added LinkedListToIEnum method for pointer interop 2018-01-06 16:34:28 -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
David Hall b44f91b5a1 Initial code push: Core, PInvoke.Shared and PInvoke.TaskSchd 2017-11-27 10:18:01 -07:00