Improve: Reduce master program redundant code
This commit is contained in:
@@ -107,6 +107,12 @@ BOOL CMy2015RemoteApp::InitInstance()
|
||||
|
||||
SetUnhandledExceptionFilter(&whenbuged);
|
||||
|
||||
SHFILEINFO sfi = {};
|
||||
HIMAGELIST hImageList = (HIMAGELIST)SHGetFileInfo((LPCTSTR)_T(""), 0, &sfi, sizeof(SHFILEINFO), SHGFI_LARGEICON | SHGFI_SYSICONINDEX);
|
||||
m_pImageList_Large.Attach(hImageList);
|
||||
hImageList = (HIMAGELIST)SHGetFileInfo((LPCTSTR)_T(""), 0, &sfi, sizeof(SHFILEINFO), SHGFI_SMALLICON | SHGFI_SYSICONINDEX);
|
||||
m_pImageList_Small.Attach(hImageList);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Windows XP <20>ϵ<EFBFBD>Ӧ<EFBFBD>ó<EFBFBD><C3B3><EFBFBD><EFBFBD>嵥ָ<E5B5A5><D6B8>Ҫ
|
||||
// ʹ<><CAB9> ComCtl32.dll <20>汾 6 <20><><EFBFBD><EFBFBD><EFBFBD>߰汾<DFB0><E6B1BE><EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD><C3BF>ӻ<EFBFBD><D3BB><EFBFBD>ʽ<EFBFBD><CABD>
|
||||
//<2F><><EFBFBD><EFBFBD>Ҫ InitCommonControlsEx()<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><F2A3ACBD><EFBFBD><DEB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڡ<EFBFBD>
|
||||
|
||||
@@ -23,6 +23,10 @@ public:
|
||||
config *m_iniFile;
|
||||
HANDLE m_Mutex;
|
||||
IOCPServer* m_iocpServer;
|
||||
|
||||
CImageList m_pImageList_Large; //ϵͳ<CFB5><CDB3>ͼ<EFBFBD><CDBC>
|
||||
CImageList m_pImageList_Small; //ϵͳСͼ<D0A1><CDBC>
|
||||
|
||||
// <20><>д
|
||||
public:
|
||||
virtual BOOL InitInstance();
|
||||
|
||||
Binary file not shown.
@@ -1644,93 +1644,10 @@ VOID CALLBACK CMy2015RemoteDlg::NotifyProc(CONTEXT_OBJECT* ContextObject)
|
||||
|
||||
AUTO_TICK(50);
|
||||
|
||||
switch (ContextObject->v1)
|
||||
{
|
||||
case VIDEO_DLG:
|
||||
{
|
||||
CVideoDlg* Dlg = (CVideoDlg*)ContextObject->hDlg;
|
||||
if (ContextObject->v1) {
|
||||
DialogBase* Dlg = (DialogBase*)ContextObject->hDlg;
|
||||
Dlg->OnReceiveComplete();
|
||||
break;
|
||||
}
|
||||
case SERVICES_DLG:
|
||||
{
|
||||
CServicesDlg* Dlg = (CServicesDlg*)ContextObject->hDlg;
|
||||
Dlg->OnReceiveComplete();
|
||||
break;
|
||||
}
|
||||
case AUDIO_DLG:
|
||||
{
|
||||
CAudioDlg* Dlg = (CAudioDlg*)ContextObject->hDlg;
|
||||
Dlg->OnReceiveComplete();
|
||||
break;
|
||||
}
|
||||
case SYSTEM_DLG:
|
||||
{
|
||||
CSystemDlg* Dlg = (CSystemDlg*)ContextObject->hDlg;
|
||||
Dlg->OnReceiveComplete();
|
||||
break;
|
||||
}
|
||||
case SHELL_DLG:
|
||||
{
|
||||
CShellDlg* Dlg = (CShellDlg*)ContextObject->hDlg;
|
||||
Dlg->OnReceiveComplete();
|
||||
break;
|
||||
}
|
||||
case SCREENSPY_DLG:
|
||||
{
|
||||
CScreenSpyDlg* Dlg = (CScreenSpyDlg*)ContextObject->hDlg;
|
||||
Dlg->OnReceiveComplete();
|
||||
break;
|
||||
}
|
||||
case FILEMANAGER_DLG:
|
||||
{
|
||||
CFileManagerDlg* Dlg = (CFileManagerDlg*)ContextObject->hDlg;
|
||||
Dlg->OnReceiveComplete();
|
||||
break;
|
||||
}
|
||||
case REGISTER_DLG:
|
||||
{
|
||||
CRegisterDlg* Dlg = (CRegisterDlg*)ContextObject->hDlg;
|
||||
Dlg->OnReceiveComplete();
|
||||
break;
|
||||
}
|
||||
case KEYBOARD_DLG:
|
||||
{
|
||||
CKeyBoardDlg* Dlg = (CKeyBoardDlg*)ContextObject->hDlg;
|
||||
Dlg->OnReceiveComplete();
|
||||
break;
|
||||
}
|
||||
case PROXY_DLG: {
|
||||
CProxyMapDlg* Dlg = (CProxyMapDlg*)ContextObject->hDlg;
|
||||
Dlg->OnReceiveComplete();
|
||||
break;
|
||||
}
|
||||
case HIDESCREEN_DLG: {
|
||||
CHideScreenSpyDlg* Dlg = (CHideScreenSpyDlg*)ContextObject->hDlg;
|
||||
Dlg->OnReceiveComplete();
|
||||
break;
|
||||
}
|
||||
case MACHINE_DLG: {
|
||||
CMachineDlg* Dlg = (CMachineDlg*)ContextObject->hDlg;
|
||||
Dlg->OnReceiveComplete();
|
||||
break;
|
||||
}
|
||||
case CHAT_DLG: {
|
||||
CChat* Dlg = (CChat*)ContextObject->hDlg;
|
||||
Dlg->OnReceiveComplete();
|
||||
break;
|
||||
}
|
||||
case DECRYPT_DLG: {
|
||||
DecryptDlg* Dlg = (DecryptDlg*)ContextObject->hDlg;
|
||||
Dlg->OnReceiveComplete();
|
||||
break;
|
||||
}
|
||||
case FILEMGR_DLG: {
|
||||
file::CFileManagerDlg* Dlg = (file::CFileManagerDlg*)ContextObject->hDlg;
|
||||
Dlg->OnReceiveComplete();
|
||||
break;
|
||||
}
|
||||
default: {
|
||||
} else {
|
||||
HANDLE hEvent = CreateEvent(NULL, TRUE, FALSE, NULL);
|
||||
if (hEvent == NULL) {
|
||||
Mprintf("===> NotifyProc CreateEvent FAILED: %p <===\n", ContextObject);
|
||||
@@ -1744,7 +1661,6 @@ VOID CALLBACK CMy2015RemoteDlg::NotifyProc(CONTEXT_OBJECT* ContextObject)
|
||||
HANDLE handles[2] = { hEvent, g_2015RemoteDlg->m_hExit };
|
||||
DWORD result = WaitForMultipleObjects(2, handles, FALSE, INFINITE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 对话框句柄及对话框类型
|
||||
@@ -2052,99 +1968,9 @@ LRESULT CMy2015RemoteDlg::OnUserOfflineMsg(WPARAM wParam, LPARAM lParam)
|
||||
dlgInfo *p = (dlgInfo *)wParam;
|
||||
if (p)
|
||||
{
|
||||
switch(p->v1)
|
||||
{
|
||||
case TALK_DLG:
|
||||
{
|
||||
CTalkDlg *Dlg = (CTalkDlg*)p->hDlg;
|
||||
delete Dlg;
|
||||
break;
|
||||
}
|
||||
case VIDEO_DLG:
|
||||
{
|
||||
CVideoDlg *Dlg = (CVideoDlg*)p->hDlg;
|
||||
delete Dlg;
|
||||
break;
|
||||
}
|
||||
case SERVICES_DLG:
|
||||
{
|
||||
CServicesDlg *Dlg = (CServicesDlg*)p->hDlg;
|
||||
delete Dlg;
|
||||
break;
|
||||
}
|
||||
case AUDIO_DLG:
|
||||
{
|
||||
CAudioDlg *Dlg = (CAudioDlg*)p->hDlg;
|
||||
delete Dlg;
|
||||
break;
|
||||
}
|
||||
case SYSTEM_DLG:
|
||||
{
|
||||
CSystemDlg *Dlg = (CSystemDlg*)p->hDlg;
|
||||
delete Dlg;
|
||||
break;
|
||||
}
|
||||
case SHELL_DLG:
|
||||
{
|
||||
CShellDlg *Dlg = (CShellDlg*)p->hDlg;
|
||||
delete Dlg;
|
||||
break;
|
||||
}
|
||||
case SCREENSPY_DLG:
|
||||
{
|
||||
CScreenSpyDlg *Dlg = (CScreenSpyDlg*)p->hDlg;
|
||||
delete Dlg;
|
||||
break;
|
||||
}
|
||||
case FILEMANAGER_DLG:
|
||||
{
|
||||
CFileManagerDlg *Dlg = (CFileManagerDlg*)p->hDlg;
|
||||
delete Dlg;
|
||||
break;
|
||||
}
|
||||
case REGISTER_DLG:
|
||||
{
|
||||
CRegisterDlg *Dlg = (CRegisterDlg*)p->hDlg;
|
||||
delete Dlg; //特殊处理
|
||||
break;
|
||||
}
|
||||
case KEYBOARD_DLG:
|
||||
{
|
||||
CKeyBoardDlg* Dlg = (CKeyBoardDlg*)p->hDlg;
|
||||
delete Dlg;
|
||||
break;
|
||||
}
|
||||
case HIDESCREEN_DLG:
|
||||
{
|
||||
CHideScreenSpyDlg* Dlg = (CHideScreenSpyDlg*)p->hDlg;
|
||||
delete Dlg;
|
||||
break;
|
||||
}
|
||||
case MACHINE_DLG:
|
||||
{
|
||||
CMachineDlg* Dlg = (CMachineDlg*)p->hDlg;
|
||||
delete Dlg;
|
||||
break;
|
||||
}
|
||||
case CHAT_DLG:
|
||||
{
|
||||
CChat* Dlg = (CChat*)p->hDlg;
|
||||
delete Dlg;
|
||||
break;
|
||||
}
|
||||
case DECRYPT_DLG:
|
||||
{
|
||||
DecryptDlg* Dlg = (DecryptDlg*)p->hDlg;
|
||||
delete Dlg;
|
||||
break;
|
||||
}
|
||||
case FILEMGR_DLG:
|
||||
{
|
||||
file::CFileManagerDlg* Dlg = (file::CFileManagerDlg*)p->hDlg;
|
||||
if (p->v1) {
|
||||
CDialogBase* Dlg = (CDialogBase*)p->hDlg;
|
||||
::PostMessageA(Dlg->GetSafeHwnd(), WM_CLOSE, 0, 0);
|
||||
break;
|
||||
}
|
||||
default:break;
|
||||
}
|
||||
delete p;
|
||||
p = NULL;
|
||||
@@ -2220,267 +2046,83 @@ VOID CMy2015RemoteDlg::SendServerDll(CONTEXT_OBJECT* ContextObject, bool isDLL,
|
||||
|
||||
LRESULT CMy2015RemoteDlg::OnOpenScreenSpyDialog(WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
CONTEXT_OBJECT *ContextObject = (CONTEXT_OBJECT*)lParam;
|
||||
|
||||
CScreenSpyDlg *Dlg = new CScreenSpyDlg(this,m_iocpServer, ContextObject); //Send s
|
||||
// 设置父窗口为卓面
|
||||
Dlg->Create(IDD_DIALOG_SCREEN_SPY, GetDesktopWindow());
|
||||
Dlg->ShowWindow(SW_SHOWMAXIMIZED);
|
||||
|
||||
ContextObject->v1 = SCREENSPY_DLG;
|
||||
ContextObject->hDlg = Dlg;
|
||||
|
||||
return 0;
|
||||
return OpenDialog<CScreenSpyDlg, IDD_DIALOG_SCREEN_SPY, SW_SHOWMAXIMIZED>(wParam, lParam);
|
||||
}
|
||||
|
||||
LRESULT CMy2015RemoteDlg::OnOpenFileManagerDialog(WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
CONTEXT_OBJECT *ContextObject = (CONTEXT_OBJECT*)lParam;
|
||||
|
||||
//转到CFileManagerDlg 构造函数
|
||||
CFileManagerDlg *Dlg = new CFileManagerDlg(this,m_iocpServer, ContextObject);
|
||||
// 设置父窗口为卓面
|
||||
Dlg->Create(IDD_FILE, GetDesktopWindow()); //创建非阻塞的Dlg
|
||||
Dlg->ShowWindow(SW_SHOW);
|
||||
|
||||
ContextObject->v1 = FILEMANAGER_DLG;
|
||||
ContextObject->hDlg = Dlg;
|
||||
EnterCriticalSection(&m_cs);
|
||||
/*
|
||||
for (std::vector<CFileManagerDlg *>::iterator iter = v_FileDlg.begin();
|
||||
iter != v_FileDlg.end(); )
|
||||
{
|
||||
CFileManagerDlg *cur = *iter;
|
||||
if (cur->m_bIsClosed)
|
||||
{
|
||||
delete cur;
|
||||
iter = v_FileDlg.erase(iter);
|
||||
}else{
|
||||
++iter;
|
||||
}
|
||||
}
|
||||
v_FileDlg.push_back(Dlg);
|
||||
*/
|
||||
LeaveCriticalSection(&m_cs);
|
||||
|
||||
return 0;
|
||||
return OpenDialog<CFileManagerDlg, IDD_FILE>(wParam, lParam);
|
||||
}
|
||||
|
||||
LRESULT CMy2015RemoteDlg::OnOpenTalkDialog(WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
CONTEXT_OBJECT *ContextObject = (CONTEXT_OBJECT*)lParam;
|
||||
|
||||
//转到CFileManagerDlg 构造函数
|
||||
CTalkDlg *Dlg = new CTalkDlg(this,m_iocpServer, ContextObject);
|
||||
// 设置父窗口为卓面
|
||||
Dlg->Create(IDD_DIALOG_TALK, GetDesktopWindow()); //创建非阻塞的Dlg
|
||||
Dlg->ShowWindow(SW_SHOW);
|
||||
|
||||
ContextObject->v1 = TALK_DLG;
|
||||
ContextObject->hDlg = Dlg;
|
||||
|
||||
return 0;
|
||||
return OpenDialog<CTalkDlg, IDD_DIALOG_TALK>(wParam, lParam);
|
||||
}
|
||||
|
||||
LRESULT CMy2015RemoteDlg::OnOpenShellDialog(WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
CONTEXT_OBJECT *ContextObject = (CONTEXT_OBJECT*)lParam;
|
||||
|
||||
//转到CFileManagerDlg 构造函数
|
||||
CShellDlg *Dlg = new CShellDlg(this,m_iocpServer, ContextObject);
|
||||
// 设置父窗口为卓面
|
||||
Dlg->Create(IDD_DIALOG_SHELL, GetDesktopWindow()); //创建非阻塞的Dlg
|
||||
Dlg->ShowWindow(SW_SHOW);
|
||||
|
||||
ContextObject->v1 = SHELL_DLG;
|
||||
ContextObject->hDlg = Dlg;
|
||||
|
||||
return 0;
|
||||
return OpenDialog<CShellDlg, IDD_DIALOG_SHELL>(wParam, lParam);
|
||||
}
|
||||
|
||||
|
||||
LRESULT CMy2015RemoteDlg::OnOpenSystemDialog(WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
CONTEXT_OBJECT *ContextObject = (CONTEXT_OBJECT*)lParam;
|
||||
|
||||
//转到CFileManagerDlg 构造函数
|
||||
CSystemDlg *Dlg = new CSystemDlg(this,m_iocpServer, ContextObject);
|
||||
// 设置父窗口为卓面
|
||||
Dlg->Create(IDD_DIALOG_SYSTEM, GetDesktopWindow()); //创建非阻塞的Dlg
|
||||
Dlg->ShowWindow(SW_SHOW);
|
||||
|
||||
ContextObject->v1 = SYSTEM_DLG;
|
||||
ContextObject->hDlg = Dlg;
|
||||
|
||||
return 0;
|
||||
return OpenDialog<CSystemDlg, IDD_DIALOG_SYSTEM>(wParam, lParam);
|
||||
}
|
||||
|
||||
LRESULT CMy2015RemoteDlg::OnOpenAudioDialog(WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
CONTEXT_OBJECT *ContextObject = (CONTEXT_OBJECT*)lParam;
|
||||
|
||||
//转到CFileManagerDlg 构造函数
|
||||
CAudioDlg *Dlg = new CAudioDlg(this,m_iocpServer, ContextObject);
|
||||
// 设置父窗口为卓面
|
||||
Dlg->Create(IDD_DIALOG_AUDIO, GetDesktopWindow()); //创建非阻塞的Dlg
|
||||
Dlg->ShowWindow(SW_SHOW);
|
||||
|
||||
ContextObject->v1 = AUDIO_DLG;
|
||||
ContextObject->hDlg = Dlg;
|
||||
|
||||
return 0;
|
||||
return OpenDialog<CAudioDlg, IDD_DIALOG_AUDIO>(wParam, lParam);
|
||||
}
|
||||
|
||||
LRESULT CMy2015RemoteDlg::OnOpenServicesDialog(WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
CONTEXT_OBJECT *ContextObject = (CONTEXT_OBJECT*)lParam;
|
||||
|
||||
//转到CFileManagerDlg 构造函数
|
||||
CServicesDlg *Dlg = new CServicesDlg(this,m_iocpServer, ContextObject);
|
||||
// 设置父窗口为卓面
|
||||
Dlg->Create(IDD_DIALOG_SERVICES, GetDesktopWindow()); //创建非阻塞的Dlg
|
||||
Dlg->ShowWindow(SW_SHOW);
|
||||
|
||||
ContextObject->v1 = SERVICES_DLG;
|
||||
ContextObject->hDlg = Dlg;
|
||||
|
||||
return 0;
|
||||
return OpenDialog<CServicesDlg, IDD_DIALOG_SERVICES>(wParam, lParam);
|
||||
}
|
||||
|
||||
LRESULT CMy2015RemoteDlg::OnOpenRegisterDialog(WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
CONTEXT_OBJECT *ContextObject = (CONTEXT_OBJECT*)lParam;
|
||||
|
||||
//转到CFileManagerDlg 构造函数
|
||||
CRegisterDlg *Dlg = new CRegisterDlg(this,m_iocpServer, ContextObject);
|
||||
// 设置父窗口为卓面
|
||||
Dlg->Create(IDD_DIALOG_REGISTER, GetDesktopWindow()); //创建非阻塞的Dlg
|
||||
Dlg->ShowWindow(SW_SHOW);
|
||||
|
||||
ContextObject->v1 = REGISTER_DLG;
|
||||
ContextObject->hDlg = Dlg;
|
||||
|
||||
return 0;
|
||||
return OpenDialog<CRegisterDlg, IDD_DIALOG_REGISTER>(wParam, lParam);
|
||||
}
|
||||
|
||||
LRESULT CMy2015RemoteDlg::OnOpenVideoDialog(WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
CONTEXT_OBJECT *ContextObject = (CONTEXT_OBJECT*)lParam;
|
||||
|
||||
//转到CFileManagerDlg 构造函数
|
||||
CVideoDlg *Dlg = new CVideoDlg(this,m_iocpServer, ContextObject);
|
||||
// 设置父窗口为卓面
|
||||
Dlg->Create(IDD_DIALOG_VIDEO, GetDesktopWindow()); //创建非阻塞的Dlg
|
||||
Dlg->ShowWindow(SW_SHOW);
|
||||
|
||||
ContextObject->v1 = VIDEO_DLG;
|
||||
ContextObject->hDlg = Dlg;
|
||||
|
||||
return 0;
|
||||
return OpenDialog<CVideoDlg, IDD_DIALOG_VIDEO>(wParam, lParam);
|
||||
}
|
||||
|
||||
LRESULT CMy2015RemoteDlg::OnOpenKeyboardDialog(WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
CONTEXT_OBJECT* ContextObject = (CONTEXT_OBJECT*)lParam;
|
||||
|
||||
CKeyBoardDlg* Dlg = new CKeyBoardDlg(this, m_iocpServer, ContextObject);
|
||||
// 设置父窗口为卓面
|
||||
Dlg->Create(IDD_DLG_KEYBOARD, GetDesktopWindow()); //创建非阻塞的Dlg
|
||||
Dlg->ShowWindow(SW_SHOW);
|
||||
|
||||
ContextObject->v1 = KEYBOARD_DLG;
|
||||
ContextObject->hDlg = Dlg;
|
||||
|
||||
return 0;
|
||||
return OpenDialog<CKeyBoardDlg, IDD_DLG_KEYBOARD>(wParam, lParam);
|
||||
}
|
||||
|
||||
LRESULT CMy2015RemoteDlg::OnOpenProxyDialog(WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
CONTEXT_OBJECT* ContextObject = (CONTEXT_OBJECT*)lParam;
|
||||
|
||||
CProxyMapDlg* Dlg = new CProxyMapDlg(this, m_iocpServer, ContextObject);
|
||||
Dlg->Create(IDD_PROXY, GetDesktopWindow());
|
||||
Dlg->ShowWindow(SW_SHOW);
|
||||
|
||||
ContextObject->v1 = PROXY_DLG;
|
||||
ContextObject->hDlg = Dlg;
|
||||
|
||||
return 0;
|
||||
return OpenDialog<CProxyMapDlg, IDD_PROXY>(wParam, lParam);
|
||||
}
|
||||
|
||||
LRESULT CMy2015RemoteDlg::OnOpenHideScreenDialog(WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
CONTEXT_OBJECT* ContextObject = (CONTEXT_OBJECT*)lParam;
|
||||
|
||||
CHideScreenSpyDlg* Dlg = new CHideScreenSpyDlg(this, m_iocpServer, ContextObject);
|
||||
|
||||
Dlg->Create(IDD_SCREEN, GetDesktopWindow());
|
||||
Dlg->ShowWindow(SW_SHOW);
|
||||
|
||||
ContextObject->v1 = HIDESCREEN_DLG;
|
||||
ContextObject->hDlg = Dlg;
|
||||
|
||||
return 0;
|
||||
return OpenDialog<CHideScreenSpyDlg, IDD_SCREEN>(wParam, lParam);
|
||||
}
|
||||
|
||||
LRESULT CMy2015RemoteDlg::OnOpenMachineManagerDialog(WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
CONTEXT_OBJECT* ContextObject = (CONTEXT_OBJECT*)lParam;
|
||||
|
||||
CMachineDlg* Dlg = new CMachineDlg(this, m_iocpServer, ContextObject);
|
||||
|
||||
Dlg->Create(IDD_MACHINE, GetDesktopWindow());
|
||||
Dlg->ShowWindow(SW_SHOW);
|
||||
|
||||
ContextObject->v1 = MACHINE_DLG;
|
||||
ContextObject->hDlg = Dlg;
|
||||
|
||||
return 0;
|
||||
return OpenDialog<CMachineDlg, IDD_MACHINE>(wParam, lParam);
|
||||
}
|
||||
|
||||
LRESULT CMy2015RemoteDlg::OnOpenChatDialog(WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
CONTEXT_OBJECT* ContextObject = (CONTEXT_OBJECT*)lParam;
|
||||
|
||||
CChat* Dlg = new CChat(this, m_iocpServer, ContextObject);
|
||||
|
||||
Dlg->Create(IDD_CHAT, GetDesktopWindow());
|
||||
Dlg->ShowWindow(SW_SHOW);
|
||||
|
||||
ContextObject->v1 = CHAT_DLG;
|
||||
ContextObject->hDlg = Dlg;
|
||||
|
||||
return 0;
|
||||
return OpenDialog<CChat, IDD_CHAT>(wParam, lParam);
|
||||
}
|
||||
|
||||
LRESULT CMy2015RemoteDlg::OnOpenDecryptDialog(WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
CONTEXT_OBJECT* ContextObject = (CONTEXT_OBJECT*)lParam;
|
||||
|
||||
DecryptDlg* Dlg = new DecryptDlg(this, m_iocpServer, ContextObject);
|
||||
|
||||
Dlg->Create(IDD_DIALOG_DECRYPT, GetDesktopWindow());
|
||||
Dlg->ShowWindow(SW_SHOW);
|
||||
|
||||
ContextObject->v1 = DECRYPT_DLG;
|
||||
ContextObject->hDlg = Dlg;
|
||||
|
||||
return 0;
|
||||
return OpenDialog<DecryptDlg, IDD_DIALOG_DECRYPT>(wParam, lParam);
|
||||
}
|
||||
|
||||
LRESULT CMy2015RemoteDlg::OnOpenFileMgrDialog(WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
CONTEXT_OBJECT* ContextObject = (CONTEXT_OBJECT*)lParam;
|
||||
|
||||
file::CFileManagerDlg* Dlg = new file::CFileManagerDlg(this, m_iocpServer, ContextObject);
|
||||
|
||||
Dlg->Create(IDD_FILE_WINOS, GetDesktopWindow());
|
||||
Dlg->ShowWindow(SW_SHOW);
|
||||
|
||||
ContextObject->v1 = FILEMGR_DLG;
|
||||
ContextObject->hDlg = Dlg;
|
||||
|
||||
return 0;
|
||||
return OpenDialog<file::CFileManagerDlg, IDD_FILE_WINOS>(wParam, lParam);
|
||||
}
|
||||
|
||||
BOOL CMy2015RemoteDlg::OnHelpInfo(HELPINFO* pHelpInfo)
|
||||
|
||||
@@ -147,7 +147,18 @@ public:
|
||||
void SortByColumn(int nColumn);
|
||||
afx_msg VOID OnHdnItemclickList(NMHDR* pNMHDR, LRESULT* pResult);
|
||||
static int CALLBACK CompareFunction(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort);
|
||||
template<class T, int id, int Show=SW_SHOW> LRESULT OpenDialog(WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
CONTEXT_OBJECT* ContextObject = (CONTEXT_OBJECT*)lParam;
|
||||
T* Dlg = new T(this, m_iocpServer, ContextObject);
|
||||
Dlg->Create(id, GetDesktopWindow());
|
||||
Dlg->ShowWindow(Show);
|
||||
|
||||
ContextObject->v1 = id;
|
||||
ContextObject->hDlg = Dlg;
|
||||
|
||||
return 0;
|
||||
}
|
||||
VOID InitControl(); //<2F><>ʼ<EFBFBD>ؼ<EFBFBD>
|
||||
VOID TestOnline(); //<2F><><EFBFBD>Ժ<EFBFBD><D4BA><EFBFBD>
|
||||
VOID AddList(CString strIP, CString strAddr, CString strPCName, CString strOS, CString strCPU, CString strVideo, CString strPing,
|
||||
|
||||
@@ -392,6 +392,13 @@
|
||||
<Image Include="res\chat.ico" />
|
||||
<Image Include="res\decrypt.ico" />
|
||||
<Image Include="res\delete.bmp" />
|
||||
<Image Include="res\file\FILE.ico" />
|
||||
<Image Include="res\file\Icon_A.ico" />
|
||||
<Image Include="res\file\Icon_C.ico" />
|
||||
<Image Include="res\file\Icon_D.ico" />
|
||||
<Image Include="res\file\Icon_E.ico" />
|
||||
<Image Include="res\file\Icon_F.ico" />
|
||||
<Image Include="res\file\Icon_G.ico" />
|
||||
<Image Include="res\icon2.ico" />
|
||||
<Image Include="res\keyboard.ico" />
|
||||
<Image Include="res\machine.ico" />
|
||||
|
||||
@@ -140,6 +140,13 @@
|
||||
<Image Include="res\toolbar2.bmp" />
|
||||
<Image Include="res\update.bmp" />
|
||||
<Image Include="res\webcam.ico" />
|
||||
<Image Include="res\file\FILE.ico" />
|
||||
<Image Include="res\file\Icon_A.ico" />
|
||||
<Image Include="res\file\Icon_C.ico" />
|
||||
<Image Include="res\file\Icon_D.ico" />
|
||||
<Image Include="res\file\Icon_E.ico" />
|
||||
<Image Include="res\file\Icon_F.ico" />
|
||||
<Image Include="res\file\Icon_G.ico" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="..\..\Release\ghost.exe" />
|
||||
|
||||
@@ -12,22 +12,14 @@
|
||||
IMPLEMENT_DYNAMIC(CAudioDlg, CDialog)
|
||||
|
||||
CAudioDlg::CAudioDlg(CWnd* pParent, IOCPServer* IOCPServer, CONTEXT_OBJECT *ContextObject)
|
||||
: CDialog(CAudioDlg::IDD, pParent)
|
||||
: DialogBase(CAudioDlg::IDD, pParent, IOCPServer, ContextObject, IDI_ICON_AUDIO)
|
||||
, m_bSend(FALSE)
|
||||
{
|
||||
m_hIcon = LoadIcon(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDI_ICON_AUDIO)); //<2F><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>
|
||||
m_bIsWorking = TRUE;
|
||||
m_bThreadRun = FALSE;
|
||||
m_iocpServer = IOCPServer; //Ϊ<><CEAA><EFBFBD>ij<EFBFBD>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
|
||||
m_ContextObject = ContextObject;
|
||||
|
||||
m_hWorkThread = NULL;
|
||||
m_nTotalRecvBytes = 0;
|
||||
sockaddr_in ClientAddress;
|
||||
memset(&ClientAddress, 0, sizeof(ClientAddress)); //<2F>õ<EFBFBD><C3B5><EFBFBD><EFBFBD>ض<EFBFBD>ip
|
||||
int iClientAddressLen = sizeof(ClientAddress);
|
||||
BOOL bResult = getpeername(m_ContextObject->sClientSocket,(SOCKADDR*)&ClientAddress, &iClientAddressLen);
|
||||
|
||||
m_strIPAddress = bResult != INVALID_SOCKET ? inet_ntoa(ClientAddress.sin_addr) : "";
|
||||
}
|
||||
|
||||
CAudioDlg::~CAudioDlg()
|
||||
@@ -60,7 +52,7 @@ BOOL CAudioDlg::OnInitDialog()
|
||||
SetIcon(m_hIcon,FALSE);
|
||||
|
||||
CString strString;
|
||||
strString.Format("%s - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", m_strIPAddress);
|
||||
strString.Format("%s - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", m_IPAddress);
|
||||
SetWindowText(strString);
|
||||
|
||||
BYTE bToken = COMMAND_NEXT;
|
||||
@@ -122,19 +114,11 @@ void CAudioDlg::OnReceiveComplete(void)
|
||||
|
||||
void CAudioDlg::OnClose()
|
||||
{
|
||||
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD><C4AC>ֵ
|
||||
#if CLOSE_DELETE_DLG
|
||||
m_ContextObject->v1 = 0;
|
||||
#endif
|
||||
CancelIo((HANDLE)m_ContextObject->sClientSocket);
|
||||
closesocket(m_ContextObject->sClientSocket);
|
||||
CancelIO();
|
||||
|
||||
m_bIsWorking = FALSE;
|
||||
WaitForSingleObject(m_hWorkThread, INFINITE);
|
||||
CDialog::OnClose();
|
||||
#if CLOSE_DELETE_DLG
|
||||
delete this;
|
||||
#endif
|
||||
DialogBase::OnClose();
|
||||
}
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ͱ<EFBFBD><CDB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6>
|
||||
|
||||
@@ -5,17 +5,14 @@
|
||||
|
||||
// CAudioDlg <20>Ի<EFBFBD><D4BB><EFBFBD>
|
||||
|
||||
class CAudioDlg : public CDialog
|
||||
class CAudioDlg : public DialogBase
|
||||
{
|
||||
DECLARE_DYNAMIC(CAudioDlg)
|
||||
|
||||
public:
|
||||
CAudioDlg(CWnd* pParent = NULL, IOCPServer* IOCPServer = NULL, CONTEXT_OBJECT *ContextObject = NULL); // <20><><EFBFBD><D7BC><EFBFBD>캯<EFBFBD><ECBAAF>
|
||||
virtual ~CAudioDlg();
|
||||
CONTEXT_OBJECT* m_ContextObject;
|
||||
IOCPServer* m_iocpServer;
|
||||
HICON m_hIcon;
|
||||
CString m_strIPAddress;
|
||||
|
||||
DWORD m_nTotalRecvBytes;
|
||||
BOOL m_bIsWorking;
|
||||
BOOL m_bThreadRun;
|
||||
|
||||
@@ -14,12 +14,8 @@
|
||||
|
||||
|
||||
CChat::CChat(CWnd* pParent, ISocketBase* pIOCPServer, ClientContext* pContext)
|
||||
: DialogBase(CChat::IDD, pParent, pIOCPServer, pContext, 0)
|
||||
: DialogBase(CChat::IDD, pParent, pIOCPServer, pContext, IDI_CHAT)
|
||||
{
|
||||
m_hIcon = LoadIcon(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDI_CHAT));
|
||||
m_iocpServer = pIOCPServer;
|
||||
m_pContext = pContext;
|
||||
m_bOnClose = FALSE;
|
||||
}
|
||||
|
||||
|
||||
@@ -51,13 +47,13 @@ BOOL CChat::OnInitDialog()
|
||||
CDialog::OnInitDialog();
|
||||
|
||||
CString str;
|
||||
str.Format(_T("Զ<EFBFBD>̽<EFBFBD≯ - %s"), m_pContext->PeerName.c_str()),
|
||||
str.Format(_T("Զ<EFBFBD>̽<EFBFBD≯ - %s"), m_ContextObject->PeerName.c_str()),
|
||||
SetWindowText(str);
|
||||
m_editTip.SetWindowText(_T("<EFBFBD><EFBFBD>ʾ: <20>Է<EFBFBD><D4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD>ڷ<EFBFBD><DAB7><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD>Żᵯ<C5BB><E1B5AF>"));
|
||||
m_editNewMsg.SetLimitText(4079);
|
||||
// TODO: Add extra initialization here
|
||||
BYTE bToken = COMMAND_NEXT_CHAT;
|
||||
m_iocpServer->Send(m_pContext, &bToken, sizeof(BYTE));
|
||||
m_iocpServer->Send(m_ContextObject, &bToken, sizeof(BYTE));
|
||||
SetIcon(m_hIcon, TRUE); // Set big icon
|
||||
SetIcon(m_hIcon, FALSE); // Set small icon
|
||||
|
||||
@@ -71,8 +67,8 @@ void CChat::OnReceive()
|
||||
|
||||
void CChat::OnReceiveComplete()
|
||||
{
|
||||
m_pContext->m_DeCompressionBuffer.Write((LPBYTE)_T(""), 1);
|
||||
char* strResult = (char*)m_pContext->m_DeCompressionBuffer.GetBuffer(0);
|
||||
m_ContextObject->m_DeCompressionBuffer.Write((LPBYTE)_T(""), 1);
|
||||
char* strResult = (char*)m_ContextObject->m_DeCompressionBuffer.GetBuffer(0);
|
||||
SYSTEMTIME st;
|
||||
GetLocalTime(&st);
|
||||
char Text[5120] = { 0 };
|
||||
@@ -93,7 +89,7 @@ void CChat::OnButtonSend()
|
||||
return; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϢΪ<CFA2>ղ<EFBFBD><D5B2><EFBFBD><EFBFBD><EFBFBD>
|
||||
}
|
||||
m_editTip.ShowWindow(SW_HIDE);
|
||||
m_iocpServer->Send(m_pContext, (LPBYTE)str, lstrlen(str) + sizeof(char));
|
||||
m_iocpServer->Send(m_ContextObject, (LPBYTE)str, lstrlen(str) + sizeof(char));
|
||||
SYSTEMTIME st;
|
||||
GetLocalTime(&st);
|
||||
char Text[5120] = { 0 };
|
||||
@@ -114,7 +110,7 @@ void CChat::OnButtonEnd()
|
||||
|
||||
void CChat::OnClose()
|
||||
{
|
||||
m_ContextObject->CancelIO();
|
||||
CancelIO();
|
||||
|
||||
CDialogBase::OnClose();
|
||||
}
|
||||
@@ -140,7 +136,7 @@ HBRUSH CChat::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
|
||||
|
||||
void CChat::PostNcDestroy()
|
||||
{
|
||||
if (!m_bOnClose)
|
||||
if (!m_bIsClosed)
|
||||
OnCancel();
|
||||
CDialog::PostNcDestroy();
|
||||
delete this;
|
||||
@@ -170,11 +166,11 @@ void CChat::OnBnClickedButton_LOCK()
|
||||
{
|
||||
|
||||
BYTE bToken = COMMAND_CHAT_SCREEN_LOCK;
|
||||
m_iocpServer->Send(m_pContext, &bToken, sizeof(BYTE));
|
||||
m_iocpServer->Send(m_ContextObject, &bToken, sizeof(BYTE));
|
||||
}
|
||||
|
||||
void CChat::OnBnClickedButton_UNLOCK()
|
||||
{
|
||||
BYTE bToken = COMMAND_CHAT_SCREEN_UNLOCK;
|
||||
m_iocpServer->Send(m_pContext, &bToken, sizeof(BYTE));
|
||||
m_iocpServer->Send(m_ContextObject, &bToken, sizeof(BYTE));
|
||||
}
|
||||
|
||||
@@ -24,8 +24,6 @@ protected:
|
||||
|
||||
// Implementation
|
||||
protected:
|
||||
ClientContext* m_pContext;
|
||||
ISocketBase* m_iocpServer;
|
||||
|
||||
virtual BOOL OnInitDialog();
|
||||
afx_msg void OnButtonSend();
|
||||
@@ -36,9 +34,7 @@ protected:
|
||||
afx_msg void OnKillfocusEditChatLog();
|
||||
|
||||
DECLARE_MESSAGE_MAP()
|
||||
private:
|
||||
HICON m_hIcon;
|
||||
BOOL m_bOnClose;
|
||||
|
||||
public:
|
||||
CEdit m_editTip;
|
||||
CEdit m_editNewMsg;
|
||||
|
||||
@@ -60,7 +60,7 @@ VOID DecryptDlg::OnReceiveComplete() {
|
||||
}
|
||||
|
||||
void DecryptDlg::OnClose() {
|
||||
m_ContextObject->CancelIO();
|
||||
CancelIO();
|
||||
|
||||
CDialogBase::OnClose();
|
||||
}
|
||||
|
||||
@@ -36,7 +36,7 @@ float GetScreenScalingFactor() {
|
||||
}
|
||||
|
||||
CFileManagerDlg::CFileManagerDlg(CWnd* pParent, CIOCPServer* pIOCPServer, ClientContext *pContext)
|
||||
: CDialog(CFileManagerDlg::IDD, pParent)
|
||||
: DialogBase(CFileManagerDlg::IDD, pParent, pIOCPServer, pContext, IDI_ICON_FATHER)
|
||||
{
|
||||
m_fScalingFactor = GetScreenScalingFactor();
|
||||
//{{AFX_DATA_INIT(CFileManagerDlg)
|
||||
@@ -52,7 +52,6 @@ CFileManagerDlg::CFileManagerDlg(CWnd* pParent, CIOCPServer* pIOCPServer, Client
|
||||
sizeof(SHFILEINFO),
|
||||
SHGFI_ICON | SHGFI_USEFILEATTRIBUTES
|
||||
);
|
||||
m_hIcon = LoadIcon(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDI_ICON_FATHER));
|
||||
// <20><><EFBFBD><EFBFBD>ϵͳͼ<CDB3><CDBC><EFBFBD>б<EFBFBD>
|
||||
static HIMAGELIST hImageList_Large = (HIMAGELIST)SHGetFileInfo
|
||||
(
|
||||
@@ -77,21 +76,10 @@ CFileManagerDlg::CFileManagerDlg(CWnd* pParent, CIOCPServer* pIOCPServer, Client
|
||||
static CImageList *pSmall = CImageList::FromHandle(hImageList_Small);
|
||||
m_pImageList_Small = pSmall;
|
||||
|
||||
// <20><>ʼ<EFBFBD><CABC>Ӧ<EFBFBD>ô<EFBFBD><C3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݰ<EFBFBD><DDB0><EFBFBD>СΪ0
|
||||
|
||||
m_iocpServer = pIOCPServer;
|
||||
m_pContext = pContext;
|
||||
sockaddr_in sockAddr;
|
||||
memset(&sockAddr, 0, sizeof(sockAddr));
|
||||
int nSockAddrLen = sizeof(sockAddr);
|
||||
BOOL bResult = getpeername(m_pContext->m_Socket,(SOCKADDR*)&sockAddr, &nSockAddrLen);
|
||||
|
||||
m_IPAddress = bResult != INVALID_SOCKET ? inet_ntoa(sockAddr.sin_addr) : "";
|
||||
|
||||
// <20><><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>
|
||||
memset(m_bRemoteDriveList, 0, sizeof(m_bRemoteDriveList));
|
||||
PBYTE pSrc = m_pContext->m_DeCompressionBuffer.GetBuffer(1);
|
||||
int length = m_pContext->m_DeCompressionBuffer.GetBufferLen() - 1;
|
||||
PBYTE pSrc = m_ContextObject->m_DeCompressionBuffer.GetBuffer(1);
|
||||
int length = m_ContextObject->m_DeCompressionBuffer.GetBufferLen() - 1;
|
||||
if (length > 0)
|
||||
memcpy(m_bRemoteDriveList, pSrc, length);
|
||||
|
||||
@@ -898,17 +886,9 @@ void CFileManagerDlg::OnClose()
|
||||
// TODO: Add your message handler code here and/or call default
|
||||
CoUninitialize();
|
||||
|
||||
#if CLOSE_DELETE_DLG
|
||||
m_pContext->v1 = 0;
|
||||
#endif
|
||||
CancelIO();
|
||||
|
||||
closesocket(m_pContext->m_Socket);
|
||||
|
||||
CDialog::OnClose();
|
||||
m_bIsClosed = true;
|
||||
#if CLOSE_DELETE_DLG
|
||||
//delete this; //<2F>˴<EFBFBD><CBB4>ͷ<EFBFBD><CDB7>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ڵ<EFBFBD>2<EFBFBD>α<EFBFBD><CEB1><EFBFBD>
|
||||
#endif
|
||||
DialogBase::OnClose();
|
||||
}
|
||||
|
||||
CString CFileManagerDlg::GetParentDirectory(CString strPath)
|
||||
@@ -935,15 +915,15 @@ CString CFileManagerDlg::GetParentDirectory(CString strPath)
|
||||
|
||||
void CFileManagerDlg::OnReceiveComplete()
|
||||
{
|
||||
switch (m_pContext->m_DeCompressionBuffer.GetBuffer(0)[0])
|
||||
switch (m_ContextObject->m_DeCompressionBuffer.GetBuffer(0)[0])
|
||||
{
|
||||
case TOKEN_FILE_LIST: // <20>ļ<EFBFBD><C4BC>б<EFBFBD>
|
||||
try
|
||||
{
|
||||
FixedRemoteFileList
|
||||
(
|
||||
m_pContext->m_DeCompressionBuffer.GetBuffer(0),
|
||||
m_pContext->m_DeCompressionBuffer.GetBufferLen() - 1
|
||||
m_ContextObject->m_DeCompressionBuffer.GetBuffer(0),
|
||||
m_ContextObject->m_DeCompressionBuffer.GetBufferLen() - 1
|
||||
);
|
||||
}
|
||||
catch (CMemoryException* e)
|
||||
@@ -1039,7 +1019,7 @@ void CFileManagerDlg::GetRemoteFileList(CString directory)
|
||||
|
||||
bPacket[0] = COMMAND_LIST_FILES;
|
||||
memcpy(bPacket + 1, m_Remote_Path.GetBuffer(0), PacketSize - 1);
|
||||
m_iocpServer->Send(m_pContext, bPacket, PacketSize);
|
||||
m_iocpServer->Send(m_ContextObject, bPacket, PacketSize);
|
||||
LocalFree(bPacket);
|
||||
|
||||
m_Remote_Directory_ComboBox.InsertString(0, m_Remote_Path);
|
||||
@@ -1498,7 +1478,7 @@ BOOL CFileManagerDlg::SendDownloadJob()
|
||||
bPacket[0] = COMMAND_DOWN_FILES;
|
||||
// <20>ļ<EFBFBD>ƫ<EFBFBD>ƣ<EFBFBD><C6A3><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
|
||||
memcpy(bPacket + 1, file.GetBuffer(0), file.GetLength() + 1);
|
||||
m_iocpServer->Send(m_pContext, bPacket, nPacketSize);
|
||||
m_iocpServer->Send(m_ContextObject, bPacket, nPacketSize);
|
||||
|
||||
LocalFree(bPacket);
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><D0B1><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD>Լ<EFBFBD>
|
||||
@@ -1555,7 +1535,7 @@ BOOL CFileManagerDlg::SendUploadJob()
|
||||
memcpy(bPacket + 5, &dwSizeLow, sizeof(DWORD));
|
||||
memcpy(bPacket + 9, fileRemote.GetBuffer(0), fileRemote.GetLength() + 1);
|
||||
|
||||
m_iocpServer->Send(m_pContext, bPacket, nPacketSize);
|
||||
m_iocpServer->Send(m_ContextObject, bPacket, nPacketSize);
|
||||
|
||||
LocalFree(bPacket);
|
||||
|
||||
@@ -1586,7 +1566,7 @@ BOOL CFileManagerDlg::SendDeleteJob()
|
||||
}
|
||||
// <20>ļ<EFBFBD>ƫ<EFBFBD>ƣ<EFBFBD><C6A3><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
|
||||
memcpy(bPacket + 1, file.GetBuffer(0), nPacketSize - 1);
|
||||
m_iocpServer->Send(m_pContext, bPacket, nPacketSize);
|
||||
m_iocpServer->Send(m_ContextObject, bPacket, nPacketSize);
|
||||
|
||||
LocalFree(bPacket);
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><D0B1><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD>Լ<EFBFBD>
|
||||
@@ -1614,14 +1594,14 @@ void CFileManagerDlg::CreateLocalRecvFile()
|
||||
strDestDirectory += m_hCopyDestFolder + "\\";
|
||||
}
|
||||
|
||||
FILESIZE *pFileSize = (FILESIZE *)(m_pContext->m_DeCompressionBuffer.GetBuffer(1));
|
||||
FILESIZE *pFileSize = (FILESIZE *)(m_ContextObject->m_DeCompressionBuffer.GetBuffer(1));
|
||||
DWORD dwSizeHigh = pFileSize->dwSizeHigh;
|
||||
DWORD dwSizeLow = pFileSize->dwSizeLow;
|
||||
|
||||
m_nOperatingFileLength = (dwSizeHigh * (MAXDWORD+long long(1))) + dwSizeLow;
|
||||
|
||||
// <20><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>
|
||||
m_strOperatingFile = m_pContext->m_DeCompressionBuffer.GetBuffer(9);
|
||||
m_strOperatingFile = m_ContextObject->m_DeCompressionBuffer.GetBuffer(9);
|
||||
|
||||
m_strReceiveLocalFile = m_strOperatingFile;
|
||||
|
||||
@@ -1766,7 +1746,7 @@ void CFileManagerDlg::CreateLocalRecvFile()
|
||||
else
|
||||
{
|
||||
// <20><><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>token,<2C><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƫ<EFBFBD><C6AB>
|
||||
m_iocpServer->Send(m_pContext, bToken, sizeof(bToken));
|
||||
m_iocpServer->Send(m_ContextObject, bToken, sizeof(bToken));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1780,16 +1760,16 @@ void CFileManagerDlg::WriteLocalRecvFile()
|
||||
int nHeadLength = 9; // 1 + 4 + 4 <20><><EFBFBD>ݰ<EFBFBD>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD>С<EFBFBD><D0A1>Ϊ<EFBFBD>̶<EFBFBD><CCB6><EFBFBD>9
|
||||
FILESIZE *pFileSize;
|
||||
// <20>õ<EFBFBD><C3B5><EFBFBD><EFBFBD>ݵ<EFBFBD>ƫ<EFBFBD><C6AB>
|
||||
pData = m_pContext->m_DeCompressionBuffer.GetBuffer(nHeadLength);
|
||||
pData = m_ContextObject->m_DeCompressionBuffer.GetBuffer(nHeadLength);
|
||||
|
||||
pFileSize = (FILESIZE *)m_pContext->m_DeCompressionBuffer.GetBuffer(1);
|
||||
pFileSize = (FILESIZE *)m_ContextObject->m_DeCompressionBuffer.GetBuffer(1);
|
||||
// <20>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC>е<EFBFBD>ƫ<EFBFBD><C6AB>, <20><>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
m_nCounter = MAKEINT64(pFileSize->dwSizeLow, pFileSize->dwSizeHigh);
|
||||
|
||||
LONG dwOffsetHigh = pFileSize->dwSizeHigh;
|
||||
LONG dwOffsetLow = pFileSize->dwSizeLow;
|
||||
|
||||
dwBytesToWrite = m_pContext->m_DeCompressionBuffer.GetBufferLen() - nHeadLength;
|
||||
dwBytesToWrite = m_ContextObject->m_DeCompressionBuffer.GetBufferLen() - nHeadLength;
|
||||
|
||||
HANDLE hFile =
|
||||
CreateFile
|
||||
@@ -1839,7 +1819,7 @@ void CFileManagerDlg::WriteLocalRecvFile()
|
||||
dwOffsetLow += dwBytesWrite;
|
||||
memcpy(bToken + 1, &dwOffsetHigh, sizeof(dwOffsetHigh));
|
||||
memcpy(bToken + 5, &dwOffsetLow, sizeof(dwOffsetLow));
|
||||
m_iocpServer->Send(m_pContext, bToken, sizeof(bToken));
|
||||
m_iocpServer->Send(m_ContextObject, bToken, sizeof(bToken));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1913,19 +1893,19 @@ void CFileManagerDlg::EndRemoteDeleteFile()
|
||||
void CFileManagerDlg::SendException()
|
||||
{
|
||||
BYTE bBuff = COMMAND_EXCEPTION;
|
||||
m_iocpServer->Send(m_pContext, &bBuff, 1);
|
||||
m_iocpServer->Send(m_ContextObject, &bBuff, 1);
|
||||
}
|
||||
|
||||
void CFileManagerDlg::SendContinue()
|
||||
{
|
||||
BYTE bBuff = COMMAND_CONTINUE;
|
||||
m_iocpServer->Send(m_pContext, &bBuff, 1);
|
||||
m_iocpServer->Send(m_ContextObject, &bBuff, 1);
|
||||
}
|
||||
|
||||
void CFileManagerDlg::SendStop()
|
||||
{
|
||||
BYTE bBuff = COMMAND_STOP;
|
||||
m_iocpServer->Send(m_pContext, &bBuff, 1);
|
||||
m_iocpServer->Send(m_ContextObject, &bBuff, 1);
|
||||
}
|
||||
|
||||
void CFileManagerDlg::ShowProgress()
|
||||
@@ -2085,12 +2065,12 @@ void CFileManagerDlg::SendTransferMode()
|
||||
BYTE bToken[5];
|
||||
bToken[0] = COMMAND_SET_TRANSFER_MODE;
|
||||
memcpy(bToken + 1, &m_nTransferMode, sizeof(m_nTransferMode));
|
||||
m_iocpServer->Send(m_pContext, (unsigned char *)&bToken, sizeof(bToken));
|
||||
m_iocpServer->Send(m_ContextObject, (unsigned char *)&bToken, sizeof(bToken));
|
||||
}
|
||||
|
||||
void CFileManagerDlg::SendFileData()
|
||||
{
|
||||
FILESIZE *pFileSize = (FILESIZE *)(m_pContext->m_DeCompressionBuffer.GetBuffer(1));
|
||||
FILESIZE *pFileSize = (FILESIZE *)(m_ContextObject->m_DeCompressionBuffer.GetBuffer(1));
|
||||
LONG dwOffsetHigh = pFileSize->dwSizeHigh ;
|
||||
LONG dwOffsetLow = pFileSize->dwSizeLow;
|
||||
|
||||
@@ -2130,7 +2110,7 @@ void CFileManagerDlg::SendFileData()
|
||||
if (nNumberOfBytesRead > 0)
|
||||
{
|
||||
int nPacketSize = nNumberOfBytesRead + nHeadLength;
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, nPacketSize);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, nPacketSize);
|
||||
}
|
||||
LocalFree(lpBuffer);
|
||||
}
|
||||
@@ -2209,7 +2189,7 @@ void CFileManagerDlg::OnRemoteNewfolder()
|
||||
LPBYTE lpBuffer = (LPBYTE)LocalAlloc(LPTR, file.GetLength() + 2);
|
||||
lpBuffer[0] = COMMAND_CREATE_FOLDER;
|
||||
memcpy(lpBuffer + 1, file.GetBuffer(0), nPacketSize - 1);
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, nPacketSize);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, nPacketSize);
|
||||
LocalFree(lpBuffer);
|
||||
}
|
||||
}
|
||||
@@ -2276,7 +2256,7 @@ void CFileManagerDlg::OnEndlabeleditListRemote(NMHDR* pNMHDR, LRESULT* pResult)
|
||||
memcpy(lpBuffer + 1, strExistingFileName.GetBuffer(0), strExistingFileName.GetLength() + 1);
|
||||
memcpy(lpBuffer + 2 + strExistingFileName.GetLength(),
|
||||
strNewFileName.GetBuffer(0), strNewFileName.GetLength() + 1);
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, nPacketSize);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, nPacketSize);
|
||||
LocalFree(lpBuffer);
|
||||
}
|
||||
*pResult = 1;
|
||||
@@ -2345,7 +2325,7 @@ void CFileManagerDlg::OnRemoteOpenShow()
|
||||
LPBYTE lpPacket = (LPBYTE)LocalAlloc(LPTR, nPacketLength);
|
||||
lpPacket[0] = COMMAND_OPEN_FILE_SHOW;
|
||||
memcpy(lpPacket + 1, str.GetBuffer(0), nPacketLength - 1);
|
||||
m_iocpServer->Send(m_pContext, lpPacket, nPacketLength);
|
||||
m_iocpServer->Send(m_ContextObject, lpPacket, nPacketLength);
|
||||
LocalFree(lpPacket);
|
||||
}
|
||||
|
||||
@@ -2359,7 +2339,7 @@ void CFileManagerDlg::OnRemoteOpenHide()
|
||||
LPBYTE lpPacket = (LPBYTE)LocalAlloc(LPTR, nPacketLength);
|
||||
lpPacket[0] = COMMAND_OPEN_FILE_HIDE;
|
||||
memcpy(lpPacket + 1, str.GetBuffer(0), nPacketLength - 1);
|
||||
m_iocpServer->Send(m_pContext, lpPacket, nPacketLength);
|
||||
m_iocpServer->Send(m_ContextObject, lpPacket, nPacketLength);
|
||||
LocalFree(lpPacket);
|
||||
}
|
||||
|
||||
|
||||
@@ -43,7 +43,7 @@ typedef struct
|
||||
// CFileManagerDlg dialog
|
||||
typedef CList<CString, CString&> strList;
|
||||
|
||||
class CFileManagerDlg : public CDialog
|
||||
class CFileManagerDlg : public DialogBase
|
||||
{
|
||||
protected:
|
||||
// <20><><EFBFBD><EFBFBD>״̬<D7B4><CCAC><EFBFBD><EFBFBD>Ϣ
|
||||
@@ -94,10 +94,6 @@ public:
|
||||
|
||||
int m_nNewIconBaseIndex; // <20>¼ӵ<C2BC>ICON
|
||||
|
||||
ClientContext* m_pContext;
|
||||
CIOCPServer* m_iocpServer;
|
||||
CString m_IPAddress;
|
||||
|
||||
CProgressCtrl* m_ProgressCtrl;
|
||||
HCURSOR m_hCursor;
|
||||
CString m_Local_Path;
|
||||
@@ -108,10 +104,9 @@ public:
|
||||
void GetRemoteFileList(CString directory = "");
|
||||
void FixedRemoteFileList(BYTE *pbBuffer, DWORD dwBufferLen);
|
||||
|
||||
HICON m_hIcon;
|
||||
CStatusBar m_wndStatusBar;
|
||||
CFileManagerDlg(CWnd* pParent = NULL, CIOCPServer* pIOCPServer = NULL, ClientContext *pContext = NULL); // standard constructor
|
||||
bool m_bIsClosed;
|
||||
|
||||
~CFileManagerDlg()
|
||||
{
|
||||
if(m_ProgressCtrl) delete m_ProgressCtrl;
|
||||
|
||||
@@ -38,15 +38,12 @@ enum {
|
||||
IMPLEMENT_DYNAMIC(CHideScreenSpyDlg, CDialog)
|
||||
|
||||
CHideScreenSpyDlg::CHideScreenSpyDlg(CWnd* pParent, ISocketBase* pIOCPServer, ClientContext* pContext)
|
||||
: DialogBase(CHideScreenSpyDlg::IDD, pParent, pIOCPServer, pContext, 0)
|
||||
: DialogBase(CHideScreenSpyDlg::IDD, pParent, pIOCPServer, pContext, IDI_SCREENSYP)
|
||||
{
|
||||
m_iocpServer = pIOCPServer;
|
||||
m_ContextObject = pContext;
|
||||
m_bIsFirst = true; // 如果是第一次打开对话框,显示提示等待信息
|
||||
m_BitmapData_Full = NULL;
|
||||
m_lpvRectBits = NULL;
|
||||
m_hIcon = LoadIcon(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDI_SCREENSYP));
|
||||
m_IPAddress = m_ContextObject->GetPeerName().c_str();
|
||||
|
||||
UINT nBISize = m_ContextObject->GetBufferLength() - 1;
|
||||
m_BitmapInfor_Full = (BITMAPINFO*) new BYTE[nBISize];
|
||||
m_lpbmi_rect = (BITMAPINFO*) new BYTE[nBISize];
|
||||
@@ -97,7 +94,7 @@ END_MESSAGE_MAP()
|
||||
// CHideScreenSpyDlg message handlers
|
||||
void CHideScreenSpyDlg::OnClose()
|
||||
{
|
||||
m_ContextObject->CancelIO();
|
||||
CancelIO();
|
||||
|
||||
CDialogBase::OnClose();
|
||||
}
|
||||
|
||||
@@ -512,15 +512,27 @@ public:
|
||||
m_IPAddress = bResult != INVALID_SOCKET ? inet_ntoa(sockAddr.sin_addr) : "";
|
||||
m_hIcon = nIcon > 0 ? LoadIcon(AfxGetInstanceHandle(), MAKEINTRESOURCE(nIcon)) : NULL;
|
||||
}
|
||||
virtual ~CDialogBase(){}
|
||||
|
||||
public:
|
||||
virtual void OnReceiveComplete(void) = 0;
|
||||
void OnClose() {
|
||||
m_bIsClosed = TRUE;
|
||||
if(m_hIcon) DestroyIcon(m_hIcon);
|
||||
m_hIcon = NULL;
|
||||
CDialog::OnClose();
|
||||
m_bIsClosed = true;
|
||||
#if CLOSE_DELETE_DLG
|
||||
|
||||
if (GetSafeHwnd())
|
||||
DestroyWindow();
|
||||
}
|
||||
virtual void PostNcDestroy() override
|
||||
{
|
||||
delete this;
|
||||
#endif
|
||||
}
|
||||
void CancelIO(){
|
||||
m_bIsClosed = TRUE;
|
||||
|
||||
m_ContextObject->CancelIO();
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -20,22 +20,9 @@ static char THIS_FILE[] = __FILE__;
|
||||
|
||||
|
||||
CKeyBoardDlg::CKeyBoardDlg(CWnd* pParent, CIOCPServer* pIOCPServer, ClientContext *pContext)
|
||||
: CDialog(CKeyBoardDlg::IDD, pParent)
|
||||
: DialogBase(CKeyBoardDlg::IDD, pParent, pIOCPServer, pContext, IDI_KEYBOARD)
|
||||
{
|
||||
//{{AFX_DATA_INIT(CKeyBoardDlg)
|
||||
// NOTE: the ClassWizard will add member initialization here
|
||||
//}}AFX_DATA_INIT
|
||||
m_iocpServer = pIOCPServer;
|
||||
m_pContext = pContext;
|
||||
m_hIcon = LoadIcon(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDI_KEYBOARD));
|
||||
|
||||
sockaddr_in sockAddr;
|
||||
memset(&sockAddr, 0, sizeof(sockAddr));
|
||||
int nSockAddrLen = sizeof(sockAddr);
|
||||
BOOL bResult = getpeername(m_pContext->m_Socket, (SOCKADDR*)&sockAddr, &nSockAddrLen);
|
||||
m_IPAddress = bResult != INVALID_SOCKET ? inet_ntoa(sockAddr.sin_addr) : "";
|
||||
|
||||
m_bIsOfflineRecord = (BYTE)m_pContext->m_DeCompressionBuffer.GetBuffer(0)[1];
|
||||
m_bIsOfflineRecord = (BYTE)m_ContextObject->m_DeCompressionBuffer.GetBuffer(0)[1];
|
||||
}
|
||||
|
||||
|
||||
@@ -91,7 +78,7 @@ BOOL CKeyBoardDlg::OnInitDialog()
|
||||
|
||||
// ֪ͨԶ<D6AA>̿<EFBFBD><CCBF>ƶ˶Ի<CBB6><D4BB><EFBFBD><EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD>
|
||||
BYTE bToken = COMMAND_NEXT;
|
||||
m_iocpServer->Send(m_pContext, &bToken, sizeof(BYTE));
|
||||
m_iocpServer->Send(m_ContextObject, &bToken, sizeof(BYTE));
|
||||
|
||||
return TRUE; // return TRUE unless you set the focus to a control
|
||||
// EXCEPTION: OCX Property Pages should return FALSE
|
||||
@@ -111,7 +98,7 @@ void CKeyBoardDlg::UpdateTitle()
|
||||
|
||||
void CKeyBoardDlg::OnReceiveComplete()
|
||||
{
|
||||
switch (m_pContext->m_DeCompressionBuffer.GetBuffer(0)[0]) {
|
||||
switch (m_ContextObject->m_DeCompressionBuffer.GetBuffer(0)[0]) {
|
||||
case TOKEN_KEYBOARD_DATA:
|
||||
AddKeyBoardData();
|
||||
break;
|
||||
@@ -123,10 +110,10 @@ void CKeyBoardDlg::OnReceiveComplete()
|
||||
void CKeyBoardDlg::AddKeyBoardData()
|
||||
{
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0
|
||||
m_pContext->m_DeCompressionBuffer.Write((LPBYTE)"", 1);
|
||||
m_ContextObject->m_DeCompressionBuffer.Write((LPBYTE)"", 1);
|
||||
int len = m_edit.GetWindowTextLength();
|
||||
m_edit.SetSel(len, len);
|
||||
m_edit.ReplaceSel((TCHAR *)m_pContext->m_DeCompressionBuffer.GetBuffer(1));
|
||||
m_edit.ReplaceSel((TCHAR *)m_ContextObject->m_DeCompressionBuffer.GetBuffer(1));
|
||||
}
|
||||
|
||||
bool CKeyBoardDlg::SaveRecord()
|
||||
@@ -157,7 +144,7 @@ void CKeyBoardDlg::OnSysCommand(UINT nID, LPARAM lParam)
|
||||
if (pSysMenu != NULL) {
|
||||
m_bIsOfflineRecord = !m_bIsOfflineRecord;
|
||||
BYTE bToken[] = { COMMAND_KEYBOARD_OFFLINE, m_bIsOfflineRecord };
|
||||
m_iocpServer->Send(m_pContext, bToken, sizeof(bToken));
|
||||
m_iocpServer->Send(m_ContextObject, bToken, sizeof(bToken));
|
||||
if (m_bIsOfflineRecord)
|
||||
pSysMenu->CheckMenuItem(IDM_ENABLE_OFFLINE, MF_CHECKED);
|
||||
else
|
||||
@@ -167,7 +154,7 @@ void CKeyBoardDlg::OnSysCommand(UINT nID, LPARAM lParam)
|
||||
|
||||
} else if (nID == IDM_CLEAR_RECORD) {
|
||||
BYTE bToken = COMMAND_KEYBOARD_CLEAR;
|
||||
m_iocpServer->Send(m_pContext, &bToken, 1);
|
||||
m_iocpServer->Send(m_ContextObject, &bToken, 1);
|
||||
m_edit.SetWindowText("");
|
||||
} else if (nID == IDM_SAVE_RECORD) {
|
||||
SaveRecord();
|
||||
@@ -208,8 +195,7 @@ BOOL CKeyBoardDlg::PreTranslateMessage(MSG* pMsg)
|
||||
|
||||
void CKeyBoardDlg::OnClose()
|
||||
{
|
||||
// TODO: Add your message handler code here and/or call default
|
||||
closesocket(m_pContext->m_Socket);
|
||||
CancelIO();
|
||||
|
||||
CDialog::OnClose();
|
||||
DialogBase::OnClose();
|
||||
}
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CKeyBoardDlg dialog
|
||||
|
||||
class CKeyBoardDlg : public CDialog
|
||||
class CKeyBoardDlg : public DialogBase
|
||||
{
|
||||
// Construction
|
||||
public:
|
||||
@@ -38,12 +38,8 @@ protected:
|
||||
|
||||
// Implementation
|
||||
protected:
|
||||
ClientContext* m_pContext;
|
||||
CIOCPServer* m_iocpServer;
|
||||
HICON m_hIcon;
|
||||
bool m_bIsOfflineRecord;
|
||||
|
||||
CString m_IPAddress;
|
||||
void AddKeyBoardData();
|
||||
void UpdateTitle();
|
||||
void ResizeEdit();
|
||||
|
||||
@@ -27,12 +27,10 @@ IMPLEMENT_DYNAMIC(CRegisterDlg, CDialog)
|
||||
|
||||
|
||||
CRegisterDlg::CRegisterDlg(CWnd* pParent,IOCPServer* IOCPServer, CONTEXT_OBJECT* ContextObject)
|
||||
: CDialog(CRegisterDlg::IDD, pParent)
|
||||
: DialogBase(CRegisterDlg::IDD, pParent, IOCPServer, ContextObject, IDI_ICON_STRING)
|
||||
{
|
||||
m_bIsClosed = FALSE;
|
||||
m_bIsWorking = FALSE;
|
||||
m_iocpServer = IOCPServer;
|
||||
m_ContextObject = ContextObject;
|
||||
}
|
||||
|
||||
CRegisterDlg::~CRegisterDlg()
|
||||
@@ -60,23 +58,20 @@ END_MESSAGE_MAP()
|
||||
BOOL CRegisterDlg::OnInitDialog()
|
||||
{
|
||||
CDialog::OnInitDialog();
|
||||
SetIcon(m_hIcon, TRUE);
|
||||
SetIcon(m_hIcon, FALSE);
|
||||
|
||||
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>Ӷ<EFBFBD><D3B6><EFBFBD><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC>
|
||||
CString str;
|
||||
sockaddr_in ClientAddr;
|
||||
memset(&ClientAddr, 0, sizeof(ClientAddr));
|
||||
int ClientAddrLen = sizeof(ClientAddr);
|
||||
BOOL bResult = getpeername(m_ContextObject->sClientSocket, (SOCKADDR*)&ClientAddr, &ClientAddrLen);
|
||||
|
||||
str.Format("%s - ע<><D7A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", bResult != INVALID_SOCKET ? inet_ntoa(ClientAddr.sin_addr) : "");
|
||||
str.Format("%s - ע<><D7A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", m_IPAddress);
|
||||
SetWindowText(str);
|
||||
|
||||
m_ImageListTree.Create(18, 18, ILC_COLOR16,10, 0); //<2F><><EFBFBD><EFBFBD> <20><><EFBFBD>ؼ<EFBFBD><D8BC>ϵ<EFBFBD>ͼ<EFBFBD><CDBC>
|
||||
|
||||
m_hIcon = (HICON)::LoadImage(::AfxGetInstanceHandle(),MAKEINTRESOURCE(IDI_ICON_FATHER), IMAGE_ICON, 18, 18, 0);
|
||||
m_ImageListTree.Add(m_hIcon);
|
||||
m_hIcon = (HICON)::LoadImage(::AfxGetInstanceHandle(),MAKEINTRESOURCE(IDI_ICON_DIR), IMAGE_ICON, 18, 18, 0);
|
||||
m_ImageListTree.Add(m_hIcon);
|
||||
auto hIcon = (HICON)::LoadImage(::AfxGetInstanceHandle(),MAKEINTRESOURCE(IDI_ICON_FATHER), IMAGE_ICON, 18, 18, 0);
|
||||
m_ImageListTree.Add(hIcon);
|
||||
hIcon = (HICON)::LoadImage(::AfxGetInstanceHandle(),MAKEINTRESOURCE(IDI_ICON_DIR), IMAGE_ICON, 18, 18, 0);
|
||||
m_ImageListTree.Add(hIcon);
|
||||
|
||||
m_Tree.SetImageList(&m_ImageListTree,TVSIL_NORMAL);
|
||||
|
||||
@@ -107,16 +102,9 @@ BOOL CRegisterDlg::OnInitDialog()
|
||||
|
||||
void CRegisterDlg::OnClose()
|
||||
{
|
||||
#if CLOSE_DELETE_DLG
|
||||
m_ContextObject->v1 = 0;
|
||||
#endif
|
||||
CancelIo((HANDLE)m_ContextObject->sClientSocket);
|
||||
closesocket(m_ContextObject->sClientSocket);
|
||||
CDialog::OnClose();
|
||||
m_bIsClosed = TRUE;
|
||||
#if CLOSE_DELETE_DLG
|
||||
//delete this;//<2F>˴<EFBFBD>ͬ<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
#endif
|
||||
CancelIO();
|
||||
|
||||
DialogBase::OnClose();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -5,15 +5,14 @@
|
||||
|
||||
// CRegisterDlg <20>Ի<EFBFBD><D4BB><EFBFBD>
|
||||
|
||||
class CRegisterDlg : public CDialog
|
||||
class CRegisterDlg : public DialogBase
|
||||
{
|
||||
DECLARE_DYNAMIC(CRegisterDlg)
|
||||
|
||||
public:
|
||||
CRegisterDlg(CWnd* Parent, IOCPServer* IOCPServer=NULL, CONTEXT_OBJECT *ContextObject=NULL); // <20><><EFBFBD><D7BC><EFBFBD>캯<EFBFBD><ECBAAF>
|
||||
virtual ~CRegisterDlg();
|
||||
CONTEXT_OBJECT* m_ContextObject;
|
||||
IOCPServer* m_iocpServer;
|
||||
|
||||
// <20>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
enum { IDD = IDD_DIALOG_REGISTER };
|
||||
|
||||
@@ -22,13 +21,12 @@ protected:
|
||||
|
||||
DECLARE_MESSAGE_MAP()
|
||||
public:
|
||||
BOOL m_bIsClosed; // <20><><EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD>
|
||||
|
||||
BOOL m_bIsWorking;// <20><><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD>ע<EFBFBD><D7A2><EFBFBD><EFBFBD>
|
||||
CTreeCtrl m_Tree;
|
||||
CImageList m_ImageListTree; //<2F><><EFBFBD>ؼ<EFBFBD><D8BC>ϵ<EFBFBD>ͼ<EFBFBD><CDBC>
|
||||
CListCtrl m_ControlList;
|
||||
CImageList m_ImageListControlList; //ControlList<73>ϵ<EFBFBD>ͼ<EFBFBD><CDBC>
|
||||
HICON m_hIcon;
|
||||
virtual BOOL OnInitDialog();
|
||||
afx_msg void OnClose();
|
||||
HTREEITEM m_hRoot;
|
||||
|
||||
@@ -32,7 +32,7 @@ extern "C" void* x265_api_get_192() { return nullptr; }
|
||||
extern "C" char* __imp_strtok(char* str, const char* delim) { return strtok(str, delim); }
|
||||
|
||||
CScreenSpyDlg::CScreenSpyDlg(CWnd* Parent, IOCPServer* IOCPServer, CONTEXT_OBJECT* ContextObject)
|
||||
: CDialog(CScreenSpyDlg::IDD, Parent)
|
||||
: DialogBase(CScreenSpyDlg::IDD, Parent, IOCPServer, ContextObject, 0)
|
||||
{
|
||||
m_pCodec = nullptr;
|
||||
m_pCodecContext = nullptr;
|
||||
@@ -52,22 +52,12 @@ CScreenSpyDlg::CScreenSpyDlg(CWnd* Parent, IOCPServer* IOCPServer, CONTEXT_OBJEC
|
||||
ImmDisableIME(0);// 禁用输入法
|
||||
m_bFullScreen = FALSE;
|
||||
|
||||
m_iocpServer = IOCPServer;
|
||||
m_ContextObject = ContextObject;
|
||||
|
||||
CHAR szFullPath[MAX_PATH];
|
||||
GetSystemDirectory(szFullPath, MAX_PATH);
|
||||
lstrcat(szFullPath, "\\shell32.dll"); //图标
|
||||
m_hIcon = ExtractIcon(THIS_APP->m_hInstance, szFullPath, 17);
|
||||
m_hCursor = LoadCursor(THIS_APP->m_hInstance, MAKEINTRESOURCE(IDC_ARROWS));
|
||||
|
||||
sockaddr_in ClientAddr;
|
||||
memset(&ClientAddr, 0, sizeof(ClientAddr));
|
||||
int ulClientAddrLen = sizeof(sockaddr_in);
|
||||
BOOL bOk = getpeername(m_ContextObject->sClientSocket,(SOCKADDR*)&ClientAddr, &ulClientAddrLen);
|
||||
|
||||
m_strClientIP = bOk != INVALID_SOCKET ? inet_ntoa(ClientAddr.sin_addr) : "";
|
||||
|
||||
m_bIsFirst = TRUE;
|
||||
m_ulHScrollPos = 0;
|
||||
m_ulVScrollPos = 0;
|
||||
@@ -145,7 +135,7 @@ BOOL CScreenSpyDlg::OnInitDialog()
|
||||
SetIcon(m_hIcon,FALSE);
|
||||
|
||||
CString strString;
|
||||
strString.Format("%s - 远程桌面控制 %d×%d", m_strClientIP,
|
||||
strString.Format("%s - 远程桌面控制 %d×%d", m_IPAddress,
|
||||
m_BitmapInfor_Full->bmiHeader.biWidth, m_BitmapInfor_Full->bmiHeader.biHeight);
|
||||
SetWindowText(strString);
|
||||
|
||||
@@ -188,16 +178,9 @@ BOOL CScreenSpyDlg::OnInitDialog()
|
||||
|
||||
VOID CScreenSpyDlg::OnClose()
|
||||
{
|
||||
#if CLOSE_DELETE_DLG
|
||||
m_ContextObject->v1 = 0;
|
||||
#endif
|
||||
CancelIo((HANDLE)m_ContextObject->sClientSocket);
|
||||
closesocket(m_ContextObject->sClientSocket);
|
||||
CancelIO();
|
||||
|
||||
CDialog::OnClose();
|
||||
#if CLOSE_DELETE_DLG
|
||||
delete this;
|
||||
#endif
|
||||
DialogBase::OnClose();
|
||||
}
|
||||
|
||||
|
||||
@@ -578,7 +561,7 @@ VOID CScreenSpyDlg::SendCommand(const MSG64* Msg)
|
||||
|
||||
BOOL CScreenSpyDlg::SaveSnapshot(void)
|
||||
{
|
||||
CString strFileName = m_strClientIP + CTime::GetCurrentTime().Format("_%Y-%m-%d_%H-%M-%S.bmp");
|
||||
CString strFileName = m_IPAddress + CTime::GetCurrentTime().Format("_%Y-%m-%d_%H-%M-%S.bmp");
|
||||
CFileDialog Dlg(FALSE, "bmp", strFileName, OFN_OVERWRITEPROMPT, "位图文件(*.bmp)|*.bmp|", this);
|
||||
if(Dlg.DoModal () != IDOK)
|
||||
return FALSE;
|
||||
|
||||
@@ -38,7 +38,7 @@ extern "C"
|
||||
|
||||
// CScreenSpyDlg <20>Ի<EFBFBD><D4BB><EFBFBD>
|
||||
|
||||
class CScreenSpyDlg : public CDialog
|
||||
class CScreenSpyDlg : public DialogBase
|
||||
{
|
||||
DECLARE_DYNAMIC(CScreenSpyDlg)
|
||||
|
||||
@@ -46,9 +46,6 @@ 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;
|
||||
@@ -63,11 +60,9 @@ public:
|
||||
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; //<2F>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>ϵͳ<CFB5>Ĺ<EFBFBD><C4B9><EFBFBD><EFBFBD><EFBFBD>
|
||||
VOID SendCommand(const MSG64* Msg);
|
||||
|
||||
@@ -21,10 +21,8 @@ typedef struct ItemData1
|
||||
} ItemData1;
|
||||
|
||||
CServicesDlg::CServicesDlg(CWnd* pParent, IOCPServer* IOCPServer, CONTEXT_OBJECT *ContextObject)
|
||||
: CDialog(CServicesDlg::IDD, pParent)
|
||||
: DialogBase(CServicesDlg::IDD, pParent, IOCPServer, ContextObject, IDI_SERVICE)
|
||||
{
|
||||
m_ContextObject = ContextObject;
|
||||
m_iocpServer = IOCPServer;
|
||||
}
|
||||
|
||||
CServicesDlg::~CServicesDlg()
|
||||
@@ -41,6 +39,7 @@ void CServicesDlg::DoDataExchange(CDataExchange* pDX)
|
||||
|
||||
BEGIN_MESSAGE_MAP(CServicesDlg, CDialog)
|
||||
ON_WM_CLOSE()
|
||||
ON_WM_SIZE()
|
||||
ON_COMMAND(ID_SERVICES_AUTO, &CServicesDlg::OnServicesAuto)
|
||||
ON_COMMAND(ID_SERVICES_MANUAL, &CServicesDlg::OnServicesManual)
|
||||
ON_COMMAND(ID_SERVICES_STOP, &CServicesDlg::OnServicesStop)
|
||||
@@ -58,12 +57,10 @@ BOOL CServicesDlg::OnInitDialog()
|
||||
{
|
||||
CDialog::OnInitDialog();
|
||||
|
||||
SetIcon(m_hIcon, TRUE);
|
||||
SetIcon(m_hIcon, FALSE);
|
||||
CString strString;
|
||||
sockaddr_in ClientAddress;
|
||||
memset(&ClientAddress, 0, sizeof(ClientAddress));
|
||||
int iClientAddressLength = sizeof(ClientAddress);
|
||||
BOOL bResult = getpeername(m_ContextObject->sClientSocket, (SOCKADDR*)&ClientAddress, &iClientAddressLength);
|
||||
strString.Format("%s - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", bResult != INVALID_SOCKET ? inet_ntoa(ClientAddress.sin_addr) : "");
|
||||
strString.Format("%s - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",m_IPAddress);
|
||||
SetWindowText(strString);
|
||||
|
||||
m_ControlList.SetExtendedStyle( LVS_EX_FULLROWSELECT);
|
||||
@@ -120,17 +117,10 @@ int CServicesDlg::ShowServicesList(void)
|
||||
|
||||
void CServicesDlg::OnClose()
|
||||
{
|
||||
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD><C4AC>ֵ
|
||||
#if CLOSE_DELETE_DLG
|
||||
m_ContextObject->v1 = 0;
|
||||
#endif
|
||||
CancelIO();
|
||||
DeleteAllItems();
|
||||
CancelIo((HANDLE)m_ContextObject->sClientSocket);
|
||||
closesocket(m_ContextObject->sClientSocket);
|
||||
CDialog::OnClose();
|
||||
#if CLOSE_DELETE_DLG
|
||||
delete this;
|
||||
#endif
|
||||
|
||||
DialogBase::OnClose();
|
||||
}
|
||||
|
||||
|
||||
@@ -261,3 +251,18 @@ void CServicesDlg::ServicesConfig(BYTE bCmd)
|
||||
m_iocpServer->OnClientPreSending(m_ContextObject, szBuffer, LocalSize(szBuffer));
|
||||
LocalFree(szBuffer);
|
||||
}
|
||||
|
||||
void CServicesDlg::OnSize(UINT nType, int cx, int cy)
|
||||
{
|
||||
CDialog::OnSize(nType, cx, cy);
|
||||
|
||||
if (!m_ControlList.GetSafeHwnd()) return; // ȷ<><C8B7><EFBFBD>ؼ<EFBFBD><D8BC>Ѵ<EFBFBD><D1B4><EFBFBD>
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD>úʹ<C3BA>С
|
||||
CRect rc;
|
||||
m_ControlList.GetWindowRect(&rc);
|
||||
ScreenToClient(&rc);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ÿؼ<C3BF><D8BC><EFBFBD>С
|
||||
m_ControlList.MoveWindow(0, 0, cx, cy, TRUE);
|
||||
}
|
||||
|
||||
@@ -5,15 +5,14 @@
|
||||
|
||||
// CServicesDlg <20>Ի<EFBFBD><D4BB><EFBFBD>
|
||||
|
||||
class CServicesDlg : public CDialog
|
||||
class CServicesDlg : public DialogBase
|
||||
{
|
||||
DECLARE_DYNAMIC(CServicesDlg)
|
||||
|
||||
public:
|
||||
CServicesDlg(CWnd* pParent = NULL, IOCPServer* IOCPServer = NULL, CONTEXT_OBJECT *ContextObject = NULL); // <20><><EFBFBD><D7BC><EFBFBD>캯<EFBFBD><ECBAAF>
|
||||
virtual ~CServicesDlg();
|
||||
CONTEXT_OBJECT* m_ContextObject;
|
||||
IOCPServer* m_iocpServer;
|
||||
|
||||
int ShowServicesList(void);
|
||||
void OnReceiveComplete(void);
|
||||
void ServicesConfig(BYTE bCmd);
|
||||
@@ -41,4 +40,5 @@ public:
|
||||
afx_msg void OnServicesStart();
|
||||
afx_msg void OnServicesReflash();
|
||||
afx_msg void OnNMRClickList(NMHDR *pNMHDR, LRESULT *pResult);
|
||||
afx_msg void OnSize(UINT nType, int cx, int cy);
|
||||
};
|
||||
|
||||
@@ -26,12 +26,8 @@ void CAutoEndEdit::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags) {
|
||||
IMPLEMENT_DYNAMIC(CShellDlg, CDialog)
|
||||
|
||||
CShellDlg::CShellDlg(CWnd* pParent, IOCPServer* IOCPServer, CONTEXT_OBJECT *ContextObject)
|
||||
: CDialog(CShellDlg::IDD, pParent)
|
||||
: DialogBase(CShellDlg::IDD, pParent, IOCPServer, ContextObject, IDI_ICON_SHELL)
|
||||
{
|
||||
m_iocpServer = IOCPServer;
|
||||
m_ContextObject = ContextObject;
|
||||
|
||||
m_hIcon = LoadIcon(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDI_ICON_SHELL));
|
||||
}
|
||||
|
||||
CShellDlg::~CShellDlg()
|
||||
@@ -60,15 +56,11 @@ BOOL CShellDlg::OnInitDialog()
|
||||
CDialog::OnInitDialog();
|
||||
m_nCurSel = 0;
|
||||
m_nReceiveLength = 0;
|
||||
SetIcon(m_hIcon, TRUE);
|
||||
SetIcon(m_hIcon,FALSE);
|
||||
|
||||
CString str;
|
||||
sockaddr_in ClientAddr;
|
||||
memset(&ClientAddr, 0, sizeof(ClientAddr));
|
||||
int ClientAddrLen = sizeof(ClientAddr);
|
||||
BOOL bResult = getpeername(m_ContextObject->sClientSocket, (SOCKADDR*)&ClientAddr, &ClientAddrLen);
|
||||
|
||||
str.Format("%s - Զ<><D4B6><EFBFBD>ն<EFBFBD>", bResult != INVALID_SOCKET ? inet_ntoa(ClientAddr.sin_addr) : "");
|
||||
str.Format("%s - Զ<><D4B6><EFBFBD>ն<EFBFBD>", m_IPAddress);
|
||||
SetWindowText(str);
|
||||
|
||||
BYTE bToken = COMMAND_NEXT;
|
||||
@@ -150,16 +142,9 @@ VOID CShellDlg::AddKeyBoardData(void)
|
||||
|
||||
void CShellDlg::OnClose()
|
||||
{
|
||||
#if CLOSE_DELETE_DLG
|
||||
m_ContextObject->v1 = 0;
|
||||
#endif
|
||||
CancelIo((HANDLE)m_ContextObject->sClientSocket);
|
||||
closesocket(m_ContextObject->sClientSocket);
|
||||
CancelIO();
|
||||
|
||||
CDialog::OnClose();
|
||||
#if CLOSE_DELETE_DLG
|
||||
delete this;
|
||||
#endif
|
||||
DialogBase::OnClose();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -12,17 +12,16 @@ public:
|
||||
|
||||
// CShellDlg <20>Ի<EFBFBD><D4BB><EFBFBD>
|
||||
|
||||
class CShellDlg : public CDialog
|
||||
class CShellDlg : public DialogBase
|
||||
{
|
||||
DECLARE_DYNAMIC(CShellDlg)
|
||||
|
||||
public:
|
||||
CShellDlg(CWnd* pParent = NULL, IOCPServer* IOCPServer = NULL, CONTEXT_OBJECT *ContextObject = NULL);
|
||||
virtual ~CShellDlg();
|
||||
CONTEXT_OBJECT* m_ContextObject;
|
||||
IOCPServer* m_iocpServer;
|
||||
|
||||
VOID OnReceiveComplete();
|
||||
HICON m_hIcon;
|
||||
|
||||
UINT m_nReceiveLength;
|
||||
VOID AddKeyBoardData(void);
|
||||
int m_nCurSel; //<2F><><EFBFBD>õ<EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>;
|
||||
|
||||
@@ -21,11 +21,8 @@ typedef struct ItemData
|
||||
IMPLEMENT_DYNAMIC(CSystemDlg, CDialog)
|
||||
|
||||
CSystemDlg::CSystemDlg(CWnd* pParent, IOCPServer* IOCPServer, CONTEXT_OBJECT *ContextObject)
|
||||
: CDialog(CSystemDlg::IDD, pParent)
|
||||
: DialogBase(CSystemDlg::IDD, pParent, IOCPServer, ContextObject, IDI_SERVICE)
|
||||
{
|
||||
m_ContextObject = ContextObject;
|
||||
m_iocpServer = IOCPServer;
|
||||
|
||||
m_bHow= m_ContextObject->InDeCompressedBuffer.GetBYTE(0);
|
||||
}
|
||||
|
||||
@@ -42,6 +39,7 @@ void CSystemDlg::DoDataExchange(CDataExchange* pDX)
|
||||
|
||||
BEGIN_MESSAGE_MAP(CSystemDlg, CDialog)
|
||||
ON_WM_CLOSE()
|
||||
ON_WM_SIZE()
|
||||
ON_NOTIFY(NM_RCLICK, IDC_LIST_SYSTEM, &CSystemDlg::OnNMRClickListSystem)
|
||||
ON_NOTIFY(HDN_ITEMCLICK, 0, &CSystemDlg::OnHdnItemclickList)
|
||||
ON_COMMAND(ID_PLIST_KILL, &CSystemDlg::OnPlistKill)
|
||||
@@ -62,14 +60,12 @@ BOOL CSystemDlg::OnInitDialog()
|
||||
{
|
||||
CDialog::OnInitDialog();
|
||||
|
||||
SetIcon(m_hIcon, TRUE);
|
||||
SetIcon(m_hIcon, FALSE);
|
||||
CString str;
|
||||
sockaddr_in ClientAddr;
|
||||
memset(&ClientAddr, 0, sizeof(ClientAddr));
|
||||
int iSockAddrLength = sizeof(ClientAddr);
|
||||
BOOL bResult = getpeername(m_ContextObject->sClientSocket, (SOCKADDR*)&ClientAddr, &iSockAddrLength);
|
||||
m_bHow==TOKEN_PSLIST
|
||||
? str.Format("%s - <20><><EFBFBD>̹<EFBFBD><CCB9><EFBFBD>", bResult != INVALID_SOCKET ? inet_ntoa(ClientAddr.sin_addr) : "")
|
||||
:str.Format("%s - <20><><EFBFBD>ڹ<EFBFBD><DAB9><EFBFBD>", bResult != INVALID_SOCKET ? inet_ntoa(ClientAddr.sin_addr) : "");
|
||||
? str.Format("%s - <20><><EFBFBD>̹<EFBFBD><CCB9><EFBFBD>", m_IPAddress)
|
||||
:str.Format("%s - <20><><EFBFBD>ڹ<EFBFBD><DAB9><EFBFBD>", m_IPAddress);
|
||||
SetWindowText(str);//<2F><><EFBFBD>öԻ<C3B6><D4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
m_ControlList.SetExtendedStyle(LVS_EX_FLATSB | LVS_EX_FULLROWSELECT);
|
||||
@@ -164,17 +160,9 @@ void CSystemDlg::ShowProcessList(void)
|
||||
|
||||
void CSystemDlg::OnClose()
|
||||
{
|
||||
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD><C4AC>ֵ
|
||||
#if CLOSE_DELETE_DLG
|
||||
m_ContextObject->v1 = 0;
|
||||
#endif
|
||||
CancelIO();
|
||||
DeleteAllItems();
|
||||
CancelIo((HANDLE)m_ContextObject->sClientSocket);
|
||||
closesocket(m_ContextObject->sClientSocket);
|
||||
CDialog::OnClose();
|
||||
#if CLOSE_DELETE_DLG
|
||||
delete this;
|
||||
#endif
|
||||
DialogBase::OnClose();
|
||||
}
|
||||
|
||||
// <20>ͷ<EFBFBD><CDB7><EFBFBD>Դ<EFBFBD>Ժ<EFBFBD><D4BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
@@ -462,3 +450,18 @@ void CSystemDlg::OnWlistMin()
|
||||
m_iocpServer->OnClientPreSending(m_ContextObject, lpMsgBuf, sizeof(lpMsgBuf));
|
||||
}
|
||||
}
|
||||
|
||||
void CSystemDlg::OnSize(UINT nType, int cx, int cy)
|
||||
{
|
||||
CDialog::OnSize(nType, cx, cy);
|
||||
|
||||
if (!m_ControlList.GetSafeHwnd()) return; // ȷ<><C8B7><EFBFBD>ؼ<EFBFBD><D8BC>Ѵ<EFBFBD><D1B4><EFBFBD>
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD>úʹ<C3BA>С
|
||||
CRect rc;
|
||||
m_ControlList.GetWindowRect(&rc);
|
||||
ScreenToClient(&rc);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ÿؼ<C3BF><D8BC><EFBFBD>С
|
||||
m_ControlList.MoveWindow(0, 0, cx, cy, TRUE);
|
||||
}
|
||||
|
||||
@@ -4,15 +4,14 @@
|
||||
#include "IOCPServer.h"
|
||||
// CSystemDlg <20>Ի<EFBFBD><D4BB><EFBFBD>
|
||||
|
||||
class CSystemDlg : public CDialog
|
||||
class CSystemDlg : public DialogBase
|
||||
{
|
||||
DECLARE_DYNAMIC(CSystemDlg)
|
||||
|
||||
public:
|
||||
CSystemDlg(CWnd* pParent = NULL, IOCPServer* IOCPServer = NULL, CONTEXT_OBJECT *ContextObject = NULL);
|
||||
virtual ~CSystemDlg();
|
||||
CONTEXT_OBJECT* m_ContextObject;
|
||||
IOCPServer* m_iocpServer;
|
||||
|
||||
VOID GetProcessList(void);
|
||||
VOID ShowProcessList(void);
|
||||
void ShowWindowsList(void);
|
||||
@@ -45,4 +44,5 @@ public:
|
||||
afx_msg void OnWlistRecover();
|
||||
afx_msg void OnWlistMax();
|
||||
afx_msg void OnWlistMin();
|
||||
afx_msg void OnSize(UINT nType, int cx, int cy);
|
||||
};
|
||||
|
||||
@@ -11,10 +11,8 @@
|
||||
IMPLEMENT_DYNAMIC(CTalkDlg, CDialog)
|
||||
|
||||
CTalkDlg::CTalkDlg(CWnd* pParent,IOCPServer* IOCPServer, CONTEXT_OBJECT* ContextObject)
|
||||
: CDialog(CTalkDlg::IDD, pParent)
|
||||
: DialogBase(CTalkDlg::IDD, pParent, IOCPServer, ContextObject, IDR_MAINFRAME)
|
||||
{
|
||||
m_iocpServer = IOCPServer;
|
||||
m_ContextObject = ContextObject;
|
||||
}
|
||||
|
||||
CTalkDlg::~CTalkDlg()
|
||||
@@ -42,7 +40,6 @@ BOOL CTalkDlg::OnInitDialog()
|
||||
{
|
||||
CDialog::OnInitDialog();
|
||||
|
||||
m_hIcon = LoadIcon(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDR_MAINFRAME));
|
||||
SetIcon(m_hIcon, FALSE);
|
||||
BYTE bToken = COMMAND_NEXT;
|
||||
m_iocpServer->OnClientPreSending(m_ContextObject, &bToken, sizeof(BYTE));
|
||||
@@ -95,14 +92,7 @@ BOOL CTalkDlg::PreTranslateMessage(MSG* pMsg)
|
||||
|
||||
void CTalkDlg::OnClose()
|
||||
{
|
||||
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD><C4AC>ֵ
|
||||
#if CLOSE_DELETE_DLG
|
||||
m_ContextObject->v1 = 0;
|
||||
#endif
|
||||
CancelIo((HANDLE)m_ContextObject->sClientSocket);
|
||||
closesocket(m_ContextObject->sClientSocket);
|
||||
CDialog::OnClose();
|
||||
#if CLOSE_DELETE_DLG
|
||||
delete this;
|
||||
#endif
|
||||
CancelIO();
|
||||
|
||||
DialogBase::OnClose();
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
// CTalkDlg <20>Ի<EFBFBD><D4BB><EFBFBD>
|
||||
|
||||
class CTalkDlg : public CDialog
|
||||
class CTalkDlg : public DialogBase
|
||||
{
|
||||
DECLARE_DYNAMIC(CTalkDlg)
|
||||
|
||||
@@ -14,9 +14,10 @@ public:
|
||||
|
||||
// <20>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
enum { IDD = IDD_DIALOG_TALK };
|
||||
CONTEXT_OBJECT* m_ContextObject;
|
||||
IOCPServer* m_iocpServer;
|
||||
HICON m_hIcon;
|
||||
|
||||
void OnReceiveComplete(void){
|
||||
}
|
||||
|
||||
protected:
|
||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV ֧<><D6A7>
|
||||
|
||||
|
||||
@@ -91,7 +91,7 @@ void CVideoDlg::SaveAvi(void)
|
||||
return;
|
||||
}
|
||||
|
||||
CString strFileName = m_strIPAddress + CTime::GetCurrentTime().Format("_%Y-%m-%d_%H-%M-%S.avi");
|
||||
CString strFileName = m_IPAddress + CTime::GetCurrentTime().Format("_%Y-%m-%d_%H-%M-%S.avi");
|
||||
CFileDialog dlg(FALSE, "avi", strFileName, OFN_OVERWRITEPROMPT, "<EFBFBD><EFBFBD>Ƶ<EFBFBD>ļ<EFBFBD>(*.avi)|*.avi|", this);
|
||||
if(dlg.DoModal () != IDOK)
|
||||
return;
|
||||
@@ -109,19 +109,12 @@ void CVideoDlg::SaveAvi(void)
|
||||
|
||||
|
||||
CVideoDlg::CVideoDlg(CWnd* pParent, IOCPServer* IOCPServer, CONTEXT_OBJECT *ContextObject)
|
||||
: CDialog(CVideoDlg::IDD, pParent)
|
||||
: DialogBase(CVideoDlg::IDD, pParent, IOCPServer, ContextObject, IDI_ICON_CAMERA)
|
||||
{
|
||||
m_nCount = 0;
|
||||
m_aviFile.Empty();
|
||||
m_ContextObject = ContextObject;
|
||||
m_iocpServer = IOCPServer;
|
||||
m_BitmapInfor_Full = NULL;
|
||||
m_pVideoCodec = NULL;
|
||||
sockaddr_in ClientAddress;
|
||||
memset(&ClientAddress, 0, sizeof(ClientAddress));
|
||||
int iClientAddressLength = sizeof(ClientAddress);
|
||||
BOOL bResult = getpeername(m_ContextObject->sClientSocket, (SOCKADDR*)&ClientAddress, &iClientAddressLength);
|
||||
m_strIPAddress = bResult != INVALID_SOCKET ? inet_ntoa(ClientAddress.sin_addr) : "";
|
||||
|
||||
m_BitmapData_Full = NULL;
|
||||
m_BitmapCompressedData_Full = NULL;
|
||||
@@ -209,7 +202,7 @@ BOOL CVideoDlg::OnInitDialog()
|
||||
|
||||
CString strString;
|
||||
|
||||
strString.Format("%s - <20><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD> %d<><64>%d", m_strIPAddress, m_BitmapInfor_Full->bmiHeader.biWidth, m_BitmapInfor_Full->bmiHeader.biHeight);
|
||||
strString.Format("%s - <20><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD> %d<><64>%d", m_IPAddress, m_BitmapInfor_Full->bmiHeader.biWidth, m_BitmapInfor_Full->bmiHeader.biHeight);
|
||||
|
||||
SetWindowText(strString);
|
||||
|
||||
@@ -218,7 +211,6 @@ BOOL CVideoDlg::OnInitDialog()
|
||||
m_iocpServer->OnClientPreSending(m_ContextObject, &bToken, sizeof(BYTE));
|
||||
}
|
||||
|
||||
m_hIcon = LoadIcon(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDI_ICON_CAMERA));
|
||||
SetIcon(m_hIcon, TRUE);
|
||||
SetIcon(m_hIcon, FALSE);
|
||||
|
||||
@@ -232,16 +224,10 @@ void CVideoDlg::OnClose()
|
||||
SaveAvi();
|
||||
m_aviFile.Empty();
|
||||
}
|
||||
#if CLOSE_DELETE_DLG
|
||||
m_ContextObject->v1 = 0;
|
||||
#endif
|
||||
CancelIo((HANDLE)m_ContextObject->sClientSocket);
|
||||
closesocket(m_ContextObject->sClientSocket);
|
||||
|
||||
CDialog::OnClose();
|
||||
#if CLOSE_DELETE_DLG
|
||||
delete this;
|
||||
#endif
|
||||
CancelIO();
|
||||
|
||||
DialogBase::OnClose();
|
||||
}
|
||||
|
||||
void CVideoDlg::OnReceiveComplete(void)
|
||||
|
||||
@@ -158,17 +158,13 @@ public:
|
||||
|
||||
// CVideoDlg <20>Ի<EFBFBD><D4BB><EFBFBD>
|
||||
|
||||
class CVideoDlg : public CDialog
|
||||
class CVideoDlg : public DialogBase
|
||||
{
|
||||
DECLARE_DYNAMIC(CVideoDlg)
|
||||
HICON m_hIcon;
|
||||
|
||||
public:
|
||||
CVideoDlg(CWnd* pParent = NULL, IOCPServer* IOCPServer = NULL, CONTEXT_OBJECT *ContextObject = NULL); // <20><><EFBFBD><D7BC><EFBFBD>캯<EFBFBD><ECBAAF>
|
||||
virtual ~CVideoDlg();
|
||||
CONTEXT_OBJECT* m_ContextObject;
|
||||
IOCPServer* m_iocpServer;
|
||||
CString m_strIPAddress;
|
||||
|
||||
LPBITMAPINFO m_BitmapInfor_Full;
|
||||
BYTE* m_BitmapData_Full;
|
||||
|
||||
@@ -25,23 +25,19 @@ static UINT indicators[] = {
|
||||
using namespace file;
|
||||
|
||||
CFileManagerDlg::CFileManagerDlg(CWnd* pParent, ISocketBase* pIOCPServer, ClientContext* pContext)
|
||||
: DialogBase(CFileManagerDlg::IDD, pParent, pIOCPServer, pContext, 0)
|
||||
: DialogBase(CFileManagerDlg::IDD, pParent, pIOCPServer, pContext, IDI_File)
|
||||
{
|
||||
m_ProgressCtrl = nullptr;
|
||||
m_SearchStr = _T("");
|
||||
m_bSubFordle = FALSE;
|
||||
m_bOnClose = 0;
|
||||
id_search_result = 0;
|
||||
m_iocpServer = pIOCPServer;
|
||||
m_pContext = pContext;
|
||||
m_IPAddress = m_pContext->PeerName.c_str();
|
||||
m_hIcon = LoadIcon(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDI_File)); //<2F><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>
|
||||
|
||||
// <20><><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>
|
||||
m_bCanAdmin = (*m_pContext->m_DeCompressionBuffer.GetBuffer(1)) == 0x01;
|
||||
m_strDesktopPath = (TCHAR*)m_pContext->m_DeCompressionBuffer.GetBuffer(2);
|
||||
m_bCanAdmin = (*m_ContextObject->m_DeCompressionBuffer.GetBuffer(1)) == 0x01;
|
||||
m_strDesktopPath = (TCHAR*)m_ContextObject->m_DeCompressionBuffer.GetBuffer(2);
|
||||
memset(m_bRemoteDriveList, 0, sizeof(m_bRemoteDriveList));
|
||||
memcpy(m_bRemoteDriveList, m_pContext->m_DeCompressionBuffer.GetBuffer(1 + 1 + (m_strDesktopPath.GetLength() + 1) * sizeof(TCHAR)),
|
||||
m_pContext->m_DeCompressionBuffer.GetBufferLen() - 1 - 1 - (m_strDesktopPath.GetLength() + 1) * sizeof(TCHAR));
|
||||
memcpy(m_bRemoteDriveList, m_ContextObject->m_DeCompressionBuffer.GetBuffer(1 + 1 + (m_strDesktopPath.GetLength() + 1) * sizeof(TCHAR)),
|
||||
m_ContextObject->m_DeCompressionBuffer.GetBufferLen() - 1 - 1 - (m_strDesktopPath.GetLength() + 1) * sizeof(TCHAR));
|
||||
|
||||
m_bUseAdmin = false;
|
||||
m_hFileSend = INVALID_HANDLE_VALUE;
|
||||
@@ -163,7 +159,7 @@ BOOL CFileManagerDlg::OnInitDialog()
|
||||
|
||||
// <20><><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD>
|
||||
CString str;
|
||||
str.Format(_T("<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - %s"), m_pContext->PeerName.c_str()), SetWindowText(str);
|
||||
str.Format(_T("<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - %s"), m_ContextObject->PeerName.c_str()), SetWindowText(str);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC>
|
||||
if (!m_wndStatusBar.Create(this) ||
|
||||
@@ -195,24 +191,11 @@ BOOL CFileManagerDlg::OnInitDialog()
|
||||
m_list_remote.SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_ONECLICKACTIVATE | LVS_EX_SUBITEMIMAGES | LVS_EX_GRIDLINES | LVS_SHAREIMAGELISTS);
|
||||
m_list_remote_search.SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_ONECLICKACTIVATE | LVS_EX_SUBITEMIMAGES | LVS_EX_GRIDLINES | LVS_SHAREIMAGELISTS);
|
||||
|
||||
//<2F><><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><D0B1>ؼ<EFBFBD><D8BC>Ĵ<EFBFBD>Сͼ<D0A1><CDBC>
|
||||
static bool init = false;
|
||||
static CImageList m_pImageList_Large; //ϵͳ<CFB5><CDB3>ͼ<EFBFBD><CDBC>
|
||||
static CImageList m_pImageList_Small; //ϵͳСͼ<D0A1><CDBC>
|
||||
if (!init) {
|
||||
init = true;
|
||||
SHFILEINFO sfi = {};
|
||||
HIMAGELIST hImageList = (HIMAGELIST)SHGetFileInfo((LPCTSTR)_T(""), 0, &sfi, sizeof(SHFILEINFO), SHGFI_LARGEICON | SHGFI_SYSICONINDEX);
|
||||
m_pImageList_Large.Attach(hImageList);
|
||||
hImageList = (HIMAGELIST)SHGetFileInfo((LPCTSTR)_T(""), 0, &sfi, sizeof(SHFILEINFO), SHGFI_SMALLICON | SHGFI_SYSICONINDEX);
|
||||
m_pImageList_Small.Attach(hImageList);
|
||||
}
|
||||
m_list_remote.SetImageList(&(THIS_APP->m_pImageList_Large), LVSIL_NORMAL);
|
||||
m_list_remote.SetImageList(&(THIS_APP->m_pImageList_Small), LVSIL_SMALL);
|
||||
|
||||
m_list_remote.SetImageList(&m_pImageList_Large, LVSIL_NORMAL);
|
||||
m_list_remote.SetImageList(&m_pImageList_Small, LVSIL_SMALL);
|
||||
|
||||
m_list_remote_search.SetImageList(&m_pImageList_Large, LVSIL_NORMAL);
|
||||
m_list_remote_search.SetImageList(&m_pImageList_Small, LVSIL_SMALL);
|
||||
m_list_remote_search.SetImageList(&(THIS_APP->m_pImageList_Large), LVSIL_NORMAL);
|
||||
m_list_remote_search.SetImageList(&(THIS_APP->m_pImageList_Small), LVSIL_SMALL);
|
||||
|
||||
m_list_remote_driver.InsertColumn(0, _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"), LVCFMT_LEFT, 50);
|
||||
m_list_remote_driver.InsertColumn(1, _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"), LVCFMT_LEFT, 38);
|
||||
@@ -485,7 +468,7 @@ void CFileManagerDlg::FixedRemoteDriveList()
|
||||
SendMessageTimeout(m_wndStatusBar.GetSafeHwnd(), SB_SETTEXT, 2, NULL, SMTO_ABORTIFHUNG | SMTO_BLOCK, 500, &dwResult);
|
||||
|
||||
BYTE bPacket = COMMAND_FILE_GETNETHOOD;
|
||||
m_iocpServer->Send(m_pContext, &bPacket, 1);
|
||||
m_iocpServer->Send(m_ContextObject, &bPacket, 1);
|
||||
}
|
||||
|
||||
void CFileManagerDlg::fixNetHood(BYTE* pbuffer, int buffersize)
|
||||
@@ -509,10 +492,9 @@ void CFileManagerDlg::fixNetHood(BYTE* pbuffer, int buffersize)
|
||||
|
||||
void CFileManagerDlg::OnClose()
|
||||
{
|
||||
if (m_bOnClose) return;
|
||||
m_bOnClose = TRUE;
|
||||
CancelIo((HANDLE)m_ContextObject->sClientSocket);
|
||||
closesocket(m_ContextObject->sClientSocket);
|
||||
if (m_bIsClosed) return;
|
||||
|
||||
CancelIO();
|
||||
|
||||
DestroyIcon(m_hIcon);
|
||||
|
||||
@@ -541,8 +523,7 @@ void CFileManagerDlg::OnClose()
|
||||
m_ProgressCtrl->DestroyWindow();
|
||||
SAFE_DELETE(m_ProgressCtrl);
|
||||
|
||||
if (IsWindow(m_hWnd))
|
||||
DestroyWindow();
|
||||
DialogBase::OnClose();
|
||||
}
|
||||
|
||||
CString CFileManagerDlg::GetParentDirectory(CString strPath)
|
||||
@@ -567,10 +548,10 @@ CString CFileManagerDlg::GetParentDirectory(CString strPath)
|
||||
|
||||
void CFileManagerDlg::OnReceiveComplete()
|
||||
{
|
||||
if (m_bOnClose) return;
|
||||
switch (m_pContext->m_DeCompressionBuffer.GetBuffer(0)[0]) {
|
||||
if (m_bIsClosed) return;
|
||||
switch (m_ContextObject->m_DeCompressionBuffer.GetBuffer(0)[0]) {
|
||||
case TOKEN_FILE_LIST: // <20>ļ<EFBFBD><C4BC>б<EFBFBD>
|
||||
FixedRemoteFileList(m_pContext->m_DeCompressionBuffer.GetBuffer(0), m_pContext->m_DeCompressionBuffer.GetBufferLen() - 1);
|
||||
FixedRemoteFileList(m_ContextObject->m_DeCompressionBuffer.GetBuffer(0), m_ContextObject->m_DeCompressionBuffer.GetBufferLen() - 1);
|
||||
break;
|
||||
case TOKEN_FILE_SIZE: // <20><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>ʱ<EFBFBD>ĵ<EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>ݰ<EFBFBD><DDB0><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>
|
||||
CreateLocalRecvFile();
|
||||
@@ -600,8 +581,8 @@ void CFileManagerDlg::OnReceiveComplete()
|
||||
case TOKEN_SEARCH_FILE_LIST:
|
||||
FixedRemoteSearchFileList
|
||||
(
|
||||
m_pContext->m_DeCompressionBuffer.GetBuffer(0),
|
||||
m_pContext->m_DeCompressionBuffer.GetBufferLen() - 1
|
||||
m_ContextObject->m_DeCompressionBuffer.GetBuffer(0),
|
||||
m_ContextObject->m_DeCompressionBuffer.GetBufferLen() - 1
|
||||
);
|
||||
break;
|
||||
case TOKEN_SEARCH_FILE_FINISH:
|
||||
@@ -611,17 +592,17 @@ void CFileManagerDlg::OnReceiveComplete()
|
||||
GetRemoteFileList(_T("."));
|
||||
break;
|
||||
case TOKEN_FILE_GETNETHOOD:
|
||||
fixNetHood(m_pContext->m_DeCompressionBuffer.GetBuffer(1), m_pContext->m_DeCompressionBuffer.GetBufferLen() - 1);
|
||||
fixNetHood(m_ContextObject->m_DeCompressionBuffer.GetBuffer(1), m_ContextObject->m_DeCompressionBuffer.GetBufferLen() - 1);
|
||||
break;
|
||||
case TOKEN_FILE_RECENT: {
|
||||
CString strRecent = (TCHAR*)m_pContext->m_DeCompressionBuffer.GetBuffer(1);
|
||||
CString strRecent = (TCHAR*)m_ContextObject->m_DeCompressionBuffer.GetBuffer(1);
|
||||
m_Remote_Directory_ComboBox.SetWindowText(strRecent);
|
||||
m_list_remote.SetSelectionMark(-1);
|
||||
GetRemoteFileList();
|
||||
}
|
||||
break;
|
||||
case TOKEN_FILE_INFO: {
|
||||
CString szInfo = (TCHAR*)m_pContext->m_DeCompressionBuffer.GetBuffer(1);
|
||||
CString szInfo = (TCHAR*)m_ContextObject->m_DeCompressionBuffer.GetBuffer(1);
|
||||
if (MessageBox(szInfo, _T("·<EFBFBD><EFBFBD> ȷ<>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>а<EFBFBD>"), MB_ICONEXCLAMATION | MB_YESNO) == IDYES) {
|
||||
CStringA a;
|
||||
a = szInfo;
|
||||
@@ -680,7 +661,7 @@ void CFileManagerDlg::OnReceiveComplete()
|
||||
case TOKEN_FILE_SEARCHPLUS_NUMBER: {
|
||||
DWORD_PTR dwResult;
|
||||
int i;
|
||||
memcpy(&i, m_pContext->m_DeCompressionBuffer.GetBuffer() + 1, sizeof(int));
|
||||
memcpy(&i, m_ContextObject->m_DeCompressionBuffer.GetBuffer() + 1, sizeof(int));
|
||||
CString strMsgShow;
|
||||
strMsgShow.Format(_T("<EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> %d <20><><EFBFBD><EFBFBD><EFBFBD>ٴ<EFBFBD><D9B4><EFBFBD><EFBFBD><EFBFBD>"), i);
|
||||
SendMessageTimeout(m_wndStatusBar.GetSafeHwnd(), SB_SETTEXT, 2, (LPARAM)(strMsgShow.GetBuffer()), SMTO_ABORTIFHUNG | SMTO_BLOCK, 500, &dwResult);
|
||||
@@ -735,7 +716,7 @@ void CFileManagerDlg::GetRemoteFileList(CString directory)
|
||||
|
||||
bPacket[0] = COMMAND_LIST_FILES;
|
||||
memcpy(bPacket + 1, m_Remote_Path.GetBuffer(0), PacketSize - 1);
|
||||
m_iocpServer->Send(m_pContext, bPacket, PacketSize);
|
||||
m_iocpServer->Send(m_ContextObject, bPacket, PacketSize);
|
||||
LocalFree(bPacket);
|
||||
|
||||
m_Remote_Directory_ComboBox.InsertString(0, m_Remote_Path);
|
||||
@@ -762,7 +743,7 @@ void CFileManagerDlg::OnDblclkListRemote(NMHDR* pNMHDR, LRESULT* pResult)
|
||||
BYTE* bPacket = (BYTE*)LocalAlloc(LPTR, PacketSize);
|
||||
bPacket[0] = COMMAND_FILE_GETINFO;
|
||||
memcpy(bPacket + 1, filename.GetBuffer(0), PacketSize - 1);
|
||||
m_iocpServer->Send(m_pContext, bPacket, PacketSize);
|
||||
m_iocpServer->Send(m_ContextObject, bPacket, PacketSize);
|
||||
LocalFree(bPacket);
|
||||
}
|
||||
return;
|
||||
@@ -787,7 +768,7 @@ void CFileManagerDlg::OnDblclkListRemotedriver(NMHDR* pNMHDR, LRESULT* pResult)
|
||||
}
|
||||
if (directory.Compare(_T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>")) == 0) {
|
||||
BYTE byToken = COMMAND_FILE_RECENT;
|
||||
m_iocpServer->Send(m_pContext, &byToken, 1);
|
||||
m_iocpServer->Send(m_ContextObject, &byToken, 1);
|
||||
return;
|
||||
}
|
||||
m_Remote_Path = directory;
|
||||
@@ -797,7 +778,7 @@ void CFileManagerDlg::OnDblclkListRemotedriver(NMHDR* pNMHDR, LRESULT* pResult)
|
||||
|
||||
bPacket[0] = COMMAND_LIST_FILES;
|
||||
memcpy(bPacket + 1, directory.GetBuffer(0), PacketSize - 1);
|
||||
m_iocpServer->Send(m_pContext, bPacket, PacketSize);
|
||||
m_iocpServer->Send(m_ContextObject, bPacket, PacketSize);
|
||||
LocalFree(bPacket);
|
||||
|
||||
m_Remote_Directory_ComboBox.InsertString(0, directory);
|
||||
@@ -955,7 +936,7 @@ void CFileManagerDlg::OnRemoteView()
|
||||
void CFileManagerDlg::OnRemoteRecent()
|
||||
{
|
||||
BYTE byToken = COMMAND_FILE_RECENT;
|
||||
m_iocpServer->Send(m_pContext, &byToken, 1);
|
||||
m_iocpServer->Send(m_ContextObject, &byToken, 1);
|
||||
}
|
||||
|
||||
void CFileManagerDlg::OnRemoteDesktop()
|
||||
@@ -1149,7 +1130,7 @@ BOOL CFileManagerDlg::SendDownloadJob()
|
||||
|
||||
// <20>ļ<EFBFBD>ƫ<EFBFBD>ƣ<EFBFBD><C6A3><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
|
||||
memcpy(bPacket + 1, file.GetBuffer(0), (file.GetLength() + 1) * sizeof(TCHAR));
|
||||
m_iocpServer->Send(m_pContext, bPacket, nPacketSize);
|
||||
m_iocpServer->Send(m_ContextObject, bPacket, nPacketSize);
|
||||
LocalFree(bPacket);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><D0B1><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD>Լ<EFBFBD>
|
||||
@@ -1211,7 +1192,7 @@ BOOL CFileManagerDlg::SendUploadJob()
|
||||
memcpy(bPacket + 1, &dwSizeHigh, sizeof(DWORD));
|
||||
memcpy(bPacket + 5, &dwSizeLow, sizeof(DWORD));
|
||||
memcpy(bPacket + 9, fileRemote.GetBuffer(0), (fileRemote.GetLength() + 1) * sizeof(TCHAR));
|
||||
m_iocpServer->Send(m_pContext, bPacket, nPacketSize);
|
||||
m_iocpServer->Send(m_ContextObject, bPacket, nPacketSize);
|
||||
LocalFree(bPacket);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><D0B1><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD>Լ<EFBFBD>
|
||||
@@ -1239,7 +1220,7 @@ BOOL CFileManagerDlg::SendDeleteJob()
|
||||
|
||||
// <20>ļ<EFBFBD>ƫ<EFBFBD>ƣ<EFBFBD><C6A3><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
|
||||
memcpy(bPacket + 1, file.GetBuffer(0), nPacketSize - 1);
|
||||
m_iocpServer->Send(m_pContext, bPacket, nPacketSize);
|
||||
m_iocpServer->Send(m_ContextObject, bPacket, nPacketSize);
|
||||
LocalFree(bPacket);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><D0B1><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD>Լ<EFBFBD>
|
||||
@@ -1254,7 +1235,7 @@ void CFileManagerDlg::CreateLocalRecvFile()
|
||||
// <20><><EFBFBD>ü<EFBFBD><C3BC><EFBFBD><EFBFBD><EFBFBD>
|
||||
m_nCounter = 0;
|
||||
|
||||
FILESIZE* pFileSize = (FILESIZE*)(m_pContext->m_DeCompressionBuffer.GetBuffer(1));
|
||||
FILESIZE* pFileSize = (FILESIZE*)(m_ContextObject->m_DeCompressionBuffer.GetBuffer(1));
|
||||
DWORD dwSizeHigh = pFileSize->dwSizeHigh;
|
||||
DWORD dwSizeLow = pFileSize->dwSizeLow;
|
||||
if (pFileSize->error==FALSE) {
|
||||
@@ -1264,7 +1245,7 @@ void CFileManagerDlg::CreateLocalRecvFile()
|
||||
m_nOperatingFileLength = ((__int64)dwSizeHigh << 32) + dwSizeLow;
|
||||
|
||||
// <20><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>
|
||||
m_strOperatingFile = (TCHAR*)(m_pContext->m_DeCompressionBuffer.GetBuffer(9));
|
||||
m_strOperatingFile = (TCHAR*)(m_ContextObject->m_DeCompressionBuffer.GetBuffer(9));
|
||||
|
||||
m_strReceiveLocalFile = m_strOperatingFile;
|
||||
|
||||
@@ -1394,7 +1375,7 @@ void CFileManagerDlg::CreateLocalRecvFile()
|
||||
SendStop(TRUE);
|
||||
else {
|
||||
// <20><><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>token,<2C><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƫ<EFBFBD><C6AB>
|
||||
m_iocpServer->Send(m_pContext, bToken, sizeof(bToken));
|
||||
m_iocpServer->Send(m_ContextObject, bToken, sizeof(bToken));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1408,9 +1389,9 @@ void CFileManagerDlg::WriteLocalRecvFile()
|
||||
int nHeadLength = 9; // 1 + 4 + 4 <20><><EFBFBD>ݰ<EFBFBD>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD>С<EFBFBD><D0A1>Ϊ<EFBFBD>̶<EFBFBD><CCB6><EFBFBD>9
|
||||
FILESIZE* pFileSize;
|
||||
// <20>õ<EFBFBD><C3B5><EFBFBD><EFBFBD>ݵ<EFBFBD>ƫ<EFBFBD><C6AB>
|
||||
pData = m_pContext->m_DeCompressionBuffer.GetBuffer(nHeadLength);
|
||||
pData = m_ContextObject->m_DeCompressionBuffer.GetBuffer(nHeadLength);
|
||||
|
||||
pFileSize = (FILESIZE*)m_pContext->m_DeCompressionBuffer.GetBuffer(1);
|
||||
pFileSize = (FILESIZE*)m_ContextObject->m_DeCompressionBuffer.GetBuffer(1);
|
||||
// <20>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC>е<EFBFBD>ƫ<EFBFBD><C6AB>, <20><>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
//m_nCounter = MAKEINT64(pFileSize->dwSizeLow, pFileSize->dwSizeHigh);
|
||||
|
||||
@@ -1428,7 +1409,7 @@ void CFileManagerDlg::WriteLocalRecvFile()
|
||||
Bf_dwOffsetHighs = dwOffsetHigh;
|
||||
Bf_dwOffsetLows = dwOffsetLow;
|
||||
|
||||
dwBytesToWrite = m_pContext->m_DeCompressionBuffer.GetBufferLen() - nHeadLength;
|
||||
dwBytesToWrite = m_ContextObject->m_DeCompressionBuffer.GetBufferLen() - nHeadLength;
|
||||
|
||||
SetFilePointer(m_hFileRecv, dwOffsetLow, &dwOffsetHigh, FILE_BEGIN);
|
||||
|
||||
@@ -1457,7 +1438,7 @@ void CFileManagerDlg::WriteLocalRecvFile()
|
||||
bToken[0] = COMMAND_CONTINUE;
|
||||
memcpy(bToken + 1, &dwOffsetHigh, sizeof(dwOffsetHigh));
|
||||
memcpy(bToken + 5, &dwOffsetLow, sizeof(dwOffsetLow));
|
||||
m_iocpServer->Send(m_pContext, bToken, sizeof(bToken));
|
||||
m_iocpServer->Send(m_ContextObject, bToken, sizeof(bToken));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1552,13 +1533,13 @@ void CFileManagerDlg::EndRemoteDeleteFile()
|
||||
void CFileManagerDlg::SendException()
|
||||
{
|
||||
BYTE bBuff = COMMAND_FILE_EXCEPTION;
|
||||
m_iocpServer->Send(m_pContext, &bBuff, 1);
|
||||
m_iocpServer->Send(m_ContextObject, &bBuff, 1);
|
||||
}
|
||||
|
||||
void CFileManagerDlg::SendContinue()
|
||||
{
|
||||
BYTE bBuff = COMMAND_CONTINUE;
|
||||
m_iocpServer->Send(m_pContext, &bBuff, 1);
|
||||
m_iocpServer->Send(m_ContextObject, &bBuff, 1);
|
||||
}
|
||||
|
||||
void CFileManagerDlg::SendStop(BOOL bIsDownload)
|
||||
@@ -1570,7 +1551,7 @@ void CFileManagerDlg::SendStop(BOOL bIsDownload)
|
||||
BYTE bBuff[2];
|
||||
bBuff[0] = COMMAND_STOP;
|
||||
bBuff[1] = bIsDownload;
|
||||
m_iocpServer->Send(m_pContext, bBuff, sizeof(bBuff));
|
||||
m_iocpServer->Send(m_ContextObject, bBuff, sizeof(bBuff));
|
||||
}
|
||||
|
||||
void CFileManagerDlg::ShowProgress()
|
||||
@@ -1644,7 +1625,7 @@ void CFileManagerDlg::OnRemoteStop()
|
||||
|
||||
void CFileManagerDlg::PostNcDestroy()
|
||||
{
|
||||
if (!m_bOnClose)
|
||||
if (!m_bIsClosed)
|
||||
OnClose();
|
||||
CDialog::PostNcDestroy();
|
||||
delete this;
|
||||
@@ -1686,12 +1667,12 @@ void CFileManagerDlg::SendTransferMode()
|
||||
BYTE bToken[5];
|
||||
bToken[0] = COMMAND_SET_TRANSFER_MODE;
|
||||
memcpy(bToken + 1, &m_nTransferMode, sizeof(m_nTransferMode));
|
||||
m_iocpServer->Send(m_pContext, bToken, sizeof(bToken));
|
||||
m_iocpServer->Send(m_ContextObject, bToken, sizeof(bToken));
|
||||
}
|
||||
|
||||
void CFileManagerDlg::SendFileData()
|
||||
{
|
||||
FILESIZE* pFileSize = (FILESIZE*)(m_pContext->m_DeCompressionBuffer.GetBuffer(1));
|
||||
FILESIZE* pFileSize = (FILESIZE*)(m_ContextObject->m_DeCompressionBuffer.GetBuffer(1));
|
||||
LONG dwOffsetHigh = pFileSize->dwSizeHigh;
|
||||
LONG dwOffsetLow = pFileSize->dwSizeLow;
|
||||
|
||||
@@ -1725,7 +1706,7 @@ void CFileManagerDlg::SendFileData()
|
||||
|
||||
if (nNumberOfBytesRead > 0) {
|
||||
int nPacketSize = nNumberOfBytesRead + nHeadLength;
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, nPacketSize);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, nPacketSize);
|
||||
}
|
||||
LocalFree(lpBuffer);
|
||||
}
|
||||
@@ -1777,7 +1758,7 @@ void CFileManagerDlg::OnRemoteNewFolder()
|
||||
LPBYTE lpBuffer = new BYTE[nPacketSize];
|
||||
lpBuffer[0] = COMMAND_CREATE_FOLDER;
|
||||
memcpy(lpBuffer + 1, file.GetBuffer(0), nPacketSize - 1);
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, nPacketSize);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, nPacketSize);
|
||||
SAFE_DELETE_AR(lpBuffer);
|
||||
}
|
||||
}
|
||||
@@ -1810,7 +1791,7 @@ void CFileManagerDlg::OnEndLabelEditListRemote(NMHDR* pNMHDR, LRESULT* pResult)
|
||||
memcpy(lpBuffer + 1, strExistingFileName.GetBuffer(0), (strExistingFileName.GetLength() + 1) * sizeof(TCHAR));
|
||||
memcpy(lpBuffer + 1 + (strExistingFileName.GetLength() + 1) * sizeof(TCHAR),
|
||||
strNewFileName.GetBuffer(0), (strNewFileName.GetLength() + 1) * sizeof(TCHAR));
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, nPacketSize);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, nPacketSize);
|
||||
LocalFree(lpBuffer);
|
||||
}
|
||||
*pResult = 1;
|
||||
@@ -1820,7 +1801,7 @@ void CFileManagerDlg::OnDelete()
|
||||
{
|
||||
BYTE bBuff;
|
||||
bBuff = COMMAND_FILE_NO_ENFORCE;
|
||||
m_iocpServer->Send(m_pContext, &bBuff, sizeof(bBuff));
|
||||
m_iocpServer->Send(m_ContextObject, &bBuff, sizeof(bBuff));
|
||||
OnRemoteDelete();
|
||||
}
|
||||
|
||||
@@ -1828,7 +1809,7 @@ void CFileManagerDlg::OnDeleteEnforce()
|
||||
{
|
||||
BYTE bBuff;
|
||||
bBuff = COMMAND_FILE_ENFOCE;
|
||||
m_iocpServer->Send(m_pContext, &bBuff, sizeof(bBuff));
|
||||
m_iocpServer->Send(m_ContextObject, &bBuff, sizeof(bBuff));
|
||||
OnRemoteDelete();
|
||||
}
|
||||
|
||||
@@ -1864,7 +1845,7 @@ void CFileManagerDlg::OnRemoteOpenShow()
|
||||
lpPacket[0] = COMMAND_OPEN_FILE_SHOW;
|
||||
lpPacket[1] = m_bUseAdmin;
|
||||
memcpy(lpPacket + 2, str.GetBuffer(0), nPacketLength - 2);
|
||||
m_iocpServer->Send(m_pContext, lpPacket, nPacketLength);
|
||||
m_iocpServer->Send(m_ContextObject, lpPacket, nPacketLength);
|
||||
LocalFree(lpPacket);
|
||||
}
|
||||
|
||||
@@ -1882,7 +1863,7 @@ void CFileManagerDlg::OnRemoteOpenHide()
|
||||
lpPacket[0] = COMMAND_OPEN_FILE_HIDE;
|
||||
lpPacket[1] = m_bUseAdmin;
|
||||
memcpy(lpPacket + 2, str.GetBuffer(0), nPacketLength - 2);
|
||||
m_iocpServer->Send(m_pContext, lpPacket, nPacketLength);
|
||||
m_iocpServer->Send(m_ContextObject, lpPacket, nPacketLength);
|
||||
LocalFree(lpPacket);
|
||||
}
|
||||
|
||||
@@ -1899,7 +1880,7 @@ void CFileManagerDlg::OnRemoteInfo()
|
||||
LPBYTE lpPacket = (LPBYTE)LocalAlloc(LPTR, nPacketLength);
|
||||
lpPacket[0] = COMMAND_FILE_INFO;
|
||||
memcpy(lpPacket + 1, str.GetBuffer(0), nPacketLength - 1);
|
||||
m_iocpServer->Send(m_pContext, lpPacket, nPacketLength);
|
||||
m_iocpServer->Send(m_ContextObject, lpPacket, nPacketLength);
|
||||
LocalFree(lpPacket);
|
||||
}
|
||||
|
||||
@@ -1918,7 +1899,7 @@ void CFileManagerDlg::OnRemoteEncryption()
|
||||
lpPacket[0] = COMMAND_FILE_Encryption;
|
||||
|
||||
memcpy(lpPacket + 1, strA.GetBuffer(0), nPacketLength - 1);
|
||||
m_iocpServer->Send(m_pContext, lpPacket, nPacketLength);
|
||||
m_iocpServer->Send(m_ContextObject, lpPacket, nPacketLength);
|
||||
LocalFree(lpPacket);
|
||||
}
|
||||
|
||||
@@ -1937,7 +1918,7 @@ void CFileManagerDlg::OnRemoteDecrypt()
|
||||
lpPacket[0] = COMMAND_FILE_Decrypt;
|
||||
|
||||
memcpy(lpPacket + 1, strA.GetBuffer(0), nPacketLength - 1);
|
||||
m_iocpServer->Send(m_pContext, lpPacket, nPacketLength);
|
||||
m_iocpServer->Send(m_ContextObject, lpPacket, nPacketLength);
|
||||
LocalFree(lpPacket);
|
||||
}
|
||||
|
||||
@@ -1958,7 +1939,7 @@ void CFileManagerDlg::OnRemoteCopyFile()
|
||||
lpPacket[0] = COMMAND_FILE_CopyFile;
|
||||
|
||||
memcpy(lpPacket + 1, file.GetBuffer(0), nPacketLength - 1);
|
||||
m_iocpServer->Send(m_pContext, lpPacket, nPacketLength);
|
||||
m_iocpServer->Send(m_ContextObject, lpPacket, nPacketLength);
|
||||
LocalFree(lpPacket);
|
||||
ShowMessage(_T("<EFBFBD><EFBFBD>ճ<EFBFBD><EFBFBD>"));
|
||||
}
|
||||
@@ -1969,7 +1950,7 @@ void CFileManagerDlg::OnRemotePasteFile()
|
||||
LPBYTE lpPacket = (LPBYTE)LocalAlloc(LPTR, nPacketLength);
|
||||
lpPacket[0] = COMMAND_FILE_PasteFile;
|
||||
memcpy(lpPacket + 1, m_Remote_Path.GetBuffer(0), nPacketLength - 1);
|
||||
m_iocpServer->Send(m_pContext, lpPacket, nPacketLength);
|
||||
m_iocpServer->Send(m_ContextObject, lpPacket, nPacketLength);
|
||||
LocalFree(lpPacket);
|
||||
}
|
||||
|
||||
@@ -1993,7 +1974,7 @@ void CFileManagerDlg::OnRemotezip()
|
||||
lpPacket[0] = COMMAND_FILE_zip;
|
||||
|
||||
memcpy(lpPacket + 1, file.GetBuffer(0), nPacketLength - 1);
|
||||
m_iocpServer->Send(m_pContext, lpPacket, nPacketLength);
|
||||
m_iocpServer->Send(m_ContextObject, lpPacket, nPacketLength);
|
||||
LocalFree(lpPacket);
|
||||
|
||||
ShowMessage(_T("<EFBFBD><EFBFBD>ʼѹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD>رմ<EFBFBD><EFBFBD>ڣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
||||
@@ -2002,7 +1983,7 @@ void CFileManagerDlg::OnRemotezip()
|
||||
void CFileManagerDlg::OnRemotezipstop()
|
||||
{
|
||||
BYTE lpPacket = COMMAND_FILE_zip_stop;
|
||||
m_iocpServer->Send(m_pContext, &lpPacket, 1);
|
||||
m_iocpServer->Send(m_ContextObject, &lpPacket, 1);
|
||||
}
|
||||
|
||||
void CFileManagerDlg::OnRclickListRemotedriver(NMHDR* pNMHDR, LRESULT* pResult)
|
||||
@@ -2051,7 +2032,7 @@ void CFileManagerDlg::OnRclickListRemotedriver(NMHDR* pNMHDR, LRESULT* pResult)
|
||||
BYTE* lpbuffer = new BYTE[sizeof(SEARCH) + 1];
|
||||
lpbuffer[0] = COMMAND_FILE_SEARCHPLUS_LIST;
|
||||
memcpy(lpbuffer + 1, &S_search, sizeof(SEARCH));
|
||||
m_iocpServer->Send(m_pContext, (LPBYTE)lpbuffer, sizeof(SEARCH) + 1);
|
||||
m_iocpServer->Send(m_ContextObject, (LPBYTE)lpbuffer, sizeof(SEARCH) + 1);
|
||||
SAFE_DELETE_AR(lpbuffer);
|
||||
SetWindowPos(NULL, 0, 0, 830, 830, SWP_NOMOVE);
|
||||
}
|
||||
@@ -2326,7 +2307,7 @@ void CFileManagerDlg::OnCompress()
|
||||
LPBYTE lpPacket = (LPBYTE)LocalAlloc(LPTR, nPacketLength);
|
||||
lpPacket[0] = COMMAND_COMPRESS_FILE_PARAM;
|
||||
memcpy(lpPacket + 1, strMsg.GetBuffer(0), nPacketLength - 1);
|
||||
m_iocpServer->Send(m_pContext, lpPacket, nPacketLength);
|
||||
m_iocpServer->Send(m_ContextObject, lpPacket, nPacketLength);
|
||||
LocalFree(lpPacket);
|
||||
}
|
||||
|
||||
@@ -2353,7 +2334,7 @@ void CFileManagerDlg::OnUncompress()
|
||||
LPBYTE lpPacket = (LPBYTE)LocalAlloc(LPTR, nPacketLength);
|
||||
lpPacket[0] = COMMAND_COMPRESS_FILE_PARAM;
|
||||
memcpy(lpPacket + 1, strMsg.GetBuffer(0), nPacketLength - 1);
|
||||
m_iocpServer->Send(m_pContext, lpPacket, nPacketLength);
|
||||
m_iocpServer->Send(m_ContextObject, lpPacket, nPacketLength);
|
||||
LocalFree(lpPacket);
|
||||
}
|
||||
|
||||
@@ -2386,7 +2367,7 @@ void CFileManagerDlg::OnBtnSearch()
|
||||
LPBYTE lpBuffer = new BYTE[nPacketSize];
|
||||
lpBuffer[0] = COMMAND_SEARCH_FILE;
|
||||
memcpy(lpBuffer + 1, &mFileSearchPacket, sizeof(mFileSearchPacket));
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, nPacketSize);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, nPacketSize);
|
||||
SAFE_DELETE_AR(lpBuffer);
|
||||
// <20><><EFBFBD>ð<EFBFBD>ť״̬
|
||||
m_BtnSearch.SetWindowText(_T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>..."));
|
||||
@@ -2459,7 +2440,7 @@ void CFileManagerDlg::OnBnClickedSearchStop()
|
||||
GetDlgItem(ID_SEARCH_STOP)->EnableWindow(FALSE);
|
||||
// TODO: Add your command handler code here
|
||||
BYTE bToken = COMMAND_FILES_SEARCH_STOP;
|
||||
m_iocpServer->Send(m_pContext, &bToken, sizeof(BYTE));
|
||||
m_iocpServer->Send(m_ContextObject, &bToken, sizeof(BYTE));
|
||||
}
|
||||
|
||||
//<2F><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
@@ -2476,14 +2457,14 @@ void CFileManagerDlg::OnBnClickedSearchResult()
|
||||
|
||||
void CFileManagerDlg::ShowSearchPlugList()
|
||||
{
|
||||
char* lpBuffer = (char*)(m_pContext->m_DeCompressionBuffer.GetBuffer(1));
|
||||
char* lpBuffer = (char*)(m_ContextObject->m_DeCompressionBuffer.GetBuffer(1));
|
||||
char* Filename;
|
||||
char* Pathname;
|
||||
|
||||
DWORD dwOffset = 0;
|
||||
m_list_remote_search.DeleteAllItems();
|
||||
int i = 0;
|
||||
for (i = 0; dwOffset < (m_pContext->m_DeCompressionBuffer.GetBufferLen() - 1); i++) {
|
||||
for (i = 0; dwOffset < (m_ContextObject->m_DeCompressionBuffer.GetBufferLen() - 1); i++) {
|
||||
Filename = lpBuffer + dwOffset;
|
||||
Pathname = Filename + strlen(Filename) + 1;
|
||||
CString CS_tem;
|
||||
|
||||
@@ -82,9 +82,6 @@ namespace file {
|
||||
void SearchEnd(); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
void FixedRemoteSearchFileList(BYTE* pbBuffer, DWORD dwBufferLen);
|
||||
int m_nNewIconBaseIndex; // <20>¼ӵ<C2BC>ICON
|
||||
ClientContext* m_pContext;
|
||||
ISocketBase* m_iocpServer;
|
||||
CString m_IPAddress;
|
||||
CProgressCtrl* m_ProgressCtrl;
|
||||
HCURSOR m_hCursor;
|
||||
CString m_Local_Path;
|
||||
@@ -94,11 +91,10 @@ namespace file {
|
||||
void FixedRemoteFileList(BYTE* pbBuffer, DWORD dwBufferLen);
|
||||
void fixNetHood(BYTE* pbuffer, int buffersize);//Զ<>̹<EFBFBD><CCB9><EFBFBD>Ŀ¼
|
||||
bool id_search_result;
|
||||
HICON m_hIcon;
|
||||
CStatusBar m_wndStatusBar;
|
||||
CFileManagerDlg(CWnd* pParent = NULL, ISocketBase* pIOCPServer = NULL, ClientContext* pContext = NULL);
|
||||
~CFileManagerDlg() {
|
||||
m_bOnClose = TRUE;
|
||||
m_bIsClosed = TRUE;
|
||||
SAFE_DELETE(m_ProgressCtrl);
|
||||
}
|
||||
enum {
|
||||
@@ -180,8 +176,6 @@ namespace file {
|
||||
afx_msg void OnBnClickedSearchResult();
|
||||
DECLARE_MESSAGE_MAP()
|
||||
|
||||
protected:
|
||||
BOOL m_bOnClose;
|
||||
private:
|
||||
bool m_bIsUpload; // <20>Ƿ<EFBFBD><C7B7>ǰѱ<C7B0><D1B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>־<EFBFBD><D6BE><EFBFBD><EFBFBD>λ
|
||||
BOOL m_bDragging; // during a drag operation
|
||||
|
||||
@@ -23,9 +23,6 @@
|
||||
// <20>Ƴ<EFBFBD><C6B3>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD>MFC<46>ؼ<EFBFBD><D8BC><EFBFBD>֧<EFBFBD>֣<EFBFBD><D6A3><EFBFBD>С<EFBFBD><D0A1>̬<EFBFBD><CCAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD>С
|
||||
#define _AFX_NO_MFC_CONTROLS_IN_DIALOGS
|
||||
|
||||
// <20>رնԻ<D5B6><D4BB><EFBFBD>ʱɾ<CAB1><C9BE><EFBFBD>Ի<EFBFBD><D4BB><EFBFBD>
|
||||
#define CLOSE_DELETE_DLG 0
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD>й©<D0B9><C2A9><EFBFBD>谲װVLD<4C><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD>ʹ<EFBFBD><CDB4><EFBFBD>
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>VLD, <20>뽫<EFBFBD><EBBDAB>װ·<D7B0><C2B7><EFBFBD><EFBFBD><EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: <20><><EFBFBD><EFBFBD>Ϊ"VLDPATH", ·<><C2B7>Ϊ"D:\Program Files (x86)\Visual Leak Detector"
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD>ʰ<EFBFBD>װĿ¼<C4BF><C2BC>дVLDPATH. <20><><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD><D6B6>༭ÿ<E0BCAD><C3BF><EFBFBD><EFBFBD>Ŀ<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>ͷ<EFBFBD>ļ<EFBFBD>Ŀ¼<C4BF>Ϳ<EFBFBD>Ŀ¼. <20>й<EFBFBD><D0B9><EFBFBD><EFBFBD><EFBFBD>VLD<4C><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD>ο<EFBFBD><CEBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
@@ -84,28 +81,6 @@
|
||||
#define WM_OPENDECRYPTDIALOG WM_USER+3018
|
||||
#define WM_OPENFILEMGRDIALOG WM_USER+3019
|
||||
|
||||
enum
|
||||
{
|
||||
FILEMANAGER_DLG = 1,
|
||||
SCREENSPY_DLG,
|
||||
VIDEO_DLG,
|
||||
AUDIO_DLG,
|
||||
KEYBOARD_DLG,
|
||||
SYSTEM_DLG,
|
||||
SHELL_DLG,
|
||||
SERVICES_DLG,
|
||||
REGISTER_DLG,
|
||||
TALK_DLG,
|
||||
MONITOR_DLG,
|
||||
PROXY_DLG,
|
||||
HIDESCREEN_DLG,
|
||||
MACHINE_DLG,
|
||||
CHAT_DLG,
|
||||
DECRYPT_DLG,
|
||||
FILEMGR_DLG,
|
||||
};
|
||||
|
||||
|
||||
#ifdef _UNICODE
|
||||
#if defined _M_IX86
|
||||
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"")
|
||||
|
||||
@@ -24,14 +24,9 @@ static UINT indicators[] = {
|
||||
|
||||
|
||||
CMachineDlg::CMachineDlg(CWnd* pParent, ISocketBase* pIOCPServer, ClientContext* pContext)
|
||||
: DialogBase(CMachineDlg::IDD, pParent, pIOCPServer, pContext, 0)
|
||||
: DialogBase(CMachineDlg::IDD, pParent, pIOCPServer, pContext, IDI_MACHINE)
|
||||
{
|
||||
m_pMainWnd = (CMy2015RemoteDlg*)pParent;
|
||||
m_iocpServer = pIOCPServer;
|
||||
m_pContext = pContext;
|
||||
m_hIcon = LoadIcon(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDI_MACHINE));
|
||||
|
||||
m_bOnClose = false;
|
||||
|
||||
m_nSortedCol = 1;
|
||||
m_bAscending = true;
|
||||
@@ -40,7 +35,7 @@ CMachineDlg::CMachineDlg(CWnd* pParent, ISocketBase* pIOCPServer, ClientContext*
|
||||
}
|
||||
|
||||
CMachineDlg::~CMachineDlg() {
|
||||
m_bOnClose = TRUE;
|
||||
m_bIsClosed = TRUE;
|
||||
SAFE_DELETE(m_IPConverter);
|
||||
DeleteList();
|
||||
}
|
||||
@@ -132,7 +127,7 @@ BOOL CMachineDlg::OnInitDialog()
|
||||
|
||||
// TODO: Add extra initialization here
|
||||
CString str;
|
||||
str.Format(_T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - %s"), m_pContext->PeerName.c_str());
|
||||
str.Format(_T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - %s"), m_ContextObject->PeerName.c_str());
|
||||
SetWindowText(str);
|
||||
|
||||
m_tab.SetPadding(CSize(6, 3));
|
||||
@@ -168,7 +163,7 @@ BOOL CMachineDlg::OnInitDialog()
|
||||
|
||||
AdjustList();
|
||||
BYTE lpBuffer = COMMAND_MACHINE_PROCESS;
|
||||
m_iocpServer->Send(m_pContext, (LPBYTE)&lpBuffer, 1);
|
||||
m_iocpServer->Send(m_ContextObject, (LPBYTE)&lpBuffer, 1);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
@@ -209,11 +204,11 @@ void CMachineDlg::OnReceive()
|
||||
|
||||
void CMachineDlg::OnReceiveComplete()
|
||||
{
|
||||
if (m_bOnClose) return;
|
||||
if (m_bIsClosed) return;
|
||||
SetReceivingStatus(true);
|
||||
|
||||
if (TOKEN_MACHINE_MSG == m_pContext->m_DeCompressionBuffer.GetBuffer(0)[0]) {
|
||||
CString strResult = (char*)m_pContext->m_DeCompressionBuffer.GetBuffer(1);
|
||||
if (TOKEN_MACHINE_MSG == m_ContextObject->m_DeCompressionBuffer.GetBuffer(0)[0]) {
|
||||
CString strResult = (char*)m_ContextObject->m_DeCompressionBuffer.GetBuffer(1);
|
||||
PostMessage(WM_SHOW_MSG, (WPARAM)new CString(strResult), 0);
|
||||
SetReceivingStatus(false);
|
||||
return;
|
||||
@@ -221,14 +216,14 @@ void CMachineDlg::OnReceiveComplete()
|
||||
|
||||
DeleteList();
|
||||
|
||||
if (m_pContext->m_DeCompressionBuffer.GetBufferLen() <= 2) {
|
||||
if (m_ContextObject->m_DeCompressionBuffer.GetBufferLen() <= 2) {
|
||||
PostMessage(WM_SHOW_MSG, (WPARAM)new CString(_T("<EFBFBD><EFBFBD>Ȩ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼...")), 0);
|
||||
SetReceivingStatus(false);
|
||||
return;
|
||||
}
|
||||
|
||||
PostMessage(WM_WAIT_MSG, TRUE, 0);
|
||||
switch (m_pContext->m_DeCompressionBuffer.GetBuffer(0)[0]) {
|
||||
switch (m_ContextObject->m_DeCompressionBuffer.GetBuffer(0)[0]) {
|
||||
case TOKEN_MACHINE_PROCESS:
|
||||
ShowProcessList();
|
||||
break;
|
||||
@@ -324,9 +319,11 @@ void CMachineDlg::OnRclickList(NMHDR* pNMHDR, LRESULT* pResult)
|
||||
|
||||
void CMachineDlg::OnClose()
|
||||
{
|
||||
m_bOnClose = TRUE;
|
||||
m_ContextObject->CancelIO();
|
||||
CancelIO();
|
||||
DeleteList();
|
||||
if (m_wndStatusBar.GetSafeHwnd())
|
||||
m_wndStatusBar.DestroyWindow();
|
||||
SAFE_DELETE(m_IPConverter);
|
||||
CDialogBase::OnClose();
|
||||
}
|
||||
|
||||
@@ -335,7 +332,7 @@ void CMachineDlg::reflush()
|
||||
int nID = m_tab.GetCurSel();
|
||||
DeleteList();
|
||||
BYTE TOKEN = MachineManager(nID);
|
||||
m_iocpServer->Send(m_pContext, (LPBYTE)&TOKEN, 1);
|
||||
m_iocpServer->Send(m_ContextObject, (LPBYTE)&TOKEN, 1);
|
||||
}
|
||||
|
||||
|
||||
@@ -370,7 +367,8 @@ LRESULT CMachineDlg::OnWaitMessage(WPARAM wParam, LPARAM lParam)
|
||||
|
||||
void CMachineDlg::DeleteList()
|
||||
{
|
||||
if (!m_list) return;
|
||||
if (!m_list.GetSafeHwnd()) return;
|
||||
|
||||
for (int i=0, n=m_list.GetItemCount(); i<n; ++i){
|
||||
ListItem* item = (ListItem*)m_list.GetItemData(i);
|
||||
if(item) item->Destroy();
|
||||
@@ -381,7 +379,7 @@ void CMachineDlg::DeleteList()
|
||||
for (int n = 0; n < nColumnCount; n++) {
|
||||
m_list.DeleteColumn(0);
|
||||
}
|
||||
if (!m_bOnClose)
|
||||
if (!m_bIsClosed)
|
||||
PostMessage(WM_SHOW_MSG, (WPARAM)new CString(_T("<EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݷ<EFBFBD><EFBFBD><EFBFBD>...")), 0);
|
||||
}
|
||||
|
||||
@@ -398,11 +396,11 @@ void CMachineDlg::ShowProcessList()
|
||||
m_list.InsertColumn(8, _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"), LVCFMT_LEFT, 100);
|
||||
m_list.InsertColumn(9, _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>"), LVCFMT_LEFT, 80);
|
||||
|
||||
char* lpBuffer = (char*)(m_pContext->m_DeCompressionBuffer.GetBuffer(1));
|
||||
char* lpBuffer = (char*)(m_ContextObject->m_DeCompressionBuffer.GetBuffer(1));
|
||||
DWORD dwOffset = 0;
|
||||
CString str;
|
||||
int i = 0;
|
||||
for (i = 0; dwOffset < m_pContext->m_DeCompressionBuffer.GetBufferLen() - 1; i++) {
|
||||
for (i = 0; dwOffset < m_ContextObject->m_DeCompressionBuffer.GetBufferLen() - 1; i++) {
|
||||
LPDWORD lpPID = LPDWORD(lpBuffer + dwOffset);
|
||||
bool* is64 = (bool*)(lpBuffer + dwOffset + sizeof(DWORD));
|
||||
char* szBuf_title = (char*)(lpBuffer + dwOffset + sizeof(DWORD) + sizeof(bool));
|
||||
@@ -464,12 +462,12 @@ void CMachineDlg::ShowWindowsList()
|
||||
m_list.InsertColumn(3, _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬"), LVCFMT_LEFT, 100);
|
||||
m_list.InsertColumn(4, _T("<EFBFBD><EFBFBD>С"), LVCFMT_LEFT, 100);
|
||||
|
||||
LPBYTE lpBuffer = (LPBYTE)(m_pContext->m_DeCompressionBuffer.GetBuffer(1));
|
||||
LPBYTE lpBuffer = (LPBYTE)(m_ContextObject->m_DeCompressionBuffer.GetBuffer(1));
|
||||
DWORD dwOffset = 0;
|
||||
CString str;
|
||||
int i;
|
||||
WINDOWSINFO m_ibfo;
|
||||
for (i = 0; dwOffset < m_pContext->m_DeCompressionBuffer.GetBufferLen() - 1; i++) {
|
||||
for (i = 0; dwOffset < m_ContextObject->m_DeCompressionBuffer.GetBufferLen() - 1; i++) {
|
||||
memcpy(&m_ibfo, lpBuffer + dwOffset, sizeof(WINDOWSINFO));
|
||||
|
||||
str.Format(_T("%5u"), m_ibfo.m_poceessid);
|
||||
@@ -506,10 +504,10 @@ void CMachineDlg::ShowNetStateList()
|
||||
m_list.InsertColumn(5, _T("Ŀ<EFBFBD><EFBFBD>IP<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"), LVCFMT_LEFT, 140);
|
||||
m_list.InsertColumn(6, _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬"), LVCFMT_LEFT, 80);
|
||||
|
||||
LPBYTE lpBuffer = (LPBYTE)(m_pContext->m_DeCompressionBuffer.GetBuffer(1));
|
||||
LPBYTE lpBuffer = (LPBYTE)(m_ContextObject->m_DeCompressionBuffer.GetBuffer(1));
|
||||
DWORD dwOffset = 0;
|
||||
CString str, IPAddress;
|
||||
for (int i = 0; dwOffset < m_pContext->m_DeCompressionBuffer.GetBufferLen() - 1; i++) {
|
||||
for (int i = 0; dwOffset < m_ContextObject->m_DeCompressionBuffer.GetBufferLen() - 1; i++) {
|
||||
int pid = 0;
|
||||
for (int j = 0; j < 7; j++) {
|
||||
if (j == 0) {
|
||||
@@ -556,9 +554,9 @@ void CMachineDlg::ShowSoftWareList()
|
||||
m_list.InsertColumn(3, _T("<EFBFBD><EFBFBD>װʱ<EFBFBD><EFBFBD>"), LVCFMT_LEFT, 80);
|
||||
m_list.InsertColumn(4, _T("ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"), LVCFMT_LEFT, 400);
|
||||
|
||||
LPBYTE lpBuffer = (LPBYTE)(m_pContext->m_DeCompressionBuffer.GetBuffer(1));
|
||||
LPBYTE lpBuffer = (LPBYTE)(m_ContextObject->m_DeCompressionBuffer.GetBuffer(1));
|
||||
DWORD dwOffset = 0;
|
||||
for (int i = 0; dwOffset < m_pContext->m_DeCompressionBuffer.GetBufferLen() - 1; i++) {
|
||||
for (int i = 0; dwOffset < m_ContextObject->m_DeCompressionBuffer.GetBufferLen() - 1; i++) {
|
||||
for (int j = 0; j < 5; j++) {
|
||||
char* lpString = (char*)(lpBuffer + dwOffset);
|
||||
if (j == 0)
|
||||
@@ -579,10 +577,10 @@ void CMachineDlg::ShowIEHistoryList()
|
||||
m_list.InsertColumn(1, _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>"), LVCFMT_LEFT, 130);
|
||||
m_list.InsertColumn(2, _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"), LVCFMT_LEFT, 150);
|
||||
m_list.InsertColumn(3, _T("<EFBFBD><EFBFBD>ҳ<EFBFBD><EFBFBD>ַ"), LVCFMT_LEFT, 400);
|
||||
LPBYTE lpBuffer = (LPBYTE)(m_pContext->m_DeCompressionBuffer.GetBuffer(1));
|
||||
LPBYTE lpBuffer = (LPBYTE)(m_ContextObject->m_DeCompressionBuffer.GetBuffer(1));
|
||||
DWORD dwOffset = 0;
|
||||
CString str;
|
||||
for (int i = 0; dwOffset < m_pContext->m_DeCompressionBuffer.GetBufferLen() - 1; i++) {
|
||||
for (int i = 0; dwOffset < m_ContextObject->m_DeCompressionBuffer.GetBufferLen() - 1; i++) {
|
||||
Browsinghistory* p_Browsinghistory = (Browsinghistory*)((char*)lpBuffer + dwOffset);
|
||||
str.Format(_T("%d"), i);
|
||||
m_list.InsertItem(i, str, 0);
|
||||
@@ -600,9 +598,9 @@ void CMachineDlg::ShowFavoritesUrlList()
|
||||
m_list.InsertColumn(0, _T("<EFBFBD>ղ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"), LVCFMT_LEFT, 200);
|
||||
m_list.InsertColumn(1, _T("Url"), LVCFMT_LEFT, 300);
|
||||
|
||||
LPBYTE lpBuffer = (LPBYTE)(m_pContext->m_DeCompressionBuffer.GetBuffer(1));
|
||||
LPBYTE lpBuffer = (LPBYTE)(m_ContextObject->m_DeCompressionBuffer.GetBuffer(1));
|
||||
DWORD dwOffset = 0;
|
||||
for (int i = 0; dwOffset < m_pContext->m_DeCompressionBuffer.GetBufferLen() - 1; i++) {
|
||||
for (int i = 0; dwOffset < m_ContextObject->m_DeCompressionBuffer.GetBufferLen() - 1; i++) {
|
||||
for (int j = 0; j < 2; j++) {
|
||||
char* lpString = (char*)((char*)lpBuffer + dwOffset);
|
||||
if (j == 0)
|
||||
@@ -628,10 +626,10 @@ void CMachineDlg::ShowServiceList()
|
||||
m_list.InsertColumn(6, _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"), LVCFMT_LEFT, 140);
|
||||
m_list.InsertColumn(7, _T("<EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>·<EFBFBD><EFBFBD>"), LVCFMT_LEFT, 400);
|
||||
|
||||
char* lpBuffer = (char*)(m_pContext->m_DeCompressionBuffer.GetBuffer(1));
|
||||
char* lpBuffer = (char*)(m_ContextObject->m_DeCompressionBuffer.GetBuffer(1));
|
||||
DWORD dwOffset = 0;
|
||||
int i = 0;
|
||||
for (i = 0; dwOffset < (m_pContext->m_DeCompressionBuffer.GetBufferLen() - 1) / sizeof(char); i++) {
|
||||
for (i = 0; dwOffset < (m_ContextObject->m_DeCompressionBuffer.GetBufferLen() - 1) / sizeof(char); i++) {
|
||||
char* DisplayName = lpBuffer + dwOffset;
|
||||
char* Describe = DisplayName + lstrlen(DisplayName) + 1;
|
||||
char* serRunway = Describe + lstrlen(Describe) + 1;
|
||||
@@ -673,12 +671,12 @@ void CMachineDlg::ShowTaskList()
|
||||
m_list.InsertColumn(5, _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>"), LVCFMT_LEFT, 130);
|
||||
m_list.InsertColumn(6, _T("<EFBFBD>´<EFBFBD>ִ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>"), LVCFMT_LEFT, 130);
|
||||
|
||||
BYTE* lpBuffer = (BYTE*)(m_pContext->m_DeCompressionBuffer.GetBuffer() + 1);
|
||||
BYTE* lpBuffer = (BYTE*)(m_ContextObject->m_DeCompressionBuffer.GetBuffer() + 1);
|
||||
DATE lasttime = 0;
|
||||
DATE nexttime = 0;
|
||||
DWORD dwOffset = 0;
|
||||
CString str;
|
||||
for (int i = 0; dwOffset < m_pContext->m_DeCompressionBuffer.GetBufferLen() - 1; i++) {
|
||||
for (int i = 0; dwOffset < m_ContextObject->m_DeCompressionBuffer.GetBufferLen() - 1; i++) {
|
||||
char* taskname = (char*)(lpBuffer + dwOffset);
|
||||
char* taskpath = taskname + lstrlen(taskname) + 1;
|
||||
char* exepath = taskpath + lstrlen(taskpath) + 1;
|
||||
@@ -716,7 +714,7 @@ void CMachineDlg::ShowHostsList()
|
||||
{
|
||||
m_list.InsertColumn(0, _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"), LVCFMT_LEFT, 600);
|
||||
|
||||
LPBYTE lpBuffer = (LPBYTE)(m_pContext->m_DeCompressionBuffer.GetBuffer(1));
|
||||
LPBYTE lpBuffer = (LPBYTE)(m_ContextObject->m_DeCompressionBuffer.GetBuffer(1));
|
||||
int i = 0;
|
||||
char* buf;
|
||||
char* lpString = (char*)lpBuffer;
|
||||
@@ -772,7 +770,7 @@ void CMachineDlg::OpenInfoDlg()
|
||||
CServiceInfoDlg pDlg(this);
|
||||
|
||||
pDlg.m_iocpServer = m_iocpServer;
|
||||
pDlg.m_pContext = m_pContext;
|
||||
pDlg.m_ContextObject = m_ContextObject;
|
||||
|
||||
pDlg.m_ServiceInfo.strSerName = m_list.GetItemText(nItem, 6);
|
||||
pDlg.m_ServiceInfo.strSerDisPlayname = m_list.GetItemText(nItem, 0);
|
||||
@@ -801,7 +799,7 @@ void CMachineDlg::SendToken(BYTE bToken)
|
||||
lpBuffer[0] = bToken;
|
||||
|
||||
memcpy(lpBuffer + 1, tSerName.GetBuffer(0), tSerName.GetLength() * sizeof(char));
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, nPacketLength);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, nPacketLength);
|
||||
LocalFree(lpBuffer);
|
||||
}
|
||||
|
||||
@@ -879,7 +877,7 @@ void CMachineDlg::ShowProcessList_menu()
|
||||
lpBuffer[0] = COMMAND_PROCESS_KILLDEL;
|
||||
DWORD dwProcessID = ((ListItem*)m_list.GetItemData(nItem))->pid;
|
||||
memcpy(lpBuffer + 1, &dwProcessID, sizeof(DWORD));
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, sizeof(DWORD) + 1);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, sizeof(DWORD) + 1);
|
||||
SAFE_DELETE_AR(lpBuffer);
|
||||
}
|
||||
}
|
||||
@@ -892,7 +890,7 @@ void CMachineDlg::ShowProcessList_menu()
|
||||
lpBuffer[0] = COMMAND_PROCESS_KILL;
|
||||
DWORD dwProcessID = ((ListItem*)m_list.GetItemData(nItem))->pid;
|
||||
memcpy(lpBuffer + 1, &dwProcessID, sizeof(DWORD));
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, sizeof(DWORD) + 1);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, sizeof(DWORD) + 1);
|
||||
SAFE_DELETE_AR(lpBuffer);
|
||||
}
|
||||
}
|
||||
@@ -905,7 +903,7 @@ void CMachineDlg::ShowProcessList_menu()
|
||||
lpBuffer[0] = COMMAND_PROCESS_FREEZING;
|
||||
DWORD dwProcessID = ((ListItem*)m_list.GetItemData(nItem))->pid;
|
||||
memcpy(lpBuffer + 1, &dwProcessID, sizeof(DWORD));
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, sizeof(DWORD) + 1);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, sizeof(DWORD) + 1);
|
||||
SAFE_DELETE_AR(lpBuffer);
|
||||
}
|
||||
}
|
||||
@@ -918,7 +916,7 @@ void CMachineDlg::ShowProcessList_menu()
|
||||
lpBuffer[0] = COMMAND_PROCESS_THAW;
|
||||
DWORD dwProcessID = ((ListItem*)m_list.GetItemData(nItem))->pid;
|
||||
memcpy(lpBuffer + 1, &dwProcessID, sizeof(DWORD));
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, sizeof(DWORD) + 1);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, sizeof(DWORD) + 1);
|
||||
SAFE_DELETE_AR(lpBuffer);
|
||||
}
|
||||
}
|
||||
@@ -931,7 +929,7 @@ void CMachineDlg::ShowProcessList_menu()
|
||||
lpBuffer[0] = COMMAND_PROCESS_DEL;
|
||||
DWORD dwProcessID = ((ListItem*)m_list.GetItemData(nItem))->pid;
|
||||
memcpy(lpBuffer + 1, &dwProcessID, sizeof(DWORD));
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, sizeof(DWORD) + 1);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, sizeof(DWORD) + 1);
|
||||
SAFE_DELETE_AR(lpBuffer);
|
||||
}
|
||||
}
|
||||
@@ -968,7 +966,7 @@ void CMachineDlg::ShowProcessList_menu()
|
||||
DWORD wr = 0;
|
||||
ReadFile(hFile, lpBuffer + sizeof(InjectData)+1, p_InjectData->datasize, &wr, NULL);
|
||||
CloseHandle(hFile);
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, allsize);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, allsize);
|
||||
SAFE_DELETE_AR(lpBuffer);
|
||||
}
|
||||
SAFE_DELETE(p_InjectData);
|
||||
@@ -1042,7 +1040,7 @@ void CMachineDlg::ShowWindowsList_menu()
|
||||
memcpy(lpMsgBuf + 1, &hwnd, sizeof(DWORD));
|
||||
DWORD dHow = SW_RESTORE;
|
||||
memcpy(lpMsgBuf + 1 + sizeof(hwnd), &dHow, sizeof(DWORD));
|
||||
m_iocpServer->Send(m_pContext, lpMsgBuf, sizeof(lpMsgBuf));
|
||||
m_iocpServer->Send(m_ContextObject, lpMsgBuf, sizeof(lpMsgBuf));
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -1057,7 +1055,7 @@ void CMachineDlg::ShowWindowsList_menu()
|
||||
memcpy(lpMsgBuf + 1, &hwnd, sizeof(DWORD));
|
||||
DWORD dHow = SW_HIDE;
|
||||
memcpy(lpMsgBuf + 1 + sizeof(hwnd), &dHow, sizeof(DWORD));
|
||||
m_iocpServer->Send(m_pContext, lpMsgBuf, sizeof(lpMsgBuf));
|
||||
m_iocpServer->Send(m_ContextObject, lpMsgBuf, sizeof(lpMsgBuf));
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -1071,7 +1069,7 @@ void CMachineDlg::ShowWindowsList_menu()
|
||||
DWORD hwnd = _tstoi(m_list.GetItemText(nItem, 1));
|
||||
m_list.SetItemText(nItem, 3, _T("<EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
||||
memcpy(lpMsgBuf + 1, &hwnd, sizeof(DWORD));
|
||||
m_iocpServer->Send(m_pContext, lpMsgBuf, sizeof(lpMsgBuf));
|
||||
m_iocpServer->Send(m_ContextObject, lpMsgBuf, sizeof(lpMsgBuf));
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -1086,7 +1084,7 @@ void CMachineDlg::ShowWindowsList_menu()
|
||||
memcpy(lpMsgBuf + 1, &hwnd, sizeof(DWORD));
|
||||
DWORD dHow = SW_MAXIMIZE;
|
||||
memcpy(lpMsgBuf + 1 + sizeof(hwnd), &dHow, sizeof(DWORD));
|
||||
m_iocpServer->Send(m_pContext, lpMsgBuf, sizeof(lpMsgBuf));
|
||||
m_iocpServer->Send(m_ContextObject, lpMsgBuf, sizeof(lpMsgBuf));
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -1101,7 +1099,7 @@ void CMachineDlg::ShowWindowsList_menu()
|
||||
memcpy(lpMsgBuf + 1, &hwnd, sizeof(DWORD));
|
||||
DWORD dHow = SW_MINIMIZE;
|
||||
memcpy(lpMsgBuf + 1 + sizeof(hwnd), &dHow, sizeof(DWORD));
|
||||
m_iocpServer->Send(m_pContext, lpMsgBuf, sizeof(lpMsgBuf));
|
||||
m_iocpServer->Send(m_ContextObject, lpMsgBuf, sizeof(lpMsgBuf));
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -1115,7 +1113,7 @@ void CMachineDlg::ShowWindowsList_menu()
|
||||
pid = m_list.GetItemText(nItem, 0);
|
||||
DWORD dwProcessID = _tstoi(pid);
|
||||
memcpy(lpBuffer + 1, &dwProcessID, sizeof(DWORD));
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, sizeof(DWORD) + 1);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, sizeof(DWORD) + 1);
|
||||
SAFE_DELETE_AR(lpBuffer);
|
||||
}
|
||||
}
|
||||
@@ -1130,7 +1128,7 @@ void CMachineDlg::ShowWindowsList_menu()
|
||||
pid = m_list.GetItemText(nItem, 0);
|
||||
DWORD dwProcessID = _tstoi(pid);
|
||||
memcpy(lpBuffer + 1, &dwProcessID, sizeof(DWORD));
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, sizeof(DWORD) + 1);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, sizeof(DWORD) + 1);
|
||||
SAFE_DELETE_AR(lpBuffer);
|
||||
}
|
||||
}
|
||||
@@ -1145,7 +1143,7 @@ void CMachineDlg::ShowWindowsList_menu()
|
||||
pid = m_list.GetItemText(nItem, 0);
|
||||
DWORD dwProcessID = _tstoi(pid);
|
||||
memcpy(lpBuffer + 1, &dwProcessID, sizeof(DWORD));
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, sizeof(DWORD) + 1);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, sizeof(DWORD) + 1);
|
||||
SAFE_DELETE_AR(lpBuffer);
|
||||
}
|
||||
}
|
||||
@@ -1202,7 +1200,7 @@ void CMachineDlg::ShowNetStateList_menu()
|
||||
lpBuffer[0] = COMMAND_PROCESS_KILL;
|
||||
DWORD dwProcessID = ((ListItem*)m_list.GetItemData(nItem))->pid;
|
||||
memcpy(lpBuffer + 1, &dwProcessID, sizeof(DWORD));
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, sizeof(DWORD) + 1);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, sizeof(DWORD) + 1);
|
||||
SAFE_DELETE_AR(lpBuffer);
|
||||
}
|
||||
}
|
||||
@@ -1271,7 +1269,7 @@ void CMachineDlg::ShowSoftWareList_menu()
|
||||
LPBYTE lpBuffer = new BYTE[1 + str_a.GetLength()];
|
||||
lpBuffer[0] = COMMAND_APPUNINSTALL;
|
||||
memcpy(lpBuffer + 1, str_a.GetBuffer(0), str_a.GetLength());
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, str_a.GetLength() + 1);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, str_a.GetLength() + 1);
|
||||
SAFE_DELETE_AR(lpBuffer);
|
||||
}
|
||||
}
|
||||
@@ -1367,7 +1365,7 @@ void CMachineDlg::ShowTaskList_menu()
|
||||
memcpy(lpBuffer + offset, taskname.GetBuffer(), lstrlen(taskname.GetBuffer()) * 2 + 2);
|
||||
offset += lstrlen(taskname.GetBuffer()) * 2 + 2;
|
||||
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, nPacketLength);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, nPacketLength);
|
||||
|
||||
LocalFree(lpBuffer);
|
||||
}
|
||||
@@ -1395,7 +1393,7 @@ void CMachineDlg::ShowTaskList_menu()
|
||||
memcpy(lpBuffer + offset, taskname.GetBuffer(), lstrlen(taskname.GetBuffer()) * 2 + 2);
|
||||
offset += lstrlen(taskname.GetBuffer()) * 2 + 2;
|
||||
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, nPacketLength);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, nPacketLength);
|
||||
|
||||
LocalFree(lpBuffer);
|
||||
}
|
||||
@@ -1423,7 +1421,7 @@ void CMachineDlg::ShowTaskList_menu()
|
||||
memcpy(lpBuffer + offset, taskname.GetBuffer(), lstrlen(taskname.GetBuffer()) * 2 + 2);
|
||||
offset += lstrlen(taskname.GetBuffer()) * 2 + 2;
|
||||
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, nPacketLength);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, nPacketLength);
|
||||
|
||||
LocalFree(lpBuffer);
|
||||
}
|
||||
@@ -1455,7 +1453,7 @@ void CMachineDlg::ShowTaskList_menu()
|
||||
|
||||
memcpy(lpBuffer + offset, dlg->m_Description.GetBuffer(), lstrlen(dlg->m_Description.GetBuffer()) * 2 + 2);
|
||||
offset += lstrlen(dlg->m_Description.GetBuffer()) * 2 + 2;
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, len);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, len);
|
||||
|
||||
LocalFree(lpBuffer);
|
||||
}
|
||||
@@ -1466,7 +1464,7 @@ void CMachineDlg::ShowTaskList_menu()
|
||||
break;
|
||||
case 104: {
|
||||
BYTE bToken = COMMAND_MACHINE_TASK;
|
||||
m_iocpServer->Send(m_pContext, &bToken, 1);
|
||||
m_iocpServer->Send(m_ContextObject, &bToken, 1);
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -1561,7 +1559,7 @@ void CMachineDlg::ShowServiceList_menu()
|
||||
bToken = COMMAND_SERVICE_LIST_WIN32;
|
||||
else
|
||||
bToken = COMMAND_SERVICE_LIST_DRIVER;
|
||||
m_iocpServer->Send(m_pContext, &bToken, sizeof(BYTE));
|
||||
m_iocpServer->Send(m_ContextObject, &bToken, sizeof(BYTE));
|
||||
}
|
||||
break;
|
||||
case 700:
|
||||
@@ -1631,7 +1629,7 @@ void CMachineDlg::ShowHostsList_menu()
|
||||
LPBYTE lpBuffer = new BYTE[1 + Data_a.GetLength()];
|
||||
lpBuffer[0] = COMMAND_HOSTS_SET;
|
||||
memcpy(lpBuffer + 1, Data_a.GetBuffer(0), Data_a.GetLength());
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, Data_a.GetLength() + 1);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, Data_a.GetLength() + 1);
|
||||
SAFE_DELETE_AR(lpBuffer);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -32,10 +32,6 @@ protected:
|
||||
int m_nSortedCol;
|
||||
bool m_bAscending;
|
||||
bool m_bIsReceiving;
|
||||
ClientContext* m_pContext;
|
||||
ISocketBase* m_iocpServer;
|
||||
HICON m_hIcon;
|
||||
BOOL m_bOnClose;
|
||||
CMy2015RemoteDlg* m_pMainWnd;
|
||||
CStatusBar m_wndStatusBar;
|
||||
IPConverter* m_IPConverter;
|
||||
|
||||
@@ -82,7 +82,7 @@ void CServiceInfoDlg::SendToken(BYTE bToken)
|
||||
lpBuffer[0] = bToken;
|
||||
|
||||
memcpy(lpBuffer + 1, m_ServiceInfo.strSerName.GetBuffer(0), m_ServiceInfo.strSerName.GetLength());
|
||||
m_iocpServer->Send(m_pContext, lpBuffer, nPacketLength);
|
||||
m_iocpServer->Send(m_ContextObject, lpBuffer, nPacketLength);
|
||||
LocalFree(lpBuffer);
|
||||
}
|
||||
|
||||
|
||||
@@ -18,7 +18,7 @@ class CServiceInfoDlg : public CDialog
|
||||
public:
|
||||
CServiceInfoDlg(CWnd* pParent = NULL);
|
||||
|
||||
ClientContext* m_pContext;
|
||||
ClientContext* m_ContextObject;
|
||||
ISocketBase* m_iocpServer;
|
||||
|
||||
enum { IDD = IDD_SERVICE_INFO };
|
||||
|
||||
Reference in New Issue
Block a user