mirror of
https://github.com/yuanyuanxiang/SimpleRemoter.git
synced 2026-01-21 23:13:08 +08:00
Feature: Add a startup progress display to the program
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
|
||||
// 2015RemoteDlg.h : ͷ<EFBFBD>ļ<EFBFBD>
|
||||
|
||||
// 2015RemoteDlg.h : 头文件
|
||||
//
|
||||
|
||||
#pragma once
|
||||
@@ -8,9 +8,9 @@
|
||||
#include "IOCPServer.h"
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD>
|
||||
// 以下为特殊需求使用
|
||||
|
||||
// <EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˳<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ض<EFBFBD>ʱҲ<EFBFBD>˳<EFBFBD><EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD>
|
||||
// 是否在退出主控端时也退出客户端
|
||||
#define CLIENT_EXIT_WITH_SERVER 0
|
||||
|
||||
typedef struct DllInfo {
|
||||
@@ -40,7 +40,7 @@ struct _ClientValue {
|
||||
char Note[64];
|
||||
char Location[64];
|
||||
char Level;
|
||||
char Reserved[127]; // Ԥ<EFBFBD><EFBFBD>
|
||||
char Reserved[127]; // 预留
|
||||
_ClientValue()
|
||||
{
|
||||
memset(this, 0, sizeof(_ClientValue));
|
||||
@@ -87,21 +87,23 @@ typedef _ClientValue ClientValue;
|
||||
|
||||
typedef std::unordered_map<ClientKey, ClientValue> ComputerNoteMap;
|
||||
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD> unordered_map <EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
|
||||
// 保存 unordered_map 到文件
|
||||
void SaveToFile(const ComputerNoteMap& data, const std::string& filename);
|
||||
|
||||
// <EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>ȡ unordered_map <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// 从文件读取 unordered_map 数据
|
||||
void LoadFromFile(ComputerNoteMap& data, const std::string& filename);
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
|
||||
enum {
|
||||
PAYLOAD_DLL_X86 = 0, // 32λ DLL
|
||||
PAYLOAD_DLL_X64 = 1, // 64λ DLL
|
||||
PAYLOAD_DLL_X86 = 0, // 32位 DLL
|
||||
PAYLOAD_DLL_X64 = 1, // 64位 DLL
|
||||
PAYLOAD_MAXTYPE
|
||||
};
|
||||
|
||||
// CMy2015RemoteDlg <20>Ի<EFBFBD><D4BB><EFBFBD>
|
||||
class CSplashDlg; // 前向声明
|
||||
|
||||
// CMy2015RemoteDlg 对话框
|
||||
class CMy2015RemoteDlg : public CDialogEx
|
||||
{
|
||||
protected:
|
||||
@@ -141,21 +143,21 @@ protected:
|
||||
}
|
||||
LeaveCriticalSection(&m_cs);
|
||||
}
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// 构造
|
||||
public:
|
||||
CMy2015RemoteDlg(CWnd* pParent = NULL); // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>캯<EFBFBD><EFBFBD>
|
||||
CMy2015RemoteDlg(CWnd* pParent = NULL); // 标准构造函数
|
||||
~CMy2015RemoteDlg();
|
||||
// <EFBFBD>Ի<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// 对话框数据
|
||||
enum { IDD = IDD_MY2015REMOTE_DIALOG };
|
||||
protected:
|
||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV ֧<EFBFBD><EFBFBD>
|
||||
// ʵ<EFBFBD><EFBFBD>
|
||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
|
||||
// 实现
|
||||
protected:
|
||||
HICON m_hIcon;
|
||||
void* m_tinyDLL;
|
||||
std::string m_superPass;
|
||||
|
||||
// <EFBFBD><EFBFBD><EFBFBD>ɵ<EFBFBD><EFBFBD><EFBFBD>Ϣӳ<EFBFBD>亯<EFBFBD><EFBFBD>
|
||||
// 生成的消息映射函数
|
||||
virtual BOOL OnInitDialog();
|
||||
afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
|
||||
afx_msg void OnPaint();
|
||||
@@ -176,7 +178,7 @@ public:
|
||||
if (ok) {
|
||||
m_gridDlg->AddChild((CDialog*)Dlg);
|
||||
LONG style = ::GetWindowLong(Dlg->GetSafeHwnd(), GWL_STYLE);
|
||||
style &= ~(WS_CAPTION | WS_SIZEBOX); // ȥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С
|
||||
style &= ~(WS_CAPTION | WS_SIZEBOX); // 去掉标题栏和调整大小
|
||||
::SetWindowLong(Dlg->GetSafeHwnd(), GWL_STYLE, style);
|
||||
::SetWindowPos(Dlg->GetSafeHwnd(), nullptr, 0, 0, 0, 0,
|
||||
SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_FRAMECHANGED);
|
||||
@@ -190,8 +192,8 @@ public:
|
||||
|
||||
return 0;
|
||||
}
|
||||
VOID InitControl(); //<EFBFBD><EFBFBD>ʼ<EFBFBD>ؼ<EFBFBD>
|
||||
VOID TestOnline(); //<EFBFBD><EFBFBD><EFBFBD>Ժ<EFBFBD><EFBFBD><EFBFBD>
|
||||
VOID InitControl(); //初始控件
|
||||
VOID TestOnline(); //测试函数
|
||||
VOID AddList(CString strIP, CString strAddr, CString strPCName, CString strOS, CString strCPU, CString strVideo, CString strPing,
|
||||
CString ver, CString startTime, const std::vector<std::string>& v, CONTEXT_OBJECT* ContextObject);
|
||||
VOID ShowMessage(CString strType, CString strMsg);
|
||||
@@ -212,7 +214,7 @@ public:
|
||||
VOID MessageHandle(CONTEXT_OBJECT* ContextObject);
|
||||
VOID SendSelectedCommand(PBYTE szBuffer, ULONG ulLength);
|
||||
VOID SendAllCommand(PBYTE szBuffer, ULONG ulLength);
|
||||
// <EFBFBD><EFBFBD>ʾ<EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
||||
// 显示用户上线信息
|
||||
CWnd* m_pFloatingTip = nullptr;
|
||||
CListCtrl m_CList_Online;
|
||||
CListCtrl m_CList_Message;
|
||||
@@ -222,7 +224,7 @@ public:
|
||||
void LoadListData(const std::string& group);
|
||||
void DeletePopupWindow();
|
||||
|
||||
CStatusBar m_StatusBar; //״̬<EFBFBD><EFBFBD>
|
||||
CStatusBar m_StatusBar; //状态条
|
||||
CTrueColorToolBar m_ToolBar;
|
||||
CGridDialog * m_gridDlg = NULL;
|
||||
std::vector<DllInfo*> m_DllList;
|
||||
@@ -238,7 +240,7 @@ public:
|
||||
std::map<HWND, CDialogBase *> m_RemoteWnds;
|
||||
CDialogBase* GetRemoteWindow(HWND hWnd);
|
||||
void RemoveRemoteWindow(HWND wnd);
|
||||
CDialogBase* m_pActiveSession = nullptr; // <EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Ự<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD> / NULL <EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>
|
||||
CDialogBase* m_pActiveSession = nullptr; // 当前活动会话窗口指针 / NULL 表示无
|
||||
afx_msg LRESULT OnSessionActivatedMsg(WPARAM wParam, LPARAM lParam);
|
||||
static LRESULT CALLBACK LowLevelKeyboardProc(int nCode, WPARAM wParam, LPARAM lParam);
|
||||
HHOOK g_hKeyboardHook = NULL;
|
||||
|
||||
Reference in New Issue
Block a user