Датчик устройств (темпиратура/обороты кулера/etc)

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

Joo
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 762
Зарегистрирован: 14.08.2008 (Чт) 11:55
Откуда: Казахстан

Датчик устройств (темпиратура/обороты кулера/etc)

Сообщение Joo » 17.06.2009 (Ср) 6:09

Привет! Лучшего места для темы не нашел.

Тут недавно встала задача, написать программу для мониторинга температуры процессора и системной платы, гугл велел смотреть на WMI. Я был несказанно удивлен, таким простым решением, но стоило мне запустить на исполнение код с WMI, как эйфория сразу прошла. Не работает. Копнув гуглом поглубже, на предмет WMI, я понял, что не работает не только у меня, и более "универсально" будет написать драйвер для получения данных с датчиков. Справедливости ради хочу заметить, что написать универсальный драйвер это не тривиальная задача, нужно учитывать особенности материнских плат разных производителей, так-так снимаются данные с датчиков у них по-разному.

И так, решения у меня три:
1. Написать свой собственный драйвер;
2. Попробовать найти драйвер стороннего разработчика, и документацию к нему;
3. Позаимствовать драйвер у существующей программы, а саму программу изучить под отладчиком.
Я выбрал третий вариант, т.к. первый довольно сложен, и у меня нет возможности тестировать его на разном железе, по второму я не чего не нашел.
Третий способ: за основу взята программа Everest Ultimate и её драйвер kerneld.wnt и статья http://www.xakep.ru/magazine/xa/104/070/1.asp

Теперь собственно вопрос:
Как будет правильно в .NET загрузить/выгрузить драйвер, создать/уничтожить на него символьную ссылку и собственно организация механизма общения с ним. Или не чего уникальнго, просто API?

p.s. Если есть желающие присоединяйтесь.
"Им будет не просто, тем кто полагается на истину авторитета, вместо того чтобы полагаться на авторитет Истины"
Джеральд Месси, Египтолог

Williams
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1280
Зарегистрирован: 06.05.2008 (Вт) 18:35
Откуда: System.Reflection.Williams (увидел себя в зеркале :))

Re: Датчик устройств (темпиратура/обороты кулера/etc)

Сообщение Williams » 17.06.2009 (Ср) 21:53

про загрузку драйвера тут почитай:

http://bytes.com/groups/net-c/254268-c- ... ice-driver
И вы думаете, что вас оставят в живых после прочтения этого поста?

Joo
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 762
Зарегистрирован: 14.08.2008 (Чт) 11:55
Откуда: Казахстан

Re: Датчик устройств (темпиратура/обороты кулера/etc)

Сообщение Joo » 18.06.2009 (Чт) 7:22

Williams писал(а):про загрузку драйвера тут почитай:

http://bytes.com/groups/net-c/254268-c- ... ice-driver


Спасибо!
Теперь нужно до конца разобраться с драйвером ;) Вчера скачал последнюю версию Everest, и начал потихоньку разбираться как с помощю него получать нужные данные.
"Им будет не просто, тем кто полагается на истину авторитета, вместо того чтобы полагаться на авторитет Истины"
Джеральд Месси, Египтолог

773FF
Обычный пользователь
Обычный пользователь
 
Сообщения: 86
Зарегистрирован: 07.02.2008 (Чт) 10:51

Re: Датчик устройств (темпиратура/обороты кулера/etc)

Сообщение 773FF » 18.06.2009 (Чт) 21:40

Не совсем понял, а зачем использовать драйвер, если в справочном пособии Everest-а описано как организовать связь с внешним приложением: "
The Hardware Monitoring <sensoricons.htm> feature of Lavalys EVEREST Ultimate Edition provides the following 3 methods to expose measured sensor values and other system values to external applications:
Shared Memory
Registry
WMI
A complete list of sensor value IDs and their meaning is below
".
С драйвером можно обойтись без запуска Everesta, но юристы Lavalys Inc. съедят ваше приложение на завтрак, как только оно (приложение) станет популярным.

Joo
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 762
Зарегистрирован: 14.08.2008 (Чт) 11:55
Откуда: Казахстан

Re: Датчик устройств (темпиратура/обороты кулера/etc)

Сообщение Joo » 19.06.2009 (Пт) 4:51

773FF писал(а):Не совсем понял, а зачем использовать драйвер, если в справочном пособии Everest-а описано как организовать связь с внешним приложением: "
The Hardware Monitoring <sensoricons.htm> feature of Lavalys EVEREST Ultimate Edition provides the following 3 methods to expose measured sensor values and other system values to external applications:
Shared Memory
Registry
WMI
A complete list of sensor value IDs and their meaning is below
".
С драйвером можно обойтись без запуска Everesta, но юристы Lavalys Inc. съедят ваше приложение на завтрак, как только оно (приложение) станет популярным.

Драйвер использовать, чтобы не ставить Everest, а взять только его драйвер и работать с ним напрямую.

Да мне как-то на юристов чхать, так-как приложение не будет распростроняться, и будет использовано только в личных целях.
К стати Everest не на всех компьютерах может определять темпиратуру, сегодня столкнулся с этим, пришел на работу думал продолжу ковыряться, установил, запустил а фиг вам, нет данных.
"Им будет не просто, тем кто полагается на истину авторитета, вместо того чтобы полагаться на авторитет Истины"
Джеральд Месси, Египтолог


Вернуться в Visual Basic .NET

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 56

    TopList