某狗输入法中包含的“流氓”exe,会不定时的弹窗

这些exe对我来说很容易手动就直接关掉,或者直接找到其位置删除掉。

不过某狗的流氓是真的流氓:删掉我,还给您给装上!

所以我就想在开机时候自动将这些进程干掉,或者说删掉。

今天把这些进程先干掉,删除还没来得及加。

把代码先附上,有同样受“流氓”困扰的兄弟可以做个参考,有更好的方法也帮忙留言告知。

代码就是你随便在哪里执行,执行完之后,会杀掉进程中的两个“流氓”进程。并且将Python脚本自身加入到开启启动项中。

每次开机都会执行下这个脚本帮你先清理下门户。

另外这个我没转换为exe,你的电脑必须先安装python3。

import os
import shutilstartup_dir_path = "Microsoft\\Windows\\Start Menu\\Programs\\Startup"c_path = os.path.expanduser('~')def current_dir_is_system_startup_dir() :'''获取当前文件路径'''current_path = os.getcwd()'''判断是否在C盘下'''in_c_path = current_path.startswith(c_path)'''如果不在C盘User目录下'''if in_c_path == -1 :print("current path = " + current_path)print("current path is not in C:\  need to copy itself into Startup Menu.")return Falseelse :'''如果在C盘目User录下,就判断当前目录是否是开机自启动目录'''startup_dir_pos = current_path.find(startup_dir_path)'''如果不是开机自动启动目录则返回False'''if startup_dir_pos == -1 :print("current directory is not startup directory...")return False'''默认返回True'''return Truedef find_dest_dir_in_src_dir(compare_dir,src_dir):'''os.walk() 方法用于通过在目录树中游走输出在目录中的文件名,向上或者向下。'''for root,dirs,files in os.walk(src_dir):print("--------------------",root)if(root.find(compare_dir) != -1) :return rootprint("Can not find dest_dir !")return ""def copy_self_to_system_startup_dir() :'''如果当前目录已经是系统开机启动项目目录的话就不用做后面的copy动作了'''if(current_dir_is_system_startup_dir() == True) :return False'''获取当前路径'''current_path = os.getcwd()'''获取当前文件的名字'''current_file_name = os.path.basename(__file__)print(current_path,current_file_name)'''路径和名字组合为current_file_abs_path'''current_file_abs_path = current_path + "\\" + current_file_nameprint(current_file_abs_path)'''在C盘目录下查找是否有startup_dir_path,找到开机启动项所在的目录'''dest_dir = find_dest_dir_in_src_dir(startup_dir_path,c_path)'''如果没有找到开机启动目录就直接返回False'''if(dest_dir == "") :return False'''找到开机启动项目目录,就把这个目录和文件名字组合为dest_path'''dest_path = dest_dir + "\\" + current_file_name'''利用shutil.copyfile把当前的文件copy到启动目录'''shutil.copyfile(current_file_abs_path,dest_path)return True    # kill exe in exe_tupleexe_tuple = ("SogouCloud.exe","SohuNews.exe")
print(exe_tuple)for exe_name in exe_tuple:print("kill " + exe_name + "...")kill_command = "taskkill /IM " + exe_name + " /F"#print(kill_command)os.system(kill_command)copy_self_to_system_startup_dir()

还没有做删除的动作,删除的动作下次补上

下面是添加了删除的动作,有一项因为删除的时候需要管理员权限,还没有搞定以管理员权限做os.remove动作

import os
import shutilstartup_dir_path = "Microsoft\\Windows\\Start Menu\\Programs\\Startup"c_path = os.path.expanduser('~')def current_dir_is_system_startup_dir() :'''获取当前文件路径'''current_path = os.getcwd()'''判断是否在C盘下'''in_c_path = current_path.startswith(c_path)'''如果不在C盘User目录下'''if in_c_path == -1 :print("current path = " + current_path)print("current path is not in C:\  need to copy itself into Startup Menu.")return Falseelse :'''如果在C盘目User录下,就判断当前目录是否是开机自启动目录'''startup_dir_pos = current_path.find(startup_dir_path)'''如果不是开机自动启动目录则返回False'''if startup_dir_pos == -1 :print("current directory is not startup directory...")return False'''默认返回True'''return Truedef find_dest_dir_in_src_dir(compare_dir,src_dir):'''os.walk() 方法用于通过在目录树中游走输出在目录中的文件名,向上或者向下。'''for root,dirs,files in os.walk(src_dir):print("--------------------",root)if(root.find(compare_dir) != -1) :return rootprint("Can not find dest_dir !")return ""def copy_self_to_system_startup_dir() :'''如果当前目录已经是系统开机启动项目目录的话就不用做后面的copy动作了'''if(current_dir_is_system_startup_dir() == True) :return False'''获取当前路径'''current_path = os.getcwd()'''获取当前文件的名字'''current_file_name = os.path.basename(__file__)print(current_path,current_file_name)'''路径和名字组合为current_file_abs_path'''current_file_abs_path = current_path + "\\" + current_file_nameprint(current_file_abs_path)'''在C盘目录下查找是否有startup_dir_path,找到开机启动项所在的目录'''dest_dir = find_dest_dir_in_src_dir(startup_dir_path,c_path)'''如果没有找到开机启动目录就直接返回False'''if(dest_dir == "") :return False'''找到开机启动项目目录,就把这个目录和文件名字组合为dest_path'''dest_path = dest_dir + "\\" + current_file_name'''利用shutil.copyfile把当前的文件copy到启动目录'''shutil.copyfile(current_file_abs_path,dest_path)return True    '''
在directory中寻找exe_file,并删除exe_file
'''
def find_and_delete_exe(exe_file, directory):for root,dirs,files in os.walk(directory):if exe_file in files :exe_file_path = root + "\\" + exe_fileprint(exe_file_path)os.remove(exe_file_path)# kill exe in exe_tupleexe_dict = {"SogouCloud.exe":"F:\\Program Files\\SogouInput\\","SohuNews.exe":"F:\\Program Files\\SogouInput\\",#"dmininews.exe":"C:\\Program Files (x86)\\DTLSoft\\"}
print(exe_dict)for ( exe_name ,exe_path )in exe_dict.items() :print("kill " + exe_name + "...")kill_command = "taskkill /IM " + exe_name + " /F"'''kill 掉进程'''os.system(kill_command)'''找到并删除对应的exe'''find_and_delete_exe(exe_name,exe_path)copy_self_to_system_startup_dir()os.system("pause")

Python 开机自动关闭任务管理器中的流氓进程相关推荐

  1. 怎么查看任务管理器中,浏览器进程对应的是哪个网页?

    在日常使用电脑的过程中,我们会发现有些网页占用的系统资源比较大,导致电脑运行变慢或者卡顿.此时,我们可以通过任务管理器来查看浏览器进程对应的是哪个网页,以便进行相应的处理.在本文中,我将介绍如何查看任 ...

  2. 【完美解决】Word已经关闭但是任务管理器中仍有进程且占用CPU

    win+R后输入winword /safe,如果Word在这个模式下的使用正常,检查文件-选项-加载项,将COM加载项列表中的所有勾选全部取消,应用确定后,重启Word,看下效果.

  3. 在任务管理器中结束任务进程之后电脑直接黑屏了

    参考链接:https://jingyan.baidu.com/article/48206aeae61825606bd6b306.html

  4. wsappx关不掉_Win10系统中的wsappx进程什么?这个流程有什么作用什么?

    在Win10系统当中,wsappx进程占用了大量的CPU和磁盘资源,并且该进程是windows store和微软通用应用程序平台(uwp)的依赖进程.那么wsappx是什么进程呢?接下来小编就为大家详 ...

  5. python在中小学教学中的应用-在python程序中的进程操作

    ********在python程序中的进程操作********之前我们已经了解了很多进程相关的理论知识,了解进程是什么应该不再困难了,刚刚我们已经了解了, 运行中的程序就是一个进程.所有的进程都是通过 ...

  6. Python中的自定义进程和进程池

    Python中的自定义进程和进程池 文章目录 Python中的自定义进程和进程池 一.自定义进程 1.步骤: 2.例 进程池 1.概念 2.介绍--multiprocess.Pool 3.非阻塞式进程 ...

  7. python中线程和进程_python中线程和进程的简单了解

    一.操作系统.应用程序 1.硬件:硬盘.cpu.主板.显卡........ 2.装系统(本身也是一个软件): 系统就是一个由程序员写出来的软件,该软件用于控制计算机得硬盘,让他们之间进行互相配合. 3 ...

  8. Python | 面试必问,线程与进程的区别,Python中如何创建多线程?

    其实关于元类还有很多种用法,比如说如何在元类当中设置参数啦,以及一些规约的用法等等.只不过这些用法比较小众,使用频率非常低,所以我们 不过多阐述 了,可以在用到的时候再去详细了解.我想只要大家理解了元 ...

  9. python主线程和子线程_python 在threading中如何处理主进程和子线程的关系

    之前用python的多线程,总是处理不好进程和线程之间的关系.后来发现了join和setDaemon函数,才终于弄明白.下面总结一下. 1.使用join函数后,主进程会在调用join的地方等待子线程结 ...

最新文章

  1. CUDA Samples: approximate image reverse
  2. 训练不出结果_智能训练仪:专业化智能防控近视训练设备
  3. Android通过百度地图API用Service和Alarm在后台定时获取地理位置信息
  4. Spring Boot 集成 Druid 监控数据源
  5. 这个点名系统太好用了,快来看看……
  6. python缩进格式错误的是_Python 中常见错误总结
  7. SpringMVC中controller的跳转
  8. Python中[index for index, value in enumerate(a) if value > 3]
  9. springboot整合nacos配置实现实时更新
  10. Ubuntu U盘启动出现“Failed to load ldlinux.c32”解决
  11. ML Case Studies(0)
  12. 数据结构考研自用——动态顺序表的实现【王道/严蔚敏C语言版】
  13. 见证历史时刻!关于朗道-西格尔零点猜想
  14. 用 MeGUI 压制 DVDrip 入门
  15. vs2019中出现PyTorch is not linked with support for cuda devices的解决方法
  16. 最简单日柱推算法_怎样推算大运、小运、流年和命宫?
  17. QQ邮箱添加网易邮箱
  18. 那天喝酒把胆汁都吐出来了,找了个喝酒不伤身体的方法。。。经常喝酒的童鞋留着用吧...
  19. 计算机主机机箱背后,2.8L的办公电脑?可以背在显示器后面的主机—你见过吗?...
  20. 正则表达式的一些重要知识

热门文章

  1. tinyproxy配置文件_tinyproxy搭建HTTP代理
  2. Redis五种数据类型的应用场景
  3. Firewalld概述
  4. SAP成都C4C小李探花:浅谈Fiori Design Guidelines
  5. 11页PPT详解融资流程和秘笈
  6. YYModel解析2
  7. 埃森哲被勒索了,你的数据安全吗?
  8. 在kubernetes+istio中通过FQDN请求Nacos服务
  9. 【SSH】通过ssh实现远程登陆服务器!
  10. 服务器拷贝文件内存报错,使用服务器内存拷贝文件