Files
SimpleRemoter/server/2015Remote/ScreenSpyDlg.h
2019-01-20 20:04:11 +08:00

80 lines
2.0 KiB
C++

#pragma once
#include "IOCPServer.h"
#include "..\..\client\CursorInfo.h"
// CScreenSpyDlg 对话框
class CScreenSpyDlg : public CDialog
{
DECLARE_DYNAMIC(CScreenSpyDlg)
public:
CScreenSpyDlg(CWnd* Parent, IOCPServer* IOCPServer=NULL, CONTEXT_OBJECT *ContextObject=NULL);
virtual ~CScreenSpyDlg();
CONTEXT_OBJECT* m_ContextObject;
IOCPServer* m_iocpServer;
VOID SendNext(void);
VOID OnReceiveComplete();
HDC m_hFullDC;
HDC m_hFullMemDC;
HBITMAP m_BitmapHandle;
PVOID m_BitmapData_Full;
LPBITMAPINFO m_BitmapInfor_Full;
VOID DrawFirstScreen(void);
VOID DrawNextScreenDiff(void);
BOOL m_bIsFirst;
ULONG m_ulHScrollPos;
ULONG m_ulVScrollPos;
VOID DrawTipString(CString strString);
HICON m_hIcon;
HICON m_hCursor;
POINT m_ClientCursorPos;
BYTE m_bCursorIndex;
CString m_strClientIP;
BOOL m_bIsTraceCursor;
CCursorInfo m_CursorInfo; //自定义的一个系统的光标类
VOID SendCommand(MSG* Msg);
VOID UpdateServerClipboard(char *szBuffer,ULONG ulLength);
VOID SendServerClipboard(void);
BOOL m_bIsCtrl;
LPBYTE m_szData;
BOOL m_bSend;
ULONG m_ulMsgCount;
BOOL SaveSnapshot(void);
// 对话框数据
enum { IDD = IDD_DIALOG_SCREEN_SPY };
BOOL m_bFullScreen;
WINDOWPLACEMENT m_struOldWndpl;
void EnterFullScreen();
bool LeaveFullScreen();
afx_msg void OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
afx_msg void OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
afx_msg BOOL OnMouseWheel(UINT nFlags, short zDelta, CPoint pt);
afx_msg void OnMouseMove(UINT nFlags, CPoint point);
afx_msg void OnKillFocus(CWnd* pNewWnd);
afx_msg void OnSize(UINT nType, int cx, int cy);
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
DECLARE_MESSAGE_MAP()
public:
virtual BOOL OnInitDialog();
afx_msg void OnClose();
afx_msg void OnPaint();
afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
virtual BOOL PreTranslateMessage(MSG* pMsg);
};