Antes de nada quiero decir que no se apenas C# y encontré este codigo para detectar si el usuario está IDLE (inactivo)
[DllImport("user32.dll")]
static extern bool GetLastInputInfo(ref LASTINPUTINFO plii);
static uint GetLastInputTime()
{
uint idleTime = 0;
LASTINPUTINFO lastInputInfo = new LASTINPUTINFO();
lastInputInfo.cbSize = (uint)Marshal.SizeOf( lastInputInfo );
lastInputInfo.dwTime = 0;
uint envTicks = (uint)Environment.TickCount;
if ( GetLastInputInfo( ref lastInputInfo ) )
{
uint lastInputTick = lastInputInfo.dwTime;
idleTime = envTicks - lastInputTick;
}
return (( idleTime > 0 ) ? ( idleTime / 1000 ) : 0);
}
Ahora lo que quiero hacer con el es lo siguiente:
string CPU = " estar activado "";
Interaction.Shell(_ExePath + CPU, AppWinStyle.Hide, true);
}
//
ESTO NECESITO BASICAMENTE
Idle=YES
string CPU = " params nuevos "";
Idle=NO
Cerrar y ejecutar el primero(parametros antiguos) string CPU = " params "";