6

Ich verwende Windows 8.1, Visual Studio 2013 und ich habe ein C++ - Projekt, das über 15 Minuten läuft. Aber das Problem ist, dass das Fenster in den Schlaf geht, während mein Debuggen noch läuft.Windows schläft während der Ausführung eines langen C++ Visual Studio-Programms

Ich weiß, dass dies auftritt, weil die Wartezeit Wartezeit während der Ausführung des Programms (Debugging) überschritten wird, und ich kann dies entweder durch Erhöhung der Schlafwartezeit oder setzen Sie die Einstellungen auf "nie" in der Windows-Systemsteuerung Energieeinstellungen.

Aber ich möchte eine programmatische oder Visual Studio-basierte Lösung dafür. Ich möchte, dass mein Computer während der Ausführung (Debugging) eines Programms nicht schläft.

+0

Anruf SetThreadExecutionState (periodisch). – user1

+0

http://www.codeguru.com/columns/vb/preventing-your-monitor-from-going-to-sleep-with-visual-studio-2012.htm – user1

+0

Aber ich bin nur neugierig, warum nicht Sie ändern einfach die Systemeinstellungen und verhindern den Schlaf? – user1

Antwort

2

Am Programm Einspeisepunkt die Einstellungen ändern, wiederherstellen Einstellungen am Ende, wenn Debug-Sitzung beendet.

dieses Beispiel nehmen ....

#include <cstdlib> 
//include windows.h 

using namespace std; 

void KeepMonitorActive() { 
    // Enable away mode and prevent the sleep idle time-out. 
    SetThreadExecutionState(ES_CONTINUOUS | ES_SYSTEM_REQUIRED | ES_AWAYMODE_REQUIRED); 
} 

void RestoreMonitorSettings() { 
    // Clear EXECUTION_STATE flags to disable away mode and allow the system to idle to sleep normally. 
    SetThreadExecutionState(ES_CONTINUOUS); 
} 

int main() 
{ 
    //Add these 2 lines at the entry point in your program 
    KeepMonitorActive(); 
    atexit(RestoreMonitorSettings); 

    //... 
} 
+0

Danke. Ich werde antworten mit den Ergebnissen ... –

+1

Dies ist C++ 11 Lösung, aber Sie hätten kein Problem mit diesem Beispiel, da Sie bereits VS 2013 verwenden. VS 2013 unterstützt Std :: Thread – user1

+0

http: // Coliru. stacked-crooked.com/a/082496f91f112c2d – user1

Verwandte Themen