加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 业界 > 正文

Windows 进程你需要知道的技巧

发布时间:2018-09-11 19:33:43 所属栏目:业界 来源:极客创享会
导读:9月15日技术沙龙 | 与东华软件、AWS、京东金融、饿了么四位大咖探讨精准运维! 问题引入 不知道大家最近工作生活中有没有碰到这样的问题: 1、卸载程序,结果没卸载干净 程序的安装目录中还剩下一个dll文件。想删,结果系统提示说dll文件被某个进程占用了,
副标题[/!--empirenews.page--] 9月15日技术沙龙 | 与东华软件、AWS、京东金融、饿了么四位大咖探讨精准运维!

问题引入

不知道大家最近工作生活中有没有碰到这样的问题:

1、卸载程序,结果没卸载干净

 程序的安装目录中还剩下一个dll文件。想删,结果系统提示说dll文件被某个进程占用了,不让删。

2、安装软件后需要破解或者修改一些配置,通常会有替换配置文件 dll 文件。但是有些情况当安装软件时

 其服务默认是自动开启的,此时也就会用到对应的 dll 文件,这个时候在进行更改就会出现异常,

 windows 会提示该文件已被某个进程占用。

Windows 进程你需要知道的技巧

我最近在安装一个服务组件的软件时,因为其内置了一个 sql 数据库程序,当时没留意。再替换配置文件 时才发现 dll 文件被某个进程占用了。重启程序、重启电脑都未能解决,问题就指向了一个原因,那就是该服务是自动开启的,即 windows 开机就自动开启,因而也就会一直占用该 dll 文件。

但是通过 windows 的服务列表界面有很多服务一眼也看不出是哪个服务占用。(当然对启动的服务都很了解的话,就会知道安装一个软件会有哪些服务被启动。)

被这个问题卡住了,搜索了半天资料找到了下面这个神器:tasklist。(好吧,承认是windows平台的底层操作不熟,但是解决问题过程中学习成长还是很有成就感的不是,相信你也有这体会。)

关于 dll 文件

DLL ( Dynamic Link Library ) 文件为动态链接库文件,又称“应用程序拓展”,是软件文件类型。

在 Windows 中,许多应用程序并不是一个完整的可执行文件,它们被分割成一些相对独立的动态链接库,即DLL文件,放置于系统中。当我们执行某一个程序时,相应的 DLL 文件就会被调用。一个应用程序可使用多个DLL文件,一个DLL文件也可能被不同的应用程序使用。

1、 作用

  • 在 Windows操作系统中,每个程序都可以使用该 DLL中包含的功能来实现“打开”对话框。这有助于促进代码重用和内存的有效使用。
  • 通过使用 DLL,程序可以实现模块化,由相对独立的组件组成。 因为模块是彼此独立的,所以程序的加载速度更快,而且模块只在相应的功能被请求时才加载。
  • 此外,可以更为容易地将更新应用于各个模块,而不会影响该程序的其他部分。

2、 特点

  • 使用较少的资源
  • 推广模块式体系结构

三、 简化部署和安装

利器登场

一、用法明细

tasklist  这个命令还是很好使的,先看下用法手册:

  1. F:>help tasklist 
  2.  
  3. TASKLIST [/S system [/U username [/P [password]]]] 
  4.          [/M [module] | /SVC | /V] [/FI filter] [/FO format] [/NH] 
  5.  
  6. 描述: 
  7.     该工具显示在本地或远程机器上当前运行的进程列表。 
  8.  
  9.  
  10. 参数列表: 
  11.    /S     system           指定连接到的远程系统。 
  12.  
  13.    /U     [domain]user    指定应该在哪个用户上下文执行这个命令。 
  14.  
  15.    /P     [password]       为提供的用户上下文指定密码。如果省略,则 
  16.                            提示输入。 
  17.  
  18.    /M     [module]         列出当前使用所给 exe/dll 名称的所有任务。 
  19.                            如果没有指定模块名称,显示所有加载的模块。 
  20.  
  21.    /SVC                    显示每个进程中主持的服务。 
  22.  
  23.    /APPS 显示 Microsoft Store 应用及其关联的进程。 
  24.  
  25.    /V                      显示详细任务信息。 
  26.  
  27.    /FI    filter           显示一系列符合筛选器 
  28.                            指定条件的任务。 
  29.  
  30.    /FO    format           指定输出格式。 
  31.                            有效值: "TABLE"、"LIST"、"CSV"。 
  32.  
  33.    /NH                     指定列标题不应该 
  34.                            在输出中显示。 
  35.                            只对 "TABLE" 和 "CSV" 格式有效。 
  36.  
  37.    /?                      显示此帮助消息。 
  38.  
  39. 筛选器: 
  40.     筛选器名称     有效运算符           有效值 
  41.     -----------     ---------------           -------------------------- 
  42.     STATUS          eq, ne                    RUNNING | SUSPENDED 
  43.                                               NOT RESPONDING | UNKNOWN 
  44.     IMAGENAME       eq, ne                    映像名称 
  45.     PID             eq, ne, gt, lt, ge, le    PID 值 
  46.     SESSION         eq, ne, gt, lt, ge, le    会话编号 
  47.     SESSIONNAME     eq, ne                    会话名称 
  48.     CPUTIME         eq, ne, gt, lt, ge, le    CPU 时间,格式为 
  49.                                               hh:mm:ss。 
  50.                                               hh - 小时, 
  51.                                               mm - 分钟,ss - 秒 
  52.     MEMUSAGE        eq, ne, gt, lt, ge, le    内存使用(以 KB 为单位) 
  53.     USERNAME        eq, ne                    用户名,格式为 
  54.                                               [域]用户 
  55.     SERVICES        eq, ne                    服务名称 
  56.     WINDOWTITLE     eq, ne                    窗口标题 
  57.     模块         eq, ne                    DLL 名称 
  58.  
  59. 注意: 当查询远程计算机时,不支持 "WINDOWTITLE" 和 "STATUS" 
  60.       筛选器。 
  61.  
  62. Examples: 
  63.     TASKLIST 
  64.     TASKLIST /M 
  65.     TASKLIST /V /FO CSV 
  66.     TASKLIST /SVC /FO LIST 
  67.     TASKLIST /APPS /FI "STATUS eq RUNNING" 
  68.     TASKLIST /M wbem* 
  69.     TASKLIST /S system /FO LIST 
  70.     TASKLIST /S system /U 域用户名 /FO CSV /NH 
  71.     TASKLIST /S system /U username /P password /FO TABLE /NH 
  72.     TASKLIST /FI "USERNAME ne NT AUTHORITYSYSTEM" /FI "STATUS eq running" 

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读