2009-04-25 11 views
8

¿Cómo puedo hacer esto en un programa C#? Estoy bastante seguro de que debería ser posible, ya que varios programas de medios, por ejemplo, hacen esto para que la computadora no entre en espera mientras se ve una película, etc.C#: Cómo evitar que una computadora portátil entre en Stand-By

Así que si, por ejemplo, creo un plano y aplicación básica de WinForm, ¿qué debo hacer para evitar que una computadora portátil entre en Stand-By mientras esta aplicación se esté ejecutando?

Respuesta

11

Creo que tendrá que P/invocar. Pero no tengas miedo ... es bastante fácil.

SetThreadExecutionState es tu amigo. It's available en el PInvoke project, también disponible en NuGet.

+0

¡Parece perfecto! No puedo probarlo hasta esta noche o mañana, pero se ve bien :) – Svish

+0

¿Debo restablecer el estado cuando se cierra mi aplicación? O bien, dado que es un tema por aplicación/subproceso, ¿volverá a la normalidad automáticamente? – Svish

+0

A menos que la documentación indique que debe volver manualmente, yo diría que probablemente no tenga que volver a configurarla si quiere que dure la vida de su aplicación. –

Cuestiones relacionadas