tasklist提示无效类或Taskkill提示错误找不到

现象描述:

1.电脑上任务管理器可以正常使用
2.taskkill /?命令可以正常运行
3.使用tasklist命令时会出错的,错误是“错误:无效类”
4.使用taskkill进程会出错,错误是“错误:无效类”或者是“错误:找不到”,但是在任务管理器可以看到要kill的进程

调查过程:

1.首先怀疑是系统文件损坏,使用sfc /scannow检查系统文件并未发现错误
2.使用:for %1 in (%windir%\system32*.dll) do regsvr32.exe /s %1 重新注册dll后未解决该问题
3.进一步调查怀疑是wmi损坏导致的,使用wbemtest对该怀疑进行了验证,操作如下:
(1)命令行中运行wbemtest,出现如下界面
在这里插入图片描述
(2)点击连接,在命名空间中输入root\cimv2,点击连接
在这里插入图片描述
(3)出现如下界面后,点击查询
在这里插入图片描述
(4)在输入查询中输入如下内容:select * from win32_process 点击应用
在这里插入图片描述
(5)若是WMI没有问题,则会出现如下界面
在这里插入图片描述
本次本文章解决以下场景:
在这里插入图片描述
通过该现象可以确认是WMI损坏导致的这个问题

解决办法:

1.点击开始,点击运行,输入services.msc后回车。
2. 右键点击 Windows Management Instrumentation 服务,点击属性。
3. 在General 栏上,设置启动类型为 Disable 然后点击确定。
4. 右键点击Windows Management Instrumentation 服务,并点击停止。(如果服务已经停止的话,请跳过该步骤)
5. 定位到%windir%\system32\wbem目录。
6. 将子文件夹Repository 重命名为Repository.old。
7. 创建一个批处理文件,包含下面的信息:

cd %windir%\system32\wbem
for /f %%s in (‘dir /b /s %windir%\system32\wbem*.dll’) do regsvr32 /s %%s
for /f %%s in (‘dir /b /s %windir%\system32\wbem*.mof’) do mofcomp %%s
或命令行执行(管理员权限)
(
echo cd %windir%\system32\wbem
echo for /f %%s in (‘dir /b /s %windir%\system32\wbem*.dll’) do regsvr32 /s %%s
echo for /f %%s in (‘dir /b /s %windir%\system32\wbem*.mof’) do mofcomp %%s
) > script.bat

  1. 将该文件保存到 c:\script.bat 。
  2. 双击运行这个bat文件(管理员权限)
  3. 等待命令的完成,如果此过程提示找不到文件,那么就在另一台电脑上拷贝此目录覆盖你的文件。
  4. 注意:次命令会运行数分钟,耐心等待!
  5. 打开服务MMC 。
  6. 右键点击 Windows Management Instrumentation 服务,点击属性。
  7. 在General 栏上,设置启动类型为Automatic 然后点击确定。
  8. 启动Windows Management Instrumentation 服务。
  9. 重新启动电脑,问题解决!
  • 11
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值