PWRCFG.EXE 命令行实用程序所做的更改存储在哪里?

Eni*_*gma 5 windows-7 command-line process power-management

特别是关于另一个答案的以下部分,是否有我可以手动设置/编辑此实用程序正在做什么的地方?

Powercfg 命令行选项

在命令行中,您可以键入

POWERCFG -REQUESTSOVERRIDE PROCESS name_of_the_process
Run Code Online (Sandbox Code Playgroud)

显示系统,这将阻止 Windows 7 在某个进程运行时进入睡眠状态。我从未使用过它,所以你必须在这里阅读手册。

用法:

POWERCFG -REQUESTSOVERRIDE <CALLER_TYPE> <NAME> <REQUEST>
Run Code Online (Sandbox Code Playgroud)

指定以下调用者类型之一:PROCESS、SERVICE、DRIVER。这是通过调用 POWERCFG -REQUESTS 命令获得的。指定呼叫者姓名。这是从调用 POWERCFG -REQUESTS 命令返回的名称。指定一个或多个以下幂。请求类型:显示、系统、离开模式。

例子:

POWERCFG -REQUESTSOVERRIDE PROCESS wmplayer.exe Display System
Run Code Online (Sandbox Code Playgroud)

要删除电源请求覆盖,请使用 -REQUESTSOVERRIDE 选项,但不要指定任何类型的覆盖(System、Display、AwayMode),如下例所示:

POWERCFG -REQUESTSOVERRIDE PROCESS wmplayer.exe
Run Code Online (Sandbox Code Playgroud)

Ste*_*her 7

尽管其他答案告诉我们可以使用哪些工具来尝试找出答案很好,但它们实际上并没有回答信息的存储位置。

覆盖存储在 Process、Service 和 Driver 键下

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerRequestOverride\
Run Code Online (Sandbox Code Playgroud)

每个覆盖是通过过程的名称,并是组合的值命名为DWORD这些

  • 1 = 显示
  • 2 = 系统
  • 4 = 外出模式
  • 8 = 执行

因此示例命令:

POWERCFG -REQUESTSOVERRIDE PROCESS wmplayer.exe Display System
Run Code Online (Sandbox Code Playgroud)

在注册表中生成此结果:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerRequestOverride\Process]
"wmplayer.exe"=dword:00000003
Run Code Online (Sandbox Code Playgroud)

在撰写本文时,这仍然适用于最新版本的 Windows 10。


mag*_*981 1

您可以使用RegFromApp捕获更改。

RegFromApp 监视您选择的应用程序所做的注册表更改,并创建一个标准 RegEdit 注册文件 (.reg),其中包含应用程序所做的所有注册表更改。您可以在需要时使用生成的 .reg 文件通过 RegEdit 导入这些更改。

在此输入图像描述

另一种方法是使用RegShot 2创建 2 个注册表快照主机(1 个更改前和 1 个更改后),然后让工具比较快照并列出差异。