* Check whether battery values are available
* Rename _degradationPercentage to _degradationLevel
* Add support for temperature monitoring
* Include the battery device name and tag in the hardware identifier
* Set sensor index value properly
* Fix temperature conversion
The returned temperature value must be divided, not multiplied.
* Disable sensors that have a "null" value
* Fix random symbols in battery device name and manufacturer
There is no entry for `CopyMemory` exported from kernel32.dll as it is
omitted from the following output:
```
dumpbin /exports C:\Windows\System32\kernel32.dll
```
The name we're looking for is `RtlCopyMemory`. This does not affect
traditional .NET framework users as `CopyMemory` was special cased prior
to .NET core
([source](https://github.com/dotnet/runtime/issues/12496#issuecomment-483442084))
The incorrect entry point will cause an `EntryPointNotFoundException`
for NET core users (ref:
https://github.com/nickbabcock/OhmGraphite/issues/214)
There were a couple other entries in kernel32 that are missing:
- CreateFile
- LoadLibrary
Both functions appear to have a `CreateFileA` and `LoadLibraryA`
variant, but I do not know if those are appropriate.