(1)显示指定被控端的实时信息:包括查看一台或多台轮询等方式。
(2)获取所有被控端的信息,如屏幕图像等。
(3)对被控端进行人工的控制:加入黑名单、加锁、解锁以及发布通知等。
根据以上的主要功能可以将控制端分成三个模块:控制模块、控制端消息引擎和网络传输模块,其中控制模块主要完成抓取控制端在被控端屏幂上屏幕图片信息并生成相应的消息,控制端消息引擎主要识别被控端发送过来的消息及调用相应的处理过程,网络传输模块传输控制端生成的消息。
5.1.1  控制模块的实现
    实时地监视被控端的目的是为了能够更好的管理和控制局域网中的机器。本系统的监控端流程如图5.1.1所示。
图5.1.1监控端流程
    主要功能代码实现及说明:
(1)    void CServerLanDlg::OnReceived(WPARAM wParam, LPARAM lParam)
此函数主要是接收消息引擎,根据监控端接收到的消息来处理响应,主要接收到的消息包括USER_ON,USER_OFF_USER_JOIN,以及获得被控端显示数据。
void CServerLanDlg::OnReceived(WPARAM wParam, LPARAM lParam)
{
    //接收数据
    char* buffer = new char[MAX_BUFF];
    sockaddr_in addr;
    int factsize =sizeof(sockaddr);
    int ret = recvfrom(m_socket,buffer,MAX_BUFF,0,(sockaddr*)&addr,&factsize);
    
    if (ret != -1)
    {
        if(ret == USER_ON)
        {
            if(buffer[0] == 'w')
            {
                int i = m_List1.GetItemCount();
                int flag = 0;
                for(int j = 1; j <= i; j++)
                {
                    CString tempIP;
                    m_List1.GetItemText(j-1,0,tempIP.GetBuffer(15),15);
                    tempIP.ReleaseBuffer();
                    if(tempIP == inet_ntoa(addr.sin_addr))
                    {
                        flag = 1;
                        break;
                    }
                }
                if(flag)
                {
                    m_List1.SetItemText(j-1,1,"在线");
                }
                else
                {
                    m_List1.InsertItem(i,inet_ntoa(addr.sin_addr));
上一篇:C#文本朗读与语音识别软件开发与设计
下一篇:基于MM路径的集成测试用例生成技术研究

远程访问服务【1388字】

控制器局域网(CAN)技术茬工...

市场化全球化知识化城市...

局域网的信息安全与病毒防治策略【4377字】

局域网图书资料查询系统【4032字】

IPSec远程访问VPN的安全策略研究【1610字】

计算机基础課程远程教學...

志愿者活动的调查问卷表

10万元能开儿童乐园吗,我...

国内外图像分割技术研究现状

中国学术生态细节考察《...

承德市事业单位档案管理...

医院财务风险因素分析及管理措施【2367字】

公寓空调设计任务书

AT89C52单片机的超声波测距...

神经外科重症监护病房患...

C#学校科研管理系统的设计