远程软件监控方面的求教

问题描述

通过连频带凑,总算能远程读取已安装文件列表,求教怎样远程删除已选中的读取到的软件usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingSystem.Windows.Forms;usingSystem.Management;usingSystem.Threading;usingSystem.Net.NetworkInformation;namespace远程软件监控{publicpartialclassForm1:Form{publicForm1(){InitializeComponent();}privatevoidbtnGetInfo_Click(objectsender,EventArgse){listBox1.Items.Clear();Threadth=newThread(GetSoftwareInfo);th.IsBackground=true;th.Start();}List<string>list=newList<string>();privatevoidGetSoftwareInfo(){ConnectionOptionsConn=newConnectionOptions();Conn.Username=tbxName.Text;Conn.Password=tbxPwd.Text;ManagementScopeMs=newManagementScope("\\"+tbxPCName.Text+"\root\cimv2",Conn);if(IsMachineUp(tbxPCName.Text)==true){Ms.Connect();stringsoftwareRegLoc=@"SoftwareMicrosoftWindowsCurrentVersionUninstall";ManagementClassregistry=newManagementClass(Ms,newManagementPath("StdRegProv"),null);//StdRegProvisWMIclassManagementBaseObjectinParams=registry.GetMethodParameters("EnumKey");//EnumKey方法有两个输入参数(hDefKey,sSubKeyName)和两个输出参数(ReturnValue,sNames[])inParams["hDefKey"]=0x80000002;//HKEY_CLASSES_ROOT(2147483648(0x80000000))//HKEY_CURRENT_USER(2147483649(0x80000001))//HKEY_LOCAL_MACHINE(2147483650(0x80000002))//HKEY_USERS(2147483651(0x80000003))//HKEY_CURRENT_CONFIG(2147483653(0x80000005))inParams["sSubKeyName"]=softwareRegLoc;//hDefKey+sSubKeyName组成完整路径HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionUninstall//sNames即为Uninstall下面的所有子路径名,sNames[]输出为数组,要用数组来接受数据ManagementBaseObjectoutParams=registry.InvokeMethod("EnumKey",inParams,null);//上述用法见https://msdn.microsoft.com/zh-cn/library/ssk42c11(v=vs.100).aspxstring[]programGuids=outParams["sNames"]asstring[];foreach(stringsubKeyNameinprogramGuids){inParams=registry.GetMethodParameters("GetStringValue");//GetStringValue方法有4个参数,三个输入参数,一个输出参数//[in]            uint32hDefKey=2147483650,hDefKey=2147483650等同于hDefKey=0x80000002//[in]            stringsSubKeyName,//[in]            stringsValueName,//[out]          stringsValueinParams["hDefKey"]=0x80000002;inParams["sSubKeyName"]=softwareRegLoc+@""+subKeyName;inParams["sValueName"]="DisplayName";//ReadRegistryValueoutParams=registry.InvokeMethod("GetStringValue",inParams,null);if(outParams.Properties["sValue"].Value!=null){stringsoftwareName=outParams.Properties["sValue"].Value.ToString();//programs.Add(softwareName);try{listBox1.Items.Add(softwareName);list.Add(softwareName);}catch(Exceptionex){}}}}else{MessageBox.Show("当前电脑未在线或不存在");}}privatestaticboolIsMachineUp(stringhostName){boolretVal=false;try{PingpingSender=newPing();PingOptionsoptions=newPingOptions();//UsethedefaultTtlvaluewhichis128,//butchangethefragmentationbehavior.options.DontFragment=true;//Createabufferof32bytesofdatatobetransmitted.stringdata="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";byte[]buffer=Encoding.ASCII.GetBytes(data);inttimeout=120;PingReplyreply=pingSender.Send(hostName,timeout,buffer,options);if(reply.Status==IPStatus.Success){retVal=true;}}catch(Exceptionex){retVal=false;Console.WriteLine(ex.Message);}returnretVal;}privatevoidForm1_Load(objectsender,EventArgse){Control.CheckForIllegalCrossThreadCalls=false;}privatevoidbtnUninstall_Click(objectsender,EventArgse){stringproductName=list[listBox1.SelectedIndex];}}}

解决方案

解决方案二:
换张图

时间: 2024-10-31 14:14:31

远程软件监控方面的求教的相关文章

怎么查看电脑是否被远程软件监控

问题描述 怎么查看自己的电脑是否被远程软件监控,要步骤的哦!!谢谢 解决方案 解决方案二:首先要明确你的机器操作系统.然后如果是windows的,远程端口一般是3389,最好看下taskmgr下面是否有异常进程linux比较多,22端口,23端口等,可以通过ps-ef看下是否有异常进程解决方案三:windows下netstat-a一下,看看都打开了些什么端口,什么协议,稍微注意分析一下就知道了.

aa-有没有 远程监控磁盘剩余空间的软件 监控多台服务器

问题描述 有没有 远程监控磁盘剩余空间的软件 监控多台服务器 有没有 远程监控磁盘剩余空间的软件 监控多台服务器 谢谢 解决方案 nagios监控远程主机的存活.磁盘空间监控.负载监控.进程数监控.ip 连接 解决方案二: http://www.hackbase.com/tech/2011-02-21/62696.html 解决方案三: nagios可以的,磁盘空间监控.负载监控.进程数监控. 解决方案四: 下面几款软件都不错,可根据具体情况选择使用. Nagios是一个监视系统运行状态和网络信

12-有没有 远程监控磁盘剩余空间的软件 监控多台服务器

问题描述 有没有 远程监控磁盘剩余空间的软件 监控多台服务器 有没有 远程监控 磁盘剩余空间 的软件 监控多台服务器 求指教 解决方案 微软的SCOM好像可以做这个事情 解决方案二: 你可以用azbbix这个开源的软件,它不但可以监控磁盘剩余空间,并且通过邮件和短信告警.还可以监控cpu 内存等等各种参数,而且支持idc级别的服务器群集. 解决方案三: 如果你使用的是windows平台,可以使用system center. 解决方案四: 写错了,是zabbix http://baike.baid

服务器-cc3200远程视频监控的视频传输问题

问题描述 cc3200远程视频监控的视频传输问题 用iis做了一个web服务器,cc3200从摄像头获取到的视频如何发送到服务器.http协议具体该怎么实现.具体是怎么发送的,发送到服务器的什么地方,服务器如何接收. 解决方案 直接用windows server的流媒体服务就可以了. 解决方案二: 先要看你的摄像头是如何处理的,比如支持发送视频流.这样你就只需要见一个iis,http服务器等待对应数据流的发送,然后存到一个特定位置.

无线远程视频监控系统的优势及发展方向

无线远程视频监控系统的优势 无线远程视频监控系统的发展一直是以应用的便捷性.技术的先进性为方向.无线远程视频监控系统无论是应用.技术还是发展环境上都具备独特的魅力和优势,必然在视频监控领域占据一定的比例,预计在未来的几年内将会获得较快的发展速度. 应用的必要性 一套完整的无线远程视频监控系统必然包括监控前端.监控中心端和传输三个部分.无线监控系统最大的优点是免去布线的麻烦,实现了从前端到后端的快捷接入.对于像山区林地监控.高速公路沿线监控.油田无人区监控.边防岸线监控等常规布线方式难以实现,成本

visualvm监控jvm及远程jvm监控方法(转)

 VisualVM是Sun的一个OpenJDK项目,其目的在于为Java应用创建一个整套的问题解决工具.它集成了多个JDK命令工具的一个可视化工具,它主要用来监控JVM的运行情况,可以用它来查看和浏览Heap Dump.Thread Dump.内存对象实例情况.GC执行情况.CPU消耗以及类的装载情况. Java开发人员可以使用 VisualVM创建必要信息的日志,系统管理人员可用来监控及控制Java应用程序在网络中的运行状况.    下载页面 : https://visualvm.dev.ja

Jsp 网页中实现 远程摄像头监控视频

问题描述 小弟个新手,刚做Java半年多,以前主要从事Java Gui 方面的软件开发,对JavaWeb 有点了解,现在做一个网站,其他都已实现,遇到一个问题,需要在 网页中嵌入 一个摄像头视频监控视频,就是打开这个网页,可以看到家中摄像头监控的画面,请问各位大哥,小弟该如何实现这一功能呢 问题补充:aiyingpower 写道 解决方案 flex很快就可以上手的,我的博客上有关于red5+flex实现的视频会议的搭建,你可以参考一下.解决方案二:用flex做呗,flex+red5解决方案三:摄

基于android的远程视频监控系统

http://www.cnblogs.com/feifei1010/archive/2012/08/31/2664939.html 基本过程是android作为socket客户端将采集到的每一帧图像数据发送出去,PC作为服务器接收并显示每一帧图像实现远程监控.图片如下(后来PC端加了个拍照功能)...   (PS.刚学android和java不久很多东西还不懂,高手若是知道哪些地方可以继续优化的话还请多多指点下啊) 系统代码如下:一.android手机客户端(1)AndroidManifest.

港媒称解放军试点解除手机禁令,但有软件监控

香港<南华早报>4月19日文章,原题:中国试点解除部队使用手机禁令,但将有特殊软件监测.解放军士兵终于被允许使用智能手机了,这是解放军帮助部队更好"联网"的试点项目的一部分.但他们的智能手机设备被安装特殊软件,以监控官兵的日常行动轨迹. 官媒周一报道称,解放军某旅推出试点项目,解除了长期以来对部队官兵使用智能手机的限制.同时还制定了一系列规章制度来限制智能手机的应用范围.这是军队主动顺应人们上网满足日常娱乐和交流需求的必然趋势. 军队被禁止使用手机在全球都很普遍,尤其是在关