如何关闭瑞星的监控?(100分)

  • 主题发起人 主题发起人 一少8
  • 开始时间 开始时间

一少8

Unregistered / Unconfirmed
GUEST, unregistred user!
我试着强制结束进程, 可是关不掉, 观察了, 系统里面有个RsRavMon Service服务, 只有这个服务关了, 瑞星就可以关掉了,但RsRavMon Service我找了大富翁中关服务的代码, 就是关不掉, net stop RsRavMon Service也不成, 怎么办?
 
net stop RsRavMon Service ??<br>看来你是把服务名字写错了。 你要分清楚什么是服务名称和服务显示名称。
 
不好意思 没注意, 应该是net stop RsRavMon<br>可是运行后会出现个提示框&quot;你是否要关闭瑞星监控&quot;<br>怎么不让这框出现
 
不要用瑞星,瑞星=木马,即使你关闭它所有的功能,它依然会有东西活在你内存中。。。
 
杀死该死的瑞星。
 
各位老大, 支个能解决的招啊?
 
我遇过一个病毒,就能悄悄停了瑞星的监控中心与防火墙,并不让它再启动。<br>楼主,即然手动能停止,为何~#¥%~~~!)<br>若很容易就关了服务,那瑞星的客户就没了!
 
楼主自然想在程序里面实现吧,不会
 
103 MENU<br>LANGUAGE LANG_CHINESE, 0x2<br>{<br>POPUP &quot;MainMenu&quot;<br>{<br> MENUITEM &quot;设置&quot;, &nbsp;40011<br> MENUITEM SEPARATOR<br> MENUITEM &quot;监控中心&quot;, &nbsp;40016<br> MENUITEM &quot;开启所有监控&quot;, &nbsp;40026<br> MENUITEM &quot;关闭所有监控&quot;, &nbsp;40027<br> MENUITEM SEPARATOR<br> MENUITEM &quot;注册表监控列表&quot;, &nbsp;40018<br> MENUITEM &quot;网络黑名单列表&quot;, &nbsp;40017<br> MENUITEM &quot;文件监控白名单&quot;, &nbsp;40025<br> MENUITEM &quot;邮件监控黑白名单&quot;, &nbsp;32771<br> MENUITEM SEPARATOR<br> MENUITEM &quot;关于&quot;, &nbsp;40004<br> MENUITEM &quot;退出&quot;, &nbsp;40001<br>}<br>}<br>159 MENU<br>LANGUAGE LANG_CHINESE, 0x2<br>{<br>POPUP &quot;左建菜单&quot;<br>{<br> MENUITEM &quot;主程序&quot;, &nbsp;40013<br> MENUITEM &quot;升级程序&quot;, &nbsp;40012<br> MENUITEM SEPARATOR<br> MENUITEM &quot;详细设置&quot;, &nbsp;40020<br> MENUITEM &quot;历史记录&quot;, &nbsp;40005<br> MENUITEM SEPARATOR<br> MENUITEM &quot;瑞星短信通&quot;, &nbsp;40021<br> MENUITEM &quot;瑞星网站&quot;, &nbsp;40022<br> MENUITEM &quot;卡卡社区&quot;, &nbsp;40023<br> MENUITEM &quot;IP查询&quot;, &nbsp;40024<br> MENUITEM SEPARATOR<br> MENUITEM &quot;退出&quot;, &nbsp;40001<br>}<br>}<br>我的瑞星版本 18.22.20 更新日期:2006-04-12<br>仔细与瑞星的监控中心对照一下,发现有两个重要的菜单子项没有被显示出来。<br>不知能否利用:)
 
那就<br>net stop RsRavMon<br>然后执行10秒的回车动作,哈哈
 
以前有位高手回答过这个问题了,可是我忘了是哪位,只记得代码,还请这位大侠原谅。<br>如下:<br>uses<br> &nbsp;Windows, SysUtils, &nbsp;Forms,<br> &nbsp; StdCtrls,Tlhelp32, Classes, Controls;<br><br>type<br> &nbsp;TForm1 = class(TForm)<br> &nbsp; &nbsp;Edit1: TEdit;<br> &nbsp; &nbsp;Button1: TButton;<br> &nbsp; &nbsp;memo1: TMemo;<br> &nbsp; &nbsp;procedure Button1Click(Sender: TObject);<br> &nbsp;private<br> &nbsp; &nbsp;{ Private declarations }<br> &nbsp;public<br> &nbsp; &nbsp;{ Public declarations }<br> &nbsp;end;<br><br>var<br> &nbsp;Form1: TForm1;<br> &nbsp;s:string;<br>implementation<br><br>{$R *.dfm}<br><br><br>procedure TForm1.Button1Click(Sender: TObject);<br>var<br> &nbsp;lppe:tprocessentry32;<br> &nbsp;sshandle:thandle;<br> &nbsp;hh:hwnd;<br> &nbsp;found:boolean;<br>begin<br> &nbsp;<br> &nbsp;s:=lowercase(edit1.Text); &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;//要结束的进程名<br> &nbsp;sshandle:=createtoolhelp32snapshot(TH32CS_SNAPALL,0);<br> &nbsp;found:=process32first(sshandle,lppe);<br> &nbsp;while found do<br> &nbsp;begin<br> &nbsp;if (lowercase(extractfilename(lppe.szExeFile))=s) or (uppercase &nbsp;(lppe.szExeFile)=s) then<br> &nbsp; &nbsp;begin<br> &nbsp; &nbsp; &nbsp;hh:=OpenProcess(PROCESS_ALL_ACCESS,true,lppe.th32ProcessID);<br> &nbsp; &nbsp; &nbsp;TerminateProcess(hh,0); &nbsp; &nbsp; &nbsp; &nbsp;//杀死<br> &nbsp; &nbsp;end;<br> &nbsp; &nbsp;found:=process32next(sshandle,lppe);<br> &nbsp; &nbsp;memo1.lines.add(extractfilename(lppe.szExeFile));<br> &nbsp;end;<br> &nbsp;CloseHandle(sshandle);<br>end;<br><br>end.
 
这种方法已经过时了,呵呵
 
function ServiceStop(<br> &nbsp;sMachine,<br> &nbsp;sService : string ) : boolean;<br>var<br> &nbsp;//<br> &nbsp;// service control<br> &nbsp;// manager handle<br> &nbsp;schm,<br> &nbsp;//<br> &nbsp;// service handle<br> &nbsp;schs &nbsp; : SC_Handle;<br> &nbsp;//<br> &nbsp;// service status<br> &nbsp;ss &nbsp; &nbsp; : TServiceStatus;<br> &nbsp;//<br> &nbsp;// check point<br> &nbsp;dwChkP : DWord;<br>begin<br> &nbsp;// connect to the service<br> &nbsp;// control manager<br> &nbsp;schm := OpenSCManager(<br> &nbsp; &nbsp;PChar(sMachine),<br> &nbsp; &nbsp;Nil,<br> &nbsp; &nbsp;SC_MANAGER_CONNECT);<br><br> &nbsp;// if successful...<br> &nbsp;if(schm &gt; 0)then<br> &nbsp;begin<br> &nbsp; &nbsp;// open a handle to<br> &nbsp; &nbsp;// the specified service<br> &nbsp; &nbsp;schs := OpenService(<br> &nbsp; &nbsp; &nbsp;schm,<br> &nbsp; &nbsp; &nbsp;PChar(sService),<br> &nbsp; &nbsp; &nbsp;// we want to<br> &nbsp; &nbsp; &nbsp;// stop the service and<br> &nbsp; &nbsp; &nbsp;SERVICE_STOP or<br> &nbsp; &nbsp; &nbsp;// query service status<br> &nbsp; &nbsp; &nbsp;SERVICE_QUERY_STATUS);<br><br> &nbsp; &nbsp;// if successful...<br> &nbsp; &nbsp;if(schs &gt; 0)then<br> &nbsp; &nbsp;begin<br> &nbsp; &nbsp; &nbsp;if(ControlService(<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; schs,<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; SERVICE_CONTROL_STOP,<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ss))then<br> &nbsp; &nbsp; &nbsp;begin<br> &nbsp; &nbsp; &nbsp; &nbsp;// check status<br> &nbsp; &nbsp; &nbsp; &nbsp;if(QueryServiceStatus(<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; schs,<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ss))then<br> &nbsp; &nbsp; &nbsp; &nbsp;begin<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;while(SERVICE_STOPPED<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;&gt; ss.dwCurrentState)do<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;begin<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;//<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// dwCheckPoint contains a<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// value that the service<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// increments periodically<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// to report its progress<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// during a lengthy<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// operation.<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;//<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// save current value<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;//<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;dwChkP := ss.dwCheckPoint;<br><br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;//<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// wait a bit before<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// checking status again<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;//<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// dwWaitHint is the<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// estimated amount of time<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// the calling program<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// should wait before calling<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// QueryServiceStatus() again<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;//<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// idle events should be<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// handled here...<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;//<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Sleep(ss.dwWaitHint);<br><br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if(not QueryServiceStatus(<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; schs,<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ss))then<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;begin<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// couldn't check status<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// break from the loop<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;break;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;end;<br><br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if(ss.dwCheckPoint &lt;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;dwChkP)then<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;begin<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// QueryServiceStatus<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// didn't increment<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// dwCheckPoint as it<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// should have.<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// avoid an infinite<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// loop by breaking<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;break;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;end;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;end;<br> &nbsp; &nbsp; &nbsp; &nbsp;end;<br> &nbsp; &nbsp; &nbsp;end;<br><br> &nbsp; &nbsp; &nbsp;// close service handle<br> &nbsp; &nbsp; &nbsp;CloseServiceHandle(schs);<br> &nbsp; &nbsp;end;<br><br> &nbsp; &nbsp;// close service control<br> &nbsp; &nbsp;// manager handle<br> &nbsp; &nbsp;CloseServiceHandle(schm);<br> &nbsp;end;<br><br> &nbsp;// return TRUE if<br> &nbsp;// the service status is stopped<br> &nbsp;Result :=<br> &nbsp; &nbsp;SERVICE_STOPPED =<br> &nbsp; &nbsp; &nbsp;ss.dwCurrentState;<br>end;
 
后退
顶部