有时,我使用Process Monitor调试软件,也可以在线玩游戏。其中一些游戏使用BattlEye反作弊软件,该软件拒绝在系统上启动Process Monitor后允许游戏运行,并在日志中显示:
08:06:46: Starting BattlEye Service...
08:06:49: Launching game...
08:07:07: Disallowed driver: "\??\C:\Windows\system32\Drivers\PROCMON23.SYS". Please unload it or reboot your system.
关闭进程监视器后,驱动程序仍保持加载状态,并且似乎没有卸载该驱动程序的选项。
其他几个问题也提供了有关使用net stop
或卸载驱动程序的答案sc stop
,但是ProcMon驱动程序不是服务,因此不起作用。我也尝试过在“设备管理器”中查找并启用“显示隐藏的设备”,但是没有一个条目显示与ProcMon相关。我无法删除驱动程序文件,因为该文件实际上不存在于文件系统中。ProcMon将文件存储在其可执行文件中,并根据需要将其提取。
我的问题不是这个问题的重复,它是一个类似的问题,其中驱动程序在重启后仍然存在。我的问题是关于不重新启动就卸载驱动程序。
标准驱动程序是服务,您确实可以通过net
和控制它们sc
。(例如,看看sc query beep
–停止“哔”驱动程序是关闭内部PC扬声器的常用方法。)
在早期的Process Monitor版本(可能是预先2.3,当它仍然支持Windows XP),它会安装一个“传统”设备驱动程序是通过看得见sc
,设备管理等。
当前版本的Process Monitor似乎在启动驱动程序后立即从注册表中删除了驱动程序/服务配置。您可以通过自己监视ProcMon来查看此信息。可以使用类型2(内核FS驱动程序)手动重新添加服务,并且该服务将立即显示为已在运行。
但是,该服务还将报告“ NOT_STOPPABLE”,并且将拒绝任何停止尝试。
此外,PROCMON23现在通过过滤器管理器(FltDrv)将其自身注册为文件系统微型过滤器驱动程序。您可以在的输出中看到它fltmc
,但是尝试从外部卸载它也会失败(可能是因为驱动程序没有卸载例程):
C:\ WINDOWS \ system32> fltmc 筛选器名称数量实例高度框 ------------------------------ ------ ------- ------------ ----- PROCMON23 0 385200 0 WdFilter 4 328010 0 storqosflt 0 244000 0 wcifs 1 189900 0 ... C:\ WINDOWS \ system32> fltmc unload PROCMON23 卸载失败,错误:0x801f0010此时 请勿将过滤器与卷分离。
由于“官方” CLI工具无法从FltMgr中删除过滤器,并且FltMgr本身是无法在不重新启动的情况下重新启动的“关键”驱动程序,因此似乎无法卸载PROCMON23或PROCMON24。
但是最有趣的部分是:在对procmon 3.40进行了上述检查之后,我发现网站上的最新版本是3.50(它使用更新的PROCMON24驱动程序)。启动新版本后,我被告知系统上已经存在较旧版本的驱动程序,应该重新启动。
因此,如果ProcMon本身无法在不重新启动的情况下卸载自己的驱动程序,那么我认为您可以放心地假设您也将无法卸载它。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句