想做一个通过process来分析,监控下班时间在玩游戏的计算机程序,其中分析这一块已经做好啦,请问监控这一块大家有什么想法,下面是我的想法,请大家帮忙分析!
1)做成一个下班时间启动,上班时间停止的service,搜索整个Lan里online计算机的所有processes,然 后分析把是game的process写到SQL里,5分钟搜索一次.
2)做成一个下班时间启动,上班时间停止的service,先分析一次整个Lan里online计算机的所有  pocesses并写入SQL,再实时监控所有processes,一旦有新增online计算机或已经online计算机
但有新增process,就分析新增的processes,然后把是game的process写到SQL里
3)其它方法?

解决方案 »

  1.   

    就是说,大家上班的时候就可以玩游戏了,哦yeah^_^
      

  2.   

    1)装个头要很多钱的!
    2)上班时间我不管的,他爱玩不玩,其实他根本没时间玩game的,每个人身兼数职!
      但是下班时间要么关机,要么做事!绝对不能玩game!DX们帮我看看思路啊!
      

  3.   

    1方法好像查询,简单但是显得低效,不过楼主描述的环境里应该也不会要求太高吧,估计也能满足要求
    2方法类似中断,从效率上好点,实现会复杂些吧,不过2比1的好处就是在电脑启动的时候或者打开程序的时候Service才开始分析进程,那样的话Service工作的很隐蔽,就算占用很多资源的话用户也可能以为是打开应用程序造成的,呵呵,如果每5分钟机器卡一次就值得怀疑了。所以觉得还是2比较好一点了
      

  4.   

    大致步骤如下:
    1、获得局域网的机器,参看
     http://search.csdn.net/Expert/topic/1631/1631657.xml?temp=.8883631
    2、至于要获得每个机器里的进程,首先需要知道机器用户(好像必须是administrators组的)
      然后用此用户连接当前机器,再用wmi获得机器所运行的process信息;
    至于要放到sql之类,你可以自己做了。
      

  5.   

    To :Knight94(愚翁) ,Thanks!
    你的意思是1)不断循环的获得局域网机器吗?
              2)对同一台机,新增的process查询,要等到下一轮循环?
      

  6.   

    To: SunShowHeat(蓝色幻想)
     说句实在的,如果让他们下班可以玩Game,那我在楼下开的网吧就没生意啦!既然老板也反对,为什么不监控一下呢!
      

  7.   

    1)不断循环的获得局域网机器吗?
    不需要不断循环,你可以开一个线程,定时去搜索一下,把新增的机器放到数据库中2)对同一台机,新增的process查询,要等到下一轮循环?
    对于每一台机器process查询,可以单独开线程去做那么大致思路如下:
    一个线程去搜索局域网机器,并把机器的信息放到数据库中;
    然后从数据库中获得机器列表,你可以同时开多个线程,每个线程去一台机器的process进行查询。