2012-05-18 68 views
7

Sé que esto se ha pedido antes, pero parece que no puedo hacer que funcione. que he llamado el siguiente:Establecer la velocidad del ventilador en C#

using System.Management; 
using System.Management.Instrumentation; 
using System.Runtime.InteropServices; 

Y he intentado esto (sé que es patético, pero es el mejor que he encontrado):

[DllImport("Cimwin32.dll")] 
     private void button1_Click(object sender, EventArgs e) 
     { 
      uint32 SetSpeed(//??? 
       [in] uint64 300 
      ); 
     } 

¿Cómo puedo configurar la velocidad del ventilador de la computadora a través de C# ?

+1

¿Qué ventilador que desea establecer? La mayoría de las computadoras tienen muchos de ellos. ¿Y por qué quieres hacer esto? ¿No sería mucho más fácil usar una utilidad como SpeedFan? –

+0

@DavidHeffernan, buenos puntos, y no sabía que SpeedFan Utility siquiera existía. – funerr

+0

posible duplicación de [velocidad de VENTILADOR de control C#] (http://stackoverflow.com/questions/9391181/c-sharp-control-fan-speed) –

Respuesta

2

no debe su PInvoke ser algo así:

[DllImport("Cimwin32.dll")] 
static extern uint32 SetSpeed(in uint64 sp); 

private void button1_Click(object sender, EventArgs e) 
{ 
      SetSpeed(300); 
} 

También aquí es un método C++ para hacerlo. Se puede poner que en un DLL y llamarlo desde su código C#

How can I control my PC's fan speed using C++ in Vista?

+0

Esa es una declaración de identificación válida válida. Pero esa función no existe en lo que puedo decir. ¿Me equivoco? –

+1

Aparece un error en la sección unit64, dice que no puede encontrar una definición para él. – funerr

Cuestiones relacionadas