Sistema de paragem de entrar em 'modo de espera'
Pergunta
Como posso parar a máquina host entrar standby
modo, enquanto a aplicação estiver em execução?
Existe alguma win32 api
chamada para fazer isso?
Solução
Há duas APIs, dependendo de qual versão do Windows.
XP,2000, 2003:
http://msdn.microsoft.com/en-us/library/aa373247(VS.85).aspx
Responder a PBT_APMQUERYSUSPEND.
Vista, 2008:
http://msdn.microsoft.com/en-us/library/aa373208(VS.85).aspx
Poderia haver muitas razões válidas para impedir o computador de entrar em modo de suspensão.Por exemplo, assistir a um vídeo, a reprodução de música, a compilação de uma longa construir, fazer o download de grandes arquivos, etc.
Outras dicas
Este artigo http://www.codeguru.com/cpp/w-p/system/messagehandling/article.php/c6907 fornece uma demonstração de como fazer isso a partir de C++ (pensou que o artigo está estruturado como se pretende fazê-lo a partir de Java, e o Java fornece um wrapper).
O código atual em um arquivo zip em http://www.codeguru.com/dbfiles/get_file/standbydetectdemo_src.zip?id=6907&lbl=STANDBYDETECTDEMO_SRC_ZIP&ds=20040406 e a parte em C++ é em com/ha/common/windows/standbydetector.
Esperemos que ele vai dar a você o suficiente de uma direção para começar.