2012-02-21 15 views
19

Chcę uzyskać dostęp do wbudowanego kontrolera mojego laptopa (Windows), aby kontrolować prędkość wentylatora. Obecnie robię to ręcznie przy użyciu RW Everything - w jaki sposób mogę uzyskać dostęp do wbudowanego kontrolera, np. używając C? Dzięki za podpowiedź!Programowalny dostęp do wbudowanego kontrolera wentylatora laptopa?

Uwaga: Jestem świadomy, że RW Wszystko może być używany z linii poleceń, ale nazywając go co drugi czytać jakiś rejestr jest nie tak ładne ...

+5

Sprawdź http://stackoverflow.com/q/485448/1098754 - wydaje się dobrym punktem wyjścia. –

+4

dzięki David. smutne, jest tak skomplikowane w oknach. na Linuksie to naprawdę proste, zgaduję, że powinienem zainstalować Linuksa na moim laptopie: D –

+1

możliwy duplikat [Jak mogę kontrolować prędkość mojego komputera przy użyciu C++ w Vista?] (http://stackoverflow.com/questions/786984/how- can-i-control-my-pcs-fan-speed-using-c-in-Vista) – Clifford

Odpowiedz

1

Jeśli używasz RWEverything po prostu zmiana bity w adresach pamięci fizycznej, zawsze można odwzorować pamięć fizyczną, aby przetwarzać lokalną pamięć za pomocą MmMapIoSpace lub dowolnej innej funkcji api okna, która zapewnia dostęp RW do pamięci fizycznej. Po mapowaniu sekcji przestrzeni, do której potrzebujesz dostępu, możesz bezpośrednio ją adresować i zmieniać.

Użyłem tej metody tylko do zapisu na porcie równoległym w oknach, ale użyłem podobnych rozwiązań dla innych projektów w Linuksie.

Powiązane problemy