Commit Graph
17 Commits
Author SHA1 Message Date
PhyxionNL b8288cbb99 Fix #472 2021-06-17 13:08:45 +02:00
Nick Babcock 993dadd4dd Impose WMI timeouts (#444)
WMI queries do not have a timeout by default and can subsequently hang.
This commit adds timeouts to avoid these hangs.

On timeout, `Get` will throw a `ManagementException` that has an error
code of `ManagementStatus.Timedout`. In the case of abstract storage,
this exception will be silently swallowed and the statistics from WMI
not updated until the next update interval, which seems appropriate.

The storage group, on the other hand, a timeout there would cause an
initialization exception which would be propagated up to the caller
(which seems ok as something must be terribly wrong for that WMI query
to fail).

The code was also updated to call dispose for all the WMI objects. I
don't see this causing a behavior difference, but I found it better to
be safe than sorry.

The timeouts were chosen to be a compromise between returning in a
reasonable timeframe and allowing WMI, which can be terribly slow, to
return the query.
2021-05-14 09:24:50 +02:00
Nick Babcock 73c0be1384 Rename CopyMemory RtlCopyMemory (#438)
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.
2021-05-09 16:46:11 +02:00
sebastian-dev 5e2f395a21 Samsung 980 pro NVME Fix (#388)
Closes #370.

Thanks to @sebastian-dev.
2021-02-12 16:39:35 +01:00
fyilmazzandFurkan YILMAZ f82baea56a add smart health read (#300)
Co-authored-by: Furkan YILMAZ <furkan@apziva.com>
2020-10-02 11:26:18 +02:00
Phyxion 5d7f476711 Fixes #266
Groups must be locked during reset, otherwise the collection can be modified while enumerating.
2020-07-17 09:48:35 +02:00
Djordje 6387ebf2c2 Added http login, json data compression, ati.png, favicon, fixed compile error for debug build, port form updated (#256)
Thanks to @DjordjeMandic
2020-05-25 11:20:25 +02:00
Phyxion 3cc3d9139c Add support for multiple processor groups.
Merge from upstream.
2020-05-11 13:29:52 +02:00
Aaron Wood 0aa01230a6 Fix generic Windows NVMe drive detection (#232) 2020-04-23 22:57:30 +02:00
Phyxion 5bd108167d Restore OHM in copyright statement 2020-02-28 11:39:25 +01:00
Phyxion 9a9d670ca7 Update from upstream 2020-02-26 10:58:56 +01:00
Phyxion 6309cbe5a5 Apply code style 2020-02-17 13:12:24 +01:00
Phyxion 88530e48c6 Fix #188 2020-01-17 12:50:57 +01:00
Nick Babcock f4fb5ad13b Fix source file names on case sensitive file systems (#192)
Source file names will now match the class names.
2020-01-06 10:24:18 +01:00
MoshiMoshi0 14338554da Fix buffer over-read causing AccessViolationException in NVMeSamsung (#160) 2019-10-27 10:24:23 +01:00
sebastian-dev fa2ef007af Bugfixes (#155)
* Fix: https://github.com/LibreHardwareMonitor/LibreHardwareMonitor/issues/153
Add temperature Sensor Ranges

Fix: https://github.com/LibreHardwareMonitor/LibreHardwareMonitor/issues/152
New exit function

Fix: https://github.com/LibreHardwareMonitor/LibreHardwareMonitor/pull/138
No drive info exception when LHM is in a Virtual Machine

* Bugfix Update
2019-10-20 10:27:37 +02:00
Phyxion 73378f7c7b Code style #130 (#132)
This closes #99.
2019-09-23 19:29:10 +02:00