Не удается заставить OpenHardwareMonitorLib.dll работать

Я нашел очень мало примеров того, как заставить ОМ работать в C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using OpenHardwareMonitor.Hardware;

namespace OpenHardwareMonitorReport
{

    class Program
    {

        static void Main(string[] args)
        {
            Computer computer = new Computer();
            computer.Open();

            var temps = new List<decimal>();
            foreach (var hardware in computer.Hardware)
            {
                if (hardware.HardwareType != HardwareType.CPU)
                    continue;
                hardware.Update();
                foreach (var sensor in hardware.Sensors)
                {
                    if (sensor.SensorType != SensorType.Temperature)
                    {
                        if (sensor.Value != null)
                            temps.Add((decimal)sensor.Value);
                    }
                }
            }

            foreach (decimal temp in temps)
            {
                Console.WriteLine(temp);
            }
            Console.ReadLine();
        }
    }
}

Это должно отобразить некоторые данные датчика, но когда я запускаю, это дает мне эту ошибку:

Помощник по управляемой отладке "PInvokeStackImbalance" обнаружил проблему в "C:\Users\Josh\Desktop\DLLTutorial\HardwareMonitor\HardwareMonitor\bin\Debug\HardwareMonitor.vshost.exe". Дополнительная информация: вызов функции PInvoke 'PInvokeDelegateFactoryInternalAssembly!PInvokeDelegateFactoryInternalWrapperType13::ADL_Main_Control_Create' разбалансирует стек. Вероятно, это связано с тем, что управляемая подпись PInvoke не совпадает с неуправляемой целевой подписью. Убедитесь, что соглашение о вызовах и параметры подписи PInvoke соответствуют целевой неуправляемой подписи.

Я скачал.dll из OHM svn, поместил его в свой проект, добавил ссылку на него, и он вылетает в строке "computer.Open();" с этой ошибкой я выложил выше.

Пожалуйста помоги!

1 ответ

Решение

Видимо это проблема с моей настройкой. Это не терпит неудачу в других системах... Не ненавидите это, когда это происходит.

Другие вопросы по тегам