Scover
637b59da60
Updated ``SafeLPSTR``, ``SafeLPTSTR`` and ``SafeLPWSTR`` ( #352 )
...
* Fixed unbounded recursion
Fixed unbounded recursion in ``SafeLPSTR``, ``SafeLPTSTR`` and ``SafeLPWSTR`` implicit cast operators from string by inverting the types.
As the associated documentation states the operators are supposed to convert to a string, not from a string.
* Removed useless operators + nullable
2022-12-19 16:42:43 -07:00
David Hall
6fb1d69828
Fixed exceptions being thrown by `BOOL` and `BOOLEAN` when interacting with `int` and ! operator
2022-11-18 07:54:12 -07:00
David Hall
630261a8c4
Fixed bug in IEnumString.Enum extension method
2022-11-16 11:53:02 -07:00
dahall
d5cbaabf5f
Removed implicit operators with SafeLPXSTR classes to prevent compiler confusion
2022-09-22 11:09:42 -06:00
David Hall
0e84510a8b
Updated NuGet packages
2022-09-01 17:48:45 -06:00
dahall
7c032ba708
Renamed all project report files to 'readme.md' so they show in GitHub
2022-09-01 14:43:04 -06:00
dahall
d7a7a340f5
Added implicit operators to new types for GuidPtr, and StrPtrXX variants
2022-08-29 16:21:43 -06:00
dahall
b1247750f6
Simplified NativeMemoryStream.Write()
2022-08-29 16:21:01 -06:00
dahall
93bdb99f43
Added SafeMemoryHandleEx.AddSubReference
2022-08-29 16:20:24 -06:00
dahall
9dc2de859d
Added nullable type handling to IntPtr.Convert
2022-08-29 16:19:37 -06:00
dahall
3b18dd7755
Updated project files
2022-08-06 15:38:43 -06:00
dahall
155609864a
Fixed minor build errors
2022-08-05 21:03:44 -06:00
dahall
34bed8cfb4
Cleaned handle classes
2022-07-28 22:19:53 -06:00
dahall
480f5df595
Added string classes via template
2022-07-20 17:40:09 -06:00
dahall
eeb429ebb6
Added ! operator support to SafeAllocatedMemoryHandle and SafeMemoryHandle.Clone() method
2022-07-20 17:36:27 -06:00
dahall
2ce6552190
Enhanced SafeMemString with nullable support and the addition of methods, properties and operators to mimic StringBuilder
2022-07-20 17:35:05 -06:00
dahall
0320c6b7b6
Enabled nullable support for string related classes
2022-07-20 17:33:26 -06:00
dahall
e97896fda6
Updated project files
2022-07-16 19:30:05 -06:00
dahall
b0d7174d5a
Added SafeMemoryPool class to auto dispose temporary pointers.
2022-07-16 17:43:48 -06:00
dahall
fb9787ec0a
Fixed bug in StringHelper.GetByteCount
2022-07-05 09:43:24 -06:00
dahall
500fc4ecc7
Added RequiresUnreferencedCodeAttribute for frameworks other than NET50 and greater.
2022-06-28 16:02:10 -06:00
dahall
298ea34914
Updated package readme files
2022-06-14 16:55:29 -06:00
dahall
ca94a21b15
Added operator overloads to `SizeT`
2022-05-16 13:14:38 -06:00
dahall
aa69db53fd
Updated documentation and added package readme files.
2022-05-09 15:56:58 -06:00
dahall
a1d049242d
Exposed VirtualDictionary.Add as virtual method
2022-04-10 22:34:59 -06:00
dahall
dc6cea6de0
Moved most TargetFrameworks tags out of project files and into Directory.Build.props for easier maint. Also changed net462 build to net45 for greater compatibility.
2022-03-14 09:32:06 -06:00
dahall
7b9c17050b
Pulled back dependency on System.Memory to 4.5.3 for compatibility
2022-03-11 18:04:38 -07:00
dahall
3876cce9a0
Added indexer to SafeMemString
2022-03-10 17:43:56 -07:00
NN
95328a6fd0
Lower System.ValueTuple version dependency. ( #280 )
2022-02-28 11:54:43 -07:00
dahall
9e69ce32ca
Made CorrespondingTypeAttribute.GetAttrForEnum public.
2022-02-22 19:38:50 -07:00
dahall
a9ae8df90a
Extended SafeAllocatedMemoryHandle.ToType extension method to support CharSet
2022-02-15 16:01:21 -07:00
dahall
dd2e46ae75
Fixed minor error handling in EnumFlagIndexer and added Intersect method.
2022-02-08 14:53:03 -07:00
dahall
565ec6add7
Fixed #274 (error in EnumerableEqualityComparer.Equals)
2022-02-08 09:18:03 -07:00
dahall
b669932c57
Removed code and conditionals for obsolete target frameworks.
2022-02-07 14:58:09 -07:00
dahall
d9f00186b0
Removed support for .NET 2.0, 3.5, 4.0 and 4.5, .NET Core 2.0, 2.1, and 3.0 since all are or shortly will be out of support. Added support for .NET 4.6.2 and 4.8.
2022-02-07 14:35:37 -07:00
dahall
d29963d39a
Added PinnedObject implicit operator to unsafe void*.
2022-02-05 15:14:55 -07:00
dahall
4ce428215c
Added SafeAllocatedMemoryHandleBase.GetBytes() and pulled SafeMemoryHandle.Locked from IMemoryMethods instance
2022-01-22 15:30:42 -07:00
dahall
5a511172ea
Added extra buffer when setting size from VanaraMarshaler to prevent errors when they're off due to alignment issues
2022-01-22 15:28:48 -07:00
dahall
0f6fb75d3d
Added StringHelper methods supporting encoders
2022-01-22 15:27:13 -07:00
dahall
c3078b052b
Updated project files with 3.4.0 changes
2022-01-17 17:15:18 -07:00
dahall
5f52aa7820
Added SafeMoveableHGlobalHandle class and added support to locking memory to all memory classes.
2022-01-16 17:22:34 -07:00
dahall
747da30302
Fixed small bug in IntPtr.ToStringEnum
2022-01-16 17:21:11 -07:00
dahall
0bb9797e2f
BREAKING CHANGES: I have dramatically reduced dependencies of almost all assemblies on .NET runtime assemblies not part of core System assemblies, most specifically System.Drawing and System.Windows.Forms. This forced the removal of some overloaded methods and the replacement of leveraged structures and enums with native equivalents. I added Vanara.Windows.Shell.Common which has all the content from Vanara.WIndows.Shell that did not have dependencies. I extracted all extension methods from Gdi32 and User32 and moved them to Vanara.Windows.Extensions.
2022-01-14 07:32:51 -07:00
dahall
92c8ab945b
Updated NuGet packages
2022-01-04 15:28:43 -07:00
dahall
b9614e7eb2
Rolled version to 3.4.0 and added support for .NET 6.0
2021-12-27 16:34:25 -07:00
dahall
1cbfdefb5b
Updated project files
2021-12-12 21:19:43 -07:00
dahall
62c78d4ac2
Added `BeginEndEventContext` to call delegates on context entry and exit
2021-11-11 17:49:22 -07:00
dahall
7667a26c16
Updated NuGet dependencies
2021-10-19 07:52:18 -06:00
dahall
26bd7d8e04
Added IEquatable support to GuidPtr and StrPtr* structs.
...
Added char* cast to StrPtrUni and sbyte* cast to StrPtrAnsi.
2021-09-27 15:47:33 -06:00
dahall
231ea34f17
Added IsNullOrEmpty property to StrPtrXX structures.
2021-09-21 16:11:45 -06:00
dahall
d52b0d5b18
Updated NuGet package dependencies
2021-08-26 09:05:27 -06:00
dahall
b864f19066
Added CorrespondingTypeAttribute.EncodingType property to allow for encoding as part of a conversion.
2021-08-17 11:06:35 -06:00
dahall
55458a86fe
Updated project files for 3.3.10
2021-06-03 20:12:24 -06:00
dahall
c1f2225efb
Updated project files for 3.3.10 release
2021-06-02 20:57:31 -06:00
dahall
370e8a857a
Added constants and conversion methods for enums in the C Run-time Library related to files.
2021-06-02 13:08:30 -06:00
dahall
d53279dcc6
Fixed bug in IntPtr.ToStringEnum method that failed when just the ending null terminator was present.
2021-05-02 21:51:20 -06:00
dahall
89f5605f65
Updated project files
2021-04-26 10:16:34 -06:00
dahall
4694988177
Enhanced ComConnectionPoint
2021-03-28 20:12:48 -06:00
dahall
ce5e582d25
Updated ComStream to support IStream implementation
2021-03-28 16:34:49 -06:00
NN
28822bab9e
Use explicit framework reference. Remove transitive TFM requirement. ( #212 )
...
Co-authored-by: NN <NN---@users.noreply.github.com>
2021-03-23 07:26:03 -06:00
dahall
3e00f2743c
Updated referenced NuGet package versions
2021-03-07 11:15:52 -07:00
dahall
483d76df37
Changed return value of OpenFileById from IntPtr to SafeHFILE
2021-03-02 07:55:51 -07:00
dahall
c2c75a461e
Updated project files for 3.3.3 release
2021-02-03 14:49:55 -07:00
dahall
967389e246
Removed all calls to `Marshal.ReleaseComObject` where there exists a possibility that the interface could have been referenced by another object and changed to nulling the holding variable. See discussion thread #188 .
2021-02-01 16:08:43 -07:00
dahall
a6d225b6b8
Updated project files with `ImportWindowsDesktopTargets` feature to prevent NETSDK1136 build error ( #200 )
2021-01-26 07:49:48 -07:00
dahall
2b4cfee7e2
Added SafeMemStruct.InitializeSizeField method to initialize an in-memory structure's size field
2021-01-25 12:10:13 -07:00
dahall
affe76ff74
Added Append overloaded methods to SafeMemStruct to extend memory and write in bytes, memory or objects and return a pointer to the newly written element. Also added GetFieldAddress method to get the location of a field in the structure's memory.
2021-01-20 16:56:09 -07:00
dahall
2165632d1d
Added InteropExtensions.SizeOf(object) method to calculate the size of an object in native memory. It will handle blittalbe structures, primitives, strings and arrays or enumerable lists of those items.
2021-01-20 16:53:12 -07:00
dahall
c5c0833b98
Added binary negate overload to BOOL and BOOLEAN
2021-01-14 11:15:16 -07:00
dahall
5cd53d5c7b
Extended IntPtr.Write(object value...) method to handle almost all cases of object types (arrays, lists, etc.)
2021-01-11 11:22:39 -07:00
dahall
e1cfb9c8ce
Added ISafeMemoryHandle.GetBytes method that was already implemented all implemented classes
2021-01-11 11:19:15 -07:00
dahall
bf89a972a2
Added Null field to SafeCoTaskMemStruct<T> and SafeCoTaskMemStruct<T>
2020-12-30 20:47:14 -07:00
dahall
e576bd40e7
Updated project information
2020-12-26 11:07:30 -07:00
dahall
8acca80194
Updated project information
2020-12-22 19:13:59 -07:00
dahall
76fc958c10
Abstracted out read-only methods from SafeAllocatedMemoryHandl into SafeAllocatedMemoryHandleBase
2020-12-22 16:26:27 -07:00
dahall
c4ed47de61
Added XML comment
2020-12-22 16:25:39 -07:00
dahall
f1b7e7c363
Added more detail to error msg in VanaraMarshalerAttribute
2020-12-17 15:42:50 -07:00
dahall
e214393430
Updated project documentation files
2020-12-16 11:41:02 -07:00
dahall
4fa2755085
Added IArrayStruct<T> interface to identify two-field structures where the first field is an UInt32 and the second is a pointer to an array of structures along with supporting marshaler and extension method.
2020-12-14 15:57:23 -07:00
dahall
4d71e6ce9b
Updated project information markdown files with new format
2020-11-20 18:52:43 -07:00
dahall
4c18661740
Updated project files for 3.3.0 release
2020-11-20 12:38:46 -07:00
dahall
5dd910e41c
Added time_t class with conversion support to/from DateTime
2020-11-19 14:47:13 -07:00
dahall
57219c7cc9
Fixed code with new warnings -- no functionality change
2020-11-14 13:36:32 -07:00
dahall
ab4f3c5bd2
Removed explicit exception re-throw to prevent warning
2020-11-14 10:11:47 -07:00
dahall
04d33e7e1a
Added support for .NET 5.0 (windows)
2020-11-13 16:55:23 -07:00
dahall
5ce303ed5a
Added InteropExtensions.UnsafePtrToArray method
2020-11-11 19:57:53 -07:00
dahall
8344b80f2a
Moved DECIMAL to Ole
2020-11-11 19:57:15 -07:00
dahall
bed583797a
Added RefEnumerator.Count, Reset and indexer
2020-11-10 21:36:56 -07:00
dahall
c2640876c3
Added IntPtr.AsRef extension method
2020-11-10 21:35:58 -07:00
dahall
9a52915d58
Added OLE based DECIMAL struct
2020-11-10 09:44:27 -07:00
dahall
db7884b6f5
Overloaded IntPtr.LinkedListToEnum extension method to allow for offset func.
2020-11-04 13:04:42 -07:00
dahall
5136887803
Updated Theraot NuGet pkg to 3.2.0 across solution
2020-10-28 19:32:14 -06:00
dahall
ffc54378a7
Removed .NET 5.0 support until VS is updated
2020-10-26 18:36:24 -06:00
dahall
69bd276627
Added support for .NET 5.0 (windows)
2020-10-26 10:36:13 -06:00
dahall
30167bc6ca
Fixed bug with CorrespondingTypeAttribute.GetAttrForEnum with default action
2020-10-22 14:31:33 -06:00
dahall
8686a6723d
Updated project and build files for 3.2.18. Converted all project files to new SDK format.
2020-10-21 08:27:54 -06:00
dahall
3c4e5fe12c
More work on generic History collection
2020-09-25 17:17:51 -06:00
dahall
7f2c2a6df3
Added `Vanara.Collections.History` class
2020-09-22 13:57:52 -06:00
dahall
2824e230b6
Oops. Removing an addition that was already added.
2020-09-10 10:30:48 -06:00
dahall
a8ef6e11c8
Added NativeMemoryStream.ReadToPtr and WriteFromPtr methods to interact with allocated memory.
2020-09-10 10:13:56 -06:00