hcabelandPhyxionNL 499ac0e214 #1393 Scale up Sensor column on resize & Log file rotation method (#1397)
* Add CSV file rotation method

Add a new option to choose how the csv file is being rotated.
Before it was everyday, which meant that we had to make sure the csv file was deleted before recording a new session.
Now by default it's set to "Per session" meaning anytime you start a new session it create a new CSV file.
Unless the daily method is used, in this case it will behave like before (1 file per day)

* Scale up the first TreeView column ("Sensor") on resize

The first ("Sensor") column being the most important and most likely the one that need the more space as hardware names can be pretty long.
I've changed so that the first column is the one scaling up when the tree view is being resized (instead of the last one)

* Change treeview column resize behaviour

I've made so that the separator a controlling the size of the column to the left instead of the right.
This make a lot easier to scale up the last column, but worth for the first one.
Thought the previous commit made it so that the first column size is resize by the total with of the tree view.
Sounds weird like that, but feel much more natural than before, and there is no overflow anymore.

* Fix typo in daily file rotation menu item tool tip

Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>

* Fix requested changes

---------

Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
2024-08-06 13:42:58 +02:00
2024-03-01 22:49:39 +01:00
2021-06-21 18:48:37 +02:00
2021-06-21 18:48:37 +02:00
2019-09-23 19:29:10 +02:00
2022-11-18 18:56:10 +01:00
2022-05-13 15:33:21 +02:00
2023-12-31 13:50:39 +01:00
2021-01-23 12:06:06 +01:00

LibreHardwareMonitor

GitHub license Nuget Nuget (with prereleases) Nuget

Libre Hardware Monitor, a fork of Open Hardware Monitor, is free software that can monitor the temperature sensors, fan speeds, voltages, load and clock speeds of your computer.

What's included?

Name .NET Build Status
LibreHardwareMonitor
Windows Forms based application that presents all data in a graphical interface
.NET Framework 4.7.2 Build status
LibreHardwareMonitorLib
Library that allows you to use all features in your own application
.NET Framework 4.7.2, .NET 6.0, and .NET 7.0 Build status

What can it do?

You can read information from devices such as:

  • Motherboards
  • Intel and AMD processors
  • NVIDIA and AMD graphics cards
  • HDD, SSD and NVMe hard drives
  • Network cards

Where can I download it?

You can download the latest release here.

Nightly builds

If you have a GitHub account, you can download nightly builds here. Otherwise, you can download the latest nightly build here.

How can I help improve it?

The LibreHardwareMonitor team welcomes feedback and contributions!
You can check if it works properly on your motherboard. For many manufacturers, the way of reading data differs a bit, so if you notice any inaccuracies, please send us a pull request. If you have any suggestions or improvements, don't hesitate to create an issue.

Developer information

Integrate the library in own application

  1. Add the LibreHardwareMonitorLib NuGet package to your application.
  2. Use the sample code below.

Sample code

public class UpdateVisitor : IVisitor
{
    public void VisitComputer(IComputer computer)
    {
        computer.Traverse(this);
    }
    public void VisitHardware(IHardware hardware)
    {
        hardware.Update();
        foreach (IHardware subHardware in hardware.SubHardware) subHardware.Accept(this);
    }
    public void VisitSensor(ISensor sensor) { }
    public void VisitParameter(IParameter parameter) { }
}

public void Monitor()
{
    Computer computer = new Computer
    {
        IsCpuEnabled = true,
        IsGpuEnabled = true,
        IsMemoryEnabled = true,
        IsMotherboardEnabled = true,
        IsControllerEnabled = true,
        IsNetworkEnabled = true,
        IsStorageEnabled = true
    };

    computer.Open();
    computer.Accept(new UpdateVisitor());

    foreach (IHardware hardware in computer.Hardware)
    {
        Console.WriteLine("Hardware: {0}", hardware.Name);
        
        foreach (IHardware subhardware in hardware.SubHardware)
        {
            Console.WriteLine("\tSubhardware: {0}", subhardware.Name);
            
            foreach (ISensor sensor in subhardware.Sensors)
            {
                Console.WriteLine("\t\tSensor: {0}, value: {1}", sensor.Name, sensor.Value);
            }
        }

        foreach (ISensor sensor in hardware.Sensors)
        {
            Console.WriteLine("\tSensor: {0}, value: {1}", sensor.Name, sensor.Value);
        }
    }
    
    computer.Close();
}

Administrator rights

Some sensors require administrator privileges to access the data. Restart your IDE with admin privileges, or add an app.manifest file to your project with requestedExecutionLevel on requireAdministrator.

License

LibreHardwareMonitor is free and open source software licensed under MPL 2.0. You can use it in private and commercial projects. Keep in mind that you must include a copy of the license in your project.

S
Description
ReLibreHardwareMonitor, home of the fork of LibreHardwareMonitor
Readme MPL-2.0
14 MiB
v0.1.0
Latest
2026-06-12 17:05:48 +00:00
Languages
C# 97.6%
JavaScript 2.2%
HTML 0.1%