Commit Graph

153 Commits (1097a9422ac819460d3afc67cf9c684699ca9c7a)

Author SHA1 Message Date
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 1f6d4f4384 Added .NET Stream wrapper for COM IStream instances. 2019-05-08 09:25:15 -06:00
David Hall 51c888f4da Added FromNullable static creator 2019-05-08 09:24:39 -06:00
David Hall 15f05e2924 Added factory to make instancing ComReleaser easier and changed implicit operators to explicit. 2019-05-08 09:24:00 -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 56f517d6e9 Updated project information for 2.3.8 2019-04-30 08:00:06 -06:00
David Hall 111d8478ad Improved handling of 'null' in ToString methods 2019-04-28 09:46:59 -06:00
David Hall 0cc1d914d0 Updated project files for 2.3.7 release 2019-04-24 08:48:29 -06:00
David Hall 9c97ccfd14 Fixed bug in GetBytes method 2019-04-24 08:24:18 -06:00
David Hall 5be3e15570 Update project versions to 2.3.6 2019-04-15 13:45:35 -06:00
David Hall 5548ff6c71 Changed generic constraint on Write methods to struct instead of unmanaged 2019-04-10 13:11:06 -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 f0ce103165 Updated project file information 2019-04-09 15:20:49 -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 9ed6c463c7 WIP on new generic marshaler 2019-04-08 12:08:29 -06:00
David Hall 455f9971d2 Added resources tied to backwards compatible additions 2019-04-08 12:04:00 -06:00
David Hall 8cfcee658d Added much improved native memory stream implementation over MarshalingStream. Use NativeMemoryStream moving forward. It is saver and more function rich. 2019-04-08 12:03:20 -06:00
David Hall 65e1440ec0 Ensured that space in newly allocated memory is zeroed by default. Fixed handling of Size manipulation to zero out bytes added. (bug: it zeroed out everything) 2019-04-08 11:54:24 -06:00
David Hall 51edbded7c Added static Instance properties to IMemoryMethods implementations 2019-04-08 11:42:16 -06:00
David Hall 180dc255d8 Added 'Obsolete' attribute to push users to NativeMemoryStream 2019-04-08 11:41:26 -06:00
David Hall f18f91950d Fixes for handling null pointer and bool 2019-04-08 11:40:43 -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 0644bcedfb Minor reformatting 2019-03-26 21:02:27 -07:00
David Hall 3c40989527 Fixed Unicode bug in GetString 2019-03-25 17:40:06 -07:00
David Hall 178701d505 Added string handling to all Convert methods 2019-03-25 17:39:29 -07:00
David Hall dc83d5d0b4 Moved Dump, GetBytes and IntPtr operator to SafeAllocatedMemory base class. Added byte* and SafeBuffer operators to SafeAllocatedMemory. 2019-03-25 17:38:42 -07:00
David Hall 8281580a28 Added null checking to Contains method 2019-03-25 17:36:39 -07:00
David Hall 40155dc239 Added backwards compatible classes SafeBuffer, UnmanagedMemoryAccessor and UnmanagedMemoryStream for .NET 2.0 and 3.5. 2019-03-25 17:35:51 -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 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 38b45d9192 Added methods to simplify safely converting from a pointer to a type. Handles blittable and serializable types. 2019-03-07 09:25:12 -07:00
David Hall 9612664387 Fixed Write methods to better handle string types 2019-03-07 09:22:40 -07: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 0ff4e8c937 Made Items property virtual 2019-03-07 09:20:49 -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 838f7fca10 Added method to lookup enum value from corresponding type. 2019-02-24 18:36:37 -07:00
David Hall 13e31c7430 Improved documentation and usability 2019-02-22 14:27:45 -07:00