|
本帖最后由 yh_tl 于 2023-11-21 09:06 编辑
百度了网上能见到的好几个办法和工具,在我的mini机测试全部判断失败了。自力更生吧,仔细比对后发现其实关键点只要判断有无“Services\CmBatt\Enum”的注册表项就行了,是否具有广泛通用性,有兴趣的可以一起测试下……。
强迫症犯了,今天又做了下极端情况下的测试发现“ACPI\ACPI0003”或“{72631e54-78a4-11d0-bcf7-00aa00b7b32a}\0000”
正常情况下是可以判断的,但是都存在极端条件下会出错的情况,就是在非PE条件下,在笔记本启动过的比如vhd系统或者什么克隆系统,回到台式机,注册表会有残留,Services\CmBatt\Enum 这个才是会实时改变,感觉改判别这个准确度高点
命令修正如下:(开关小键盘用到了 PECMD.EXE,非PE下测试需在系统中自行增加 PECMD.EXE 这个命令)
reg query HKLM\SYSTEM\ControlSet001\Services\CmBatt\Enum >nul 2>nul && pecmd numk 0 || pecmd numk 1
|
|