吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 392|回复: 0
收起左侧

[求助] 关于虚拟化增加CPU线程代码的求助 【批处理代码】

[复制链接]
Love0912 发表于 2025-4-11 10:12
写了一个代码,用来伪装信息,通过下面已经成功的代码可以实现修改电脑系统属性中 CPU信息,但是无法成功修改设备管理器和任务管理器中的CPU显示信息。
通过手动排查锁定到,通过修改注册表计算机\HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\CentralProcessor\0(最后这个0是对应的核心)目录下ProcessorNameString信息以及修改计算机\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\ACPI\GenuineIntel_-_Intel64_Family_6_Model_60_-_Intel(R)_Xeon(R)_CPU_E3-1230_v3_@_3.30GHz\_1(_1同样是对应的核心信息)目录下FriendlyName可以实现修改任务管理器中CPU的显示名称信息。但是无法增加线程数量(比如现在是4核8线程,我想修改成8核16线程),任务管理器中的CPU信息也没有得到修改实现。
求助有没有懂这方面的大佬给解答下。。有必要的话可以补悬赏。。
    噢,对了必要的补充一句,我只需要肉眼检测可以实现这个功能就行,对于一些第三方软件比如CPU-Z那种直接读取CPU微码不通过系统文件的,难度较高暂时就不考虑了,能实现普通观测达到效果就行,当然如果有大佬能解决这个问题那自然就更好了~~
下面是我写的代码。。
[Asm] 纯文本查看 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
@echo off
setlocal enabledelayedexpansion
:: 定义要伪造的CPU信息
set "FAKE_NAME=Intel(R) Core(TM) i9-12900K"
set "FAKE_CORES=16"   :: 伪造物理核心数
set "FAKE_THREADS=32" :: 伪造逻辑线程数
 
:: 备份原始注册表项
reg export "HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\CentralProcessor" backup_centralprocessor.reg >nul 2>&1
reg export "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\ACPI" backup_acpi.reg >nul 2>&1
 
:: 修改CPU核心信息(遍历所有逻辑处理器)
for /L %%i in (0,1,31) do (
    reg add "HKLM\HARDWARE\DESCRIPTION\System\CentralProcessor\%%i" /v ProcessorNameString /t REG_SZ /d "%FAKE_NAME%" /f >nul 2>&1
    reg add "HKLM\HARDWARE\DESCRIPTION\System\CentralProcessor\%%i" /v NumberOfCores /t REG_DWORD /d %FAKE_CORES% /f >nul 2>&1
    reg add "HKLM\HARDWARE\DESCRIPTION\System\CentralProcessor\%%i" /v NumberOfLogicalProcessors /t REG_DWORD /d %FAKE_THREADS% /f >nul 2>&1
)
 
:: 修改设备管理器中的友好名称(需根据实际ACPI路径调整)
for /f "tokens=*" %%a in ('reg query "HKLM\SYSTEM\CurrentControlSet\Enum\ACPI" /s ^| findstr "FriendlyName"') do (
    set "key=%%a"
    set "key=!key:FriendlyName=!"
    reg add "!key!" /v FriendlyName /t REG_SZ /d "%FAKE_NAME% (%FAKE_CORES%C/%FAKE_THREADS%T)" /f >nul 2>&1
)
 
:: 强制刷新硬件列表
echo 正在刷新硬件信息...
set "devmgr=%windir%\system32\devmgmt.msc"
start "" %devmgr%
timeout /t 5 >nul
taskkill /f /im mmc.exe >nul 2>&1
 
echo 修改完成!第一部分搞定!
pause

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2025-5-22 12:41

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表