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
dahall
258b01886e
Added CallerXXAttribute classes missing from .NET 2-4 so that current compliers can be spoofed to pull that information.
2020-09-10 10:13:17 -06:00
dahall
dabe7bcd84
Added methods to assist with memory alignment.
2020-09-10 10:11:58 -06:00
NN
80bfe2ce20
Call to closeMethod in GenericSafeHandle. ( #161 )
2020-08-27 10:25:14 -06:00
dahall
b7d0a30276
Updated project information
2020-08-26 21:03:04 -06:00
dahall
37d8521a9d
Updated project files for 3.2.14
2020-08-20 09:28:06 -06:00
dahall
c5814672d5
Added protected size and offset values
2020-08-19 20:51:11 -06:00
dahall
c88d9feb3c
Added LibHelper class with Is64BitProcess and DoesWin32MethodExist methods
2020-08-05 10:36:37 -06:00
dahall
cac3df43f2
Project information update
2020-07-27 10:50:28 -06:00
dahall
1564c3d702
Made SafeAllocatedMemoryHandle.GetBytes() public
2020-07-22 18:23:37 -06:00
dahall
091352956e
Fixed ( #152 ) bug in base class SafeMemoryHandleExt that caused ToString(int...) to fail if memory size was not specifically set (like in parameter assignment).
2020-07-20 10:44:01 -06:00
dahall
e701d99c1b
BREAKING CHANGE: Due to performance, changed IMemoryMethods and ISimpleMemoryMethods to contain method signatures instead of properties of method delegates. Then changed all derived memory classes to new interface definition. I believe most of this only affects internal classes so hopefully not a huge effect on your code.
2020-07-20 09:48:32 -06:00
dahall
704987c2a1
Extended all MarshalToPtr methods with lock and unlock pointer functions and optional parameters.
2020-07-19 16:45:54 -06:00
dahall
c081cfa38c
Updated project information files
2020-07-14 16:02:36 -06:00
dahall
fffb6981ff
Update project statistics files
2020-07-14 15:07:18 -06:00
dahall
eb3cc13bb3
Updated project information for 3.2.12
2020-07-13 08:58:32 -06:00
dahall
b3842a902a
Fixed compile warning for unused variable in Convert
2020-07-13 07:56:43 -06:00
David Hall
26f61b9189
Merge pull request #142 from NN---/getiptable_raw
...
Add zero copy GetIpNetTable2.
2020-07-12 08:30:02 -06:00
NN
9e5e73b27c
Throw the exception with stack ( #148 )
2020-07-12 07:55:22 -06:00
NN
ca36a6bc95
Fix passing non-readonly-struct by read-only reference ( #147 )
2020-07-12 07:54:40 -06:00
NN
bc139f52a7
Add zero copy GetIpNetTable2.
2020-07-12 10:09:39 +03:00
dahall
adae5b3268
Fixed bug in UntypedNativeMemoryEnumerator where enumerated type was not set.
2020-07-11 16:25:56 -06:00
dahall
fdcd7e93a1
Updated NuGet packages
2020-06-11 11:52:26 -06:00
dahall
8e981f25b6
Added IsMethodCompatibleWithDelegate method
2020-06-09 19:00:42 -06:00
dahall
28eaf62f3b
Updated project information
2020-06-02 22:02:36 -06:00
dahall
f0976ae924
Added implicit conversion operator to SafeCoTaskMemStruct and SafeHGlobalStruct from nullable struct.
2020-05-27 22:14:24 -06:00
dahall
8b5979d17c
Added SafeCoTaskMemStruct and SafeHGlobalStruct derivations of SafeMemoryStruct
2020-05-26 06:41:40 -06:00
dahall
fb90105165
Added SafeGuidPtr for instances where GUID is optional.
2020-05-20 12:25:55 -06:00
dahall
b309678901
Fixed sizing to include enums
2020-05-20 12:25:19 -06:00
dahall
f67c02dc14
Added SafeAllocatedMemoryHandle.AsReadOnlySpan extension method and changed Span methods to use IntPtr extensions.
2020-05-16 08:56:21 -06:00
dahall
589d47c3b6
Added classes to enumerate on pointer elements (NativeMemoryEnumerator and UntypedNativeMemoryEnumerator). Changed IntPtr.ToIEnum methods to use new classes and added IntPtrGetEnumerator extension methods.
2020-05-15 16:37:15 -06:00
dahall
5c726943b3
Added IntPtr.AsSpan and IntPtr.AsReadOnlySpan extension methods
2020-05-15 11:40:11 -06:00
dahall
30aabcaaed
Added Equals(TStruct) method to SafeMemStruct to prevent boxing when comparing. (Thanks @NN)
2020-05-15 06:46:55 -06:00
dahall
4216d271d9
Added new SafeMemStruct class that wraps a structure into memory with Span support. Added assoc. unit test.
2020-05-14 17:56:28 -06:00
dahall
ab42b87b0c
Moved SafeAllocatedMemoryHandle.Dump back under DEBUG only build. Added AsSpan and AsBytes methods to SafeAllocatedMemoryHandle for frameworks supporting Span<T>. Added SafeMemoryHandleExt.AsRef<T> method for getting a Span of a structure from the memory.
2020-05-14 17:53:35 -06:00
dahall
d1f19d705b
Added System.Memory NuGet package reference for supported frameworks
2020-05-14 17:51:09 -06:00
dahall
a86fe27c11
Updated project file information for 3.2.4 release
2020-04-13 06:44:23 -06:00
dahall
a59b4bfba7
Added ISimpleMemoryMethods (subset of IMemoryMethods with just alloc and free) and MemoryMethodsFromSimple<TSimple> which implements most of IMemoryMethods using just the methods from ISimpleMemoryMethods.
2020-04-07 14:34:28 -06:00
dahall
c0ff453a20
Moved much of the individual project file detail to root Directory.Build.* files for consistency. Fixed build errors due to bad or missing project tags. Cleaned up project files.
2020-04-03 14:51:10 -06:00
dahall
9fdb1ea000
Update project versions to 3.2.4
2020-04-01 18:48:29 -06:00
dahall
1c217e668e
Updated project files to 3.2.3
2020-03-31 18:51:44 -06:00
dahall
814833852b
Major changes which could affect anticipated behavior: All conversions to ordinals now look for max value and will return converted value's max value. No more invalid conversions.
2020-03-31 16:00:36 -06:00
dahall
476960ecbf
Updated project versions to 3.2.2.
2020-03-17 19:48:07 -06:00
dahall
24dc30de5a
Updated project files with v3.2.1 information.
2020-03-09 10:23:37 -06:00
dahall
d8b09ff2ea
Added missing French resources to Vanara.Core
2020-02-29 15:01:18 -07:00
dahall
19b3efd408
Updated project information and version to 3.2.0
2020-02-26 17:35:48 -07:00
dahall
8d10011a6f
Changed call at disposal to just ReleaseComObject insted of FinalReleaseComObject.
2020-02-26 15:15:31 -07:00
dahall
5d711e9580
Removed Core project unfinished files that were excluded.
2020-02-13 10:27: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
6edf55346d
Added support for .NET Core 3.1
2020-01-03 16:46:48 -07:00
David Hall
08273f800c
Added StringHelper.IsNullOrWhiteSpace to account for missing function prior to .NET 4. ( #86 )
2019-12-30 10:25:45 -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
f74d478b28
Added support for serialization to WriteNoChecks
2019-12-10 06:55:54 -07:00
David Hall
ad3e1e06ce
Fixed EnumInheritance
2019-12-10 06:55:20 -07:00
David Hall
c3121e6ecb
Fixed passing byte[] into GetSize
2019-12-10 06:54:55 -07:00
David Hall
89d17b5241
Added ISerializable support as last option for pushing and pulling from memory pointers
2019-12-09 07:22:20 -07:00
David Hall
38baa53cc1
Unfinished work on object marshaler
2019-12-06 17:09:56 -07:00
David Hall
159f1c8235
Added EnumInheritance and InheritsFrom extension methods.
2019-12-06 17:09:08 -07:00
David Hall
2cb4245f37
Added IsMarshalable method and converted most uses of IsBlittable to it. Fixed MarshalToPtr(Array ... method to not throw casting exception.
2019-12-06 17:07:21 -07:00
David Hall
8bb754f22e
Updated project files to version 3.1.5
2019-11-26 08:20:16 -07:00
David Hall
61fe0f30d8
Changed Marshal.SizeOf to InteropExtensions.SizeOf to account for IVanaraMarshaler instances
2019-11-25 19:36:46 -07:00
David Hall
80b7256543
Changed unspecified size to uint.Max instead of UIntPtr.Max to prevent overflow
2019-11-25 19:32:51 -07:00
David Hall
2036104502
Update project information for 3.1.4
2019-11-25 07:02:08 -07:00
David Hall
ce3dc1a0fe
Removed blittable constraint on ToArray and ToEnumerable
2019-11-21 16:33:39 -07:00
David Hall
a94e60820b
Reworked memory manipulation functions in InteropExtensions and IntPtrConverter to use new marshaling directives and to drive consistency of use across libs (i.e. call same method to do same work).
2019-11-19 12:52:44 -07:00
David Hall
2727b23092
Updated dependent NuGet packages
2019-11-18 09:10:55 -07:00
David Hall
2892d1e677
Added cookie handler to marshaler and attribute
2019-11-16 15:48:44 -07:00
David Hall
79ad7b8452
Added CanGet method to pull when enum is not found
2019-11-16 15:47:02 -07:00
David Hall
2eab8af7eb
Changed project versions to 3.1.4
2019-11-13 23:07:14 -05:00
David Hall
8f289e2760
Changed to support IVanaraMarshaler requiring addition of size parameter to some methods.
2019-11-13 23:02:51 -05:00
David Hall
ba49b74b73
Removed IMarshalDirective and created IVanaraMarshaler with supporting attribute and helper class.
2019-11-13 23:02:11 -05:00
David Hall
035f6ce631
Updated project files for v3.1.3
2019-11-08 08:29:33 -07:00
David Hall
0eb05fc0b0
Updated project info for 3.1.2 release
2019-11-04 06:49:29 -07:00
David Hall
4143c8767e
Added IMarshalDirective interface as a means for IntPtrConverter.Convert to handle odd marshal behavior
2019-11-03 16:00:13 -07:00
David Hall
9ade2c8bd1
Added copy constructor to SafeMemoryHandle and consolidated initialization
2019-10-31 11:47:04 -06:00
David Hall
bb3435550f
Added SafeAllocatedMemoryHandle.TakeOwnership method to take control of the allocated memory.
2019-10-29 10:44:02 -06:00
David Hall
835487e466
Added GetOrderedFields Type extension method.
2019-10-29 10:43:18 -06:00
David Hall
6eee431d3e
Added properties as supportable type for CorrespondingType
2019-10-26 10:22:48 -06:00
David Hall
6ef7235bf3
Update project versions to 3.1.2
2019-10-23 13:44:41 -06:00
David Hall
6fb02a6ad0
Excluded SafeIDispatch until it is working
2019-10-23 13:05:29 -06:00
David Hall
a8e15280e1
Added workaround for missing function in .NET Std 2.0
2019-10-23 12:20:52 -06:00
David Hall
8d21d70f91
Added class to invoke methods on dynamic COM IDispatch.
2019-10-23 12:04:44 -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
05bd6d2098
Changed Write method to take structure as 'in' param.
2019-10-17 09:13:45 -06:00
David Hall
1b472f58be
Added SizeT.Zero value.
2019-10-17 09:13:00 -06:00
David Hall
77d4e5c49a
Fixed XML doc errors
2019-10-11 10:34:50 -06:00
David Hall
4f087df55c
Added non-generic CanGet/Set methods.
2019-10-08 20:13:17 -06:00
David Hall
cca953eb5f
Fixed bug #66 that forces all SafeMemString string representations to Empty when a size not known (like as a return value from a COM object).
2019-10-08 13:29:30 -06:00
David Hall
bce17ac78f
Added CanSet method that gets the corresponding enum value given a type
2019-10-07 18:43:55 -06:00
David Hall
f517fba76b
Added ObjectSecurity<T> for pre .NET 4.0 builds
2019-10-07 18:43:16 -06:00
David Hall
1a7aaf37f7
Fixed SetField so it works with ref structs
2019-10-07 18:42:49 -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
740bd61ac5
Added ToString method that includes an offset parameter.
2019-09-27 13:32:19 -06:00
David Hall
1450d98b32
Fixed BitPosition logic for exception
2019-09-25 14:12:17 -05:00
David Hall
1491e32f80
Made ISafeMemoryHandle derive from IDisposable
2019-09-19 12:22:21 -06:00
David Hall
c009606359
Added Set method to SafeMemString to allow for a new string to be set on the condition it is of same or lesser length.
2019-09-16 07:55:18 -06:00