2025-12-13

Windows-UAC

1. UAC
1.1 UAC选项
1.2 触发UAC警告条件
1.3 避免UAC提示的方法
2. 提供管理员权限-任务计划方式
2.1 Windows 任务计划
2.2 快捷方式
2.3 运行
2.4 更便捷的UAC白名单小工具
3. 不提供管理员权限-RUNASINVOKER
3.1 RUNASINVOKER
3.2 补充说明
4. 应用程序兼容性工具包 (ACT)

1. UAC

用户帐户控制 (UAC) User Account Control 旨在防止对 Windows 进行未经授权的更改。 
当作需要管理员级权限时,UAC 会提示你批准或拒绝更改。这有助于保护 Windows 设备免受恶意软件和未经授权的修改的影响。 

可以通过打开控制面板 > 系统和安全 > 更改用户帐户控制设置来更改 UAC 行为。
将滑块移动到所需的通知级别,然后选择“ 确定”以保存更改。

1.1 UAC选项

选项如下,中间2项基本一致,只是第三项更加友好些。
  • 始终通知
  • 仅当应用尝试对我的计算机进行更改时通知我 (默认)
  • 仅当程序尝试更改我的计算机时通知我 (不调暗我的桌面)
  • 从不通知 (禁用 UAC)

1.2 触发UAC警告条件

  • 安装或卸载程序
  • 账户设置
  • 系统各种设置
  • 注册表操作
  • 访问系统目录,程序目录
  • 访问其他用户目录
  • 安装驱动
  • 设置共享
  • … 
更详细的列表: 

1.3 避免UAC提示的方法

禁用 UAC 是不推荐的。但可以针对个别软件进行相应的设置,规避UAC提示。

避免UAC提示的方法有: 
  • 提供管理员权限
    • Windows 任务计划
    • 更便捷的UAC白名单小工具
  • 不提供管理员权限
    • [RUNASINVOKER] 强制软件 [以普通用户身份运行] 以取消 UAC 提示
  • 微软应用程序兼容性工具包 (ACT) Application Compatibility Toolkit

2. 提供管理员权限-任务计划方式

方法有点绕,效果还不错。步骤是先建立一个任务计划,再建立对应的快捷方式。参照原文连接:

2.1 Windows 任务计划

 右键开始菜单,选择计算机管理(cmd: compmgmt)
计算机管理中,依次点开: 系统工具\任务计划程序\任务计划执行库
菜单栏: 操作\创建任务
  1. 创建任务界面\常规页签 
    • 填写名称,比如: RunCMDAdmin
    • 勾选 使用最高权限运行
  2. 创建任务界面\操作页签
    • 点击 [新建]
  3. 新建操作界面\
    • 程序或脚本: C:\Windows\System32\cmd.exe 
    • 起始于(可选): D:\Tom\Documents
      • 说明: 起始于路径,可以定义打开cmd时的初始位置,对于需要将命令执行结果写入文本文件的需要。可以输入保存文件的位置。
    • 点击[确定]
计划任务建好,可以右键计划任务名称,选择运行看看。
打开的cmd是管理员权限,且过程没有弹出UAC警告。

2.2 快捷方式

桌面空白处右键菜单 选择 新建\快捷方式
快捷方式的位置填写: schtasks.exe /run /tn "RunCMDAdmin" 
点击 下一步 填写快捷方式名称: cmdAdmin 点击[完成]

2.3 运行

双击创建的快捷方式就会发现不会弹出 UAC 并且 [以管理员身份运行] 了。 

2.4 更便捷的UAC白名单小工具

第三方小工具,把前面的计划任务到快捷方式的操作打包成的便捷的小工具。
约50k的小工具,界面很简单,下载下来就能用。原理就是前面的添加计划任务方式。

3. 不提供管理员权限-RUNASINVOKER

强制软件 [以普通用户身份运行] 以取消 UAC 提示。参照原文连接:

3.1 RUNASINVOKER

regedit 打开注册表编辑器
计算机\HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers
进入 Layers 文件夹后,新建一个 [字符串值]。
字符串名称就是你指定的软件完整路径, 无论路径里有没有空格都不需要加上引号!比如: 
F:\Program Files\HoYoPlay\games\Genshin Impact game\GenshinImpact.exe

然后右键刚刚新建的字符串 - 修改 - 数值数据:RUNASINVOKER
完成,可以回到桌面打开GenshinImpact看看,没有UAC警告,运行正常。

注意:如果你打算添加新字符串值时,发现该注册表项已存在了,那么说明你设置过该软件的 兼容性(右键 - 属性 - 兼容性 选项卡),遇到这种情况,你只需追加到最后就行了。
例如注册表已存在的数值数据为:~ WIN7RTM
那么就改成:~ WIN7RTM RUNASINVOKER

3.2 补充说明

原文添加了 WeGame 的 RUNASINVOKER。我这里添加了 GenshinImpact。
想想也是,作为普通游戏,只是在首次安装游戏时需要权限。平时运行时并不需要管理员权限。
最多在新账户首次登录时或许需要权限,比如将用户信息写入注册表,或者建立新账户目录等... 并不需要打开游戏时就获取管理员权限。
安全的做法是打开游戏并不需要管理员权限,但当修改新账号时触发新账号验证程序的时刻触发 UAC 警告。提升权限完成验证。完成后则回到普通用户模式运行程序。

总结一下,游戏类的都可以用这种方式规避UAC警告。不要使用前面计划任务提权的方式。
如果游戏程序拥有管理员权限,那么在你全屏沉浸式游玩的过程中,游戏程序会不会在后台做些奇怪的事。若设置为RUNASINVOKER,那么UAC会阻挡奇怪的事情发生。

注意事项:这种方法仅适用于需要较低权限运行的程序,对于需要管理员权限才能正常工作的程序,应谨慎使用,以免影响程序功能。

4. 应用程序兼容性工具包 (ACT)

Application Compatibility Toolkit
Microsoft应用程序兼容性工具包(ACT)是一种生命周期管理工具,可帮助识别和管理整个应用程序组合,降低解决应用程序兼容性问题所涉及的成本和时间,并帮助快速部署 Windows 和 Windows 更新。 
Windows 10 应用程序兼容性工具包随 Windows 10 ADK 一起发布: 

使用 应用程序兼容性工具包 ACT ,避免UAC警告。操作过程貌似繁琐。相关帖子很多,但都是很多年前的。
现在,ACT已经集成到 Windows10 ADK(生成WindowsPE就需要用这个ADK)
有兴趣的人可以自己下载安装看看。

2025-12-12

Windows-Commands-prompt

1. prompt
	1.1 设置cmd提示符
	1.2 prompt /?
2. 绕道修改cmd的初始目录
	2.1 建立计划任务
	2.2 建立快捷方式
	2.3 运行
	2.4 其他简单但不完善的方式
3. 计划任务命令帮助
	3.1 schtasks /?
	3.2 schtasks /run /?
4. 查看环境变量命令

1. prompt

更改 Cmd.exe 命令提示符,可以显示所需的任何文本,例如当前目录、时间、日期或Windows 版本号。 
如果未使用参数,此命令会将命令提示符重置为默认设置,即当前盘符及目录,后跟大于号(>)。 

1.1 设置cmd提示符

目录加时间,最后回车换行
prompt $P$S$T$G$_
C:\Windows\System32 19:56:00.85>

在命令行里运行 prompt 命令的效果仅在当前窗口有效。要持续生效需要修改环境变量。
设置 → 系统 → 系统信息 → 高级系统设置 → 高级 → 环境变量 → 用户变量 → 新建
变量: prompt
值: $P$S$T$G$_
修改后,重新打开cmd即可看到更改生效了。

查看环境变量的prompt值已被修改。
set |find "PROMPT"
PROMPT=$P$S$T$G$_

1.2 prompt /?

更改 cmd.exe 命令提示符。
PROMPT [text]
  text    指定要包含在命令提示符中的文本和信息。

提示符可以由普通字符及下列特殊代码组成:
  $A    & (与号) Ampersand
  $B    | (坚线) 管道符号
  $Q     = (等号)
  $H    Backspace (删除前一个字符)
  $V    Windows 版本号
  $N    当前驱动器
  $P    当前驱动器及路径
  $C    ( (左括号)
  $F    ) (右括号)
  $L    < (小于号)
  $G    > (大于号)
  $D    当前日期
  $T    当前时间
  $S      (空格)
  $_    回车换行符 ENTER-LINEFEED
  $$    $ (美元符号)
  $E    ANSI 转义码(ASCII 码 27)

如果命令扩展被启用,PROMPT 命令会支持下列格式化字符:
  $+    根据 PUSHD 目录堆栈的深度,零个或零个以上加号(+)字符,一个推的层一个字符。
  $M    如果当前驱动器不是网络驱动器,显示跟当前驱动器号或空字符串有关联的远程名。

2. 绕道修改cmd的初始目录

通过计划任务,可以实现运行cmd时的自定义路径,普通用户及管理员运行均有效。方法有些曲折... 
先建立一个计划任务,再建立一个快捷方式,只要通过这个快捷方式打开cmd即可。

2.1 建立计划任务

右键开始菜单,选择计算机管理(cmd: compmgmt)
计算机管理中,依次点开: 系统工具\任务计划程序\任务计划执行库
菜单栏: 操作\创建任务

创建任务界面\常规 页签
填写名称,比如: RunCMD
□使用最高权限运行若勾选可以避免弹出UAC警告,按需勾选。

创建任务界面\操作 页签
点击 [新建]

新建操作界面\程序或脚本: C:\Windows\System32\cmd.exe
起始于(可选): D:\Tom\Documents
最后点击 [确定]

计划任务建好,可以右键计划任务名称,选择运行看看。
打开的cmd的起始目录为D:\Tom\Documents。

2.2 建立快捷方式

桌面空白处 右键菜单 选择 新建\快捷方式
快捷方式的位置填写: schtasks.exe /run /tn "RunCMD" 
点击 下一步 填写快捷方式名称,比如: cmdT 最后点击[完成]

2.3 运行

  • 然后双击创建的快捷方式打开cmd,起始目录为D:\Tom\Documents。
  • 右键选择以管理员身份运行cmd,起始目录也为D:\Tom\Documents。

2.4 其他简单但不完善的方式

以下是网上找到的多个不完善的版本。
管理员无效的快捷方式
cmd快捷方式,右键属性,修改起始位置即可。
但是仅正常打开有效。若使用管理员身份运行,起始位置又会回到原始状态。

未起作用的方法2
compmgmt 打开 [计算机管理] , 依次展开: 系统工具\本地用户和组\用户
找到需要修改的登录用户名,打开[用户]的属性页面。
选中 [配置文件] 页签,下方的主文件夹区域,本地路径里输入需要的路径,比如(D:\Tom)

受限的注册表法
计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor
新建值: autorun; 修改数据: cd /d C:\
这个办法没去尝试,目测仅限C盘... 

3. 计划任务命令帮助

3.1 schtasks /?

SCHTASKS /parameter [arguments]
描述: 允许管理员创建、删除、查询、更改、运行和中止本地或远程系统上的计划任务。

参数列表:
    /Create         创建新计划任务。
    /Delete         删除计划任务。
    /Query          显示所有计划任务。
    /Change         更改计划任务属性。
    /Run            按需运行计划任务。
    /End            中止当前正在运行的计划任务。
    /ShowSid        显示与计划的任务名称相应的安全标识符。
    /?              显示此帮助消息。

Examples:
    SCHTASKS
    SCHTASKS /?
    SCHTASKS /Run /?
    SCHTASKS /End /?
    SCHTASKS /Create /?
    SCHTASKS /Delete /?
    SCHTASKS /Query  /?
    SCHTASKS /Change /?
    SCHTASKS /ShowSid /?

3.2 schtasks /run /?

SCHTASKS /Run [/S system [/U username [/P [password]]]] [/I] /TN taskname [/HRESULT] [/?]
描述: 按需运行计划任务。

参数列表:
    /S     system        指定要连接到的远程系统。
    /U     username      指定应在其中执行 schtasks.exe 的用户上下文。
    /P     [password]    为给定的用户上下文指定密码,如果省略则提示输入。
    /I                   忽略任何限制立即运行任务。
    /TN    taskname      指定要立即运行的任务的路径\名称。
    /HRESULT             为获得更出色的故障诊断能力,处理退出代码将采用 HRESULT 格式。
    /?                   显示此帮助消息。

示例:
    SCHTASKS /Run /?
    SCHTASKS /Run /TN "\备份\启动备份"
    SCHTASKS /Run /S system /U user /P password /I /TN "\备份\备份和还原"

4. 查看环境变量命令

  • 命令行(CMD)中:
    • set
    • msinfo32
  • PowerShell中:
    • ls env:
    • gci env:
    • dir env:
    • Get-ChildItem Env:
about_Environment_Provider

2025-12-10

Windows-GameBar-ErrorLog

1. ms-gamingoverlay
	1.1 安装相关应用及组件
	1.2 注册表关闭
	1.3 注册表关闭-方式2
	1.4 组策略禁用
2. Xbox Game Bar
	2.1 xbox地区问题
3. Reg-help

1. ms-gamingoverlay

ms-gamingoverlay是Windows 10/11内置的Xbox游戏栏(Game Bar)的协议方式。
它提供了一个叠加层,让玩家在不离开游戏的情况下,可以方便地进行以下操作:
游戏录制和截图, 与Xbox朋友聊天, 使用其他小工具...

当出现“需要新应用打开此ms-gamingoverlay”的提示时, 通常是因为相关应用或文件被意外删除,导致系统无法正常启动游戏栏功能。
解决方法:
  1. 打开“开始”菜单,进入“设置”。
  2. 点击“游戏”选项。
  3. 在左侧菜单中选择“Xbox Game Bar”。
  4. 关闭“使用Xbox Game Bar进行游戏剪辑、聊天等”的开关即可。

但是,这个标准做法有时不管用!即使完成了上述的关闭步骤,打开游戏时还是会弹出提示:
需要新应用打开此ms-gamingoverlay... 
安装弹出提示: 在 Microsoft Store 中查找应用,按“ms-gamingoverlay”这个名称却找不到... 

解决方法主要有2种:
  • 安装缺失的应用或组件;
  • 或者在注册表里禁用(若不需要这个功能)。

1.1 安装相关应用及组件

安装ms-gamingoverlay相关应用及组件
首先查看本机有相关的那些组件。
> get-appxpackage |select-string -pattern "xbox"
> get-appxpackage *xbox* | find "Name              :"
  • Microsoft.XboxGameCallableUI
  • Microsoft.XboxIdentityProvider
  • Microsoft.XboxSpeechToTextOverlay
  • Microsoft.XboxGamingOverlay
本机当前有如上4个,对照缺少那个就装那个。
不想一个一个装,也可以直接恢复所有初始APP
Get-AppxPackage -AllUsers| Foreach {Add-AppxPackage -DisableDevelopmentMode -Register "$($_.InstallLocation)\AppXManifest.xml"} 
这通常能解决弹出 [ms-gamingoverlay] 提示的问题。

若还会弹出 [ms-gamebar] 的提示。
可以在 Microsoft Store 中可以找到 [Xbox Game Bar] ,安装一下即可。
若还有异常可以使用dism和sfc检查修复一下。

1.2 注册表关闭

regedit 打开注册表,导航到如下位置: 
计算机\HKEY_CURRENT_USER\System\GameConfigStore
右边的 [GameDVR_Enabled] 数值为1,改为0即可。

若没有这一项,可以手动添加,或者使用 PowerShell 编辑注册表,如下所示:
reg add HKCU\System\GameConfigStore /f /t REG_DWORD /v "GameDVR_Enabled" /d 0
还有下面这一项,我这儿原本没有,就直接手动添加了,如下所示:
reg add HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\GameDVR /f /t REG_DWORD /v "AppCaptureEnabled" /d 0

1.3 注册表关闭-方式2

同上,一样是操作注册表,但操作另外一个注册表目录(HKCR),达到停用的效果。
下载如下批处理执行即可。下载后可用记事本打开查看注册表命令。

Run_As_Admin_Disable_Gamebar.bat
reg add HKCR\ms-gamebar /f /ve /d URL:ms-gamebar 2>&1 >''
reg add HKCR\ms-gamebar /f /v "URL Protocol" /d " " 2>&1 >''
reg add HKCR\ms-gamebar /f /v "NoOpenWith" /d " " 2>&1 >''
reg add HKCR\ms-gamebar\shell\open\command /f /ve /d "`"$env:SystemRoot\System32\systray.exe`"" 2>&1 >''

reg add HKCR\ms-gamebarservices /f /ve /d URL:ms-gamebarservices 2>&1 >''
reg add HKCR\ms-gamebarservices /f /v "URL Protocol" /d " " 2>&1 >''
reg add HKCR\ms-gamebarservices /f /v "NoOpenWith" /d " " 2>&1 >''
reg add HKCR\ms-gamebarservices\shell\open\command /f /ve /d "`"$env:SystemRoot\System32\systray.exe`"" 2>&1 >''

Run_As_Admin_Enable_Gamebar.bat
reg add HKCR\ms-gamebar /f /ve /d "URL:ms-gamebar"
reg delete HKCR\ms-gamebar /f /v "NoOpenWith"
reg add HKCR\ms-gamebar /f /v "URL Protocol" /d ""
reg delete HKCR\ms-gamebar\shell /f

reg add HKCR\ms-gamebarservices /f /ve /d "URL:ms-gamebarservices"
reg delete HKCR\ms-gamebarservices /f /v "NoOpenWith"
reg delete HKCR\ms-gamebarservices\shell /f

还有很多系统设置指南可供参考。

1.4 组策略禁用

 gpedit.msc 打开组策略,导航到如下位置: 
计算机配置 → 管理模板 → windows组件 → Windows游戏录制与广播 → 点击 已禁用

2. Xbox Game Bar

按下 Win+G 以使用 Xbox Game Bar,这是内置于 Windows 10 的可自定义游戏覆盖工具。 
Xbox Game Bar 适用于大多数电脑游戏,使您能够即时访问小组件,以便进行屏幕捕获和共享、使用 LFG 查找新团队成员,以及跨 Xbox 主机、移动设备和电脑与 Xbox 好友聊天 – 所有这些操作都不需要退出您的游戏。
Windows-Game-Bar

2.1 xbox地区问题

xbox game pass 在你所在的地区不可用
设置 → 时间和语言 → 区域 → 国家或地区 → 改为香港等... 

修复适用于 Windows 的 Xbox 应用的游戏问题

3. Reg-help

 > reg /?
REG Operation [Parameter List]
  Operation  [ QUERY   | ADD    | DELETE  | COPY    | SAVE    | LOAD   | UNLOAD  | RESTORE | COMPARE | EXPORT | IMPORT  | FLAGS ]
返回代码: (除了 REG COMPARE)
  0 - 成功
  1 - 失败

要得到有关某个操作的帮助,请键入: REG Operation /?
例如:
  REG QUERY /?
  REG ADD /?
  REG DELETE /?
  REG COPY /?
  REG SAVE /?
  REG RESTORE /?
  REG LOAD /?
  REG UNLOAD /?
  REG COMPARE /?
  REG EXPORT /?
  REG IMPORT /?
  REG FLAGS /?

 > reg add /?
REG ADD KeyName [/v ValueName | /ve] [/t Type] [/s Separator] [/d Data] [/f] [/reg:32 | /reg:64]

KeyName  [\\Machine\]FullKey
  Machine  远程机器名 - 忽略默认到当前机器。远程机器上只有 HKLM 和 HKU 可用。
  FullKey  ROOTKEY\SubKey
    ROOTKEY  [ HKLM | HKCU | HKCR | HKU | HKCC ]
      HKCR: HKEY_CLASSES_ROOT
      HKCU: HKEY_CURRENT_USER
      HKLM: HKEY_LOCAL_MACHINE
      HKU: HKEY_USERS
      HKCC: HKEY_CURRENT_CONFIG
    SubKey   所选 ROOTKEY 下注册表项的完整名称。

  /v       所选项之下要添加的值名称。
  /ve      为注册表项添加空白值名称(默认)。
  /t       RegKey 数据类型. [ REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ | REG_DWORD | REG_QWORD    | REG_BINARY    | REG_NONE ] 如果忽略,则采用 REG_SZ。
  /s       指定一个在 REG_MULTI_SZ 数据字符串中用作分隔符的字符. 如果忽略,则将 "\0" 用作分隔符。
  /d       要分配给添加的注册表 ValueName 的数据。
  /f       不用提示就强行覆盖现有注册表项。
 /reg:32  指定应该使用 32 位注册表视图访问的注册表项。
 /reg:64  指定应该使用 64 位注册表视图访问的注册表项。

例如:
  REG ADD \\ABC\HKLM\Software\MyCo
    添加远程机器 ABC 上的一个注册表项 HKLM\Software\MyCo

  REG ADD HKLM\Software\MyCo /v Data /t REG_BINARY /d fe340ead
    添加一个值(名称: Data,类型: REG_BINARY,数据: fe340ead)

  REG ADD HKLM\Software\MyCo /v MRU /t REG_MULTI_SZ /d fax\0mail
    添加一个值(名称: MRU,类型: REG_MULTI_SZ,数据: fax\0mail\0\0)

  REG ADD HKLM\Software\MyCo /v Path /t REG_EXPAND_SZ /d ^%systemroot^%
    添加一个值(名称: Path,类型: REG_EXPAND_SZ,数据: %systemroot%)
    注意: 在扩充字符串中使用插入符号 ( ^ )

2025-12-04

Microsoft-Store-error

1. Store初始化失败
	1.1 为何要卸载Edge
	1.2 如何卸载Edge
	1.3 为何删除Edge会影响微软商店
2. 微软商店无法联网
	2.1 解除网络隔离的办法有:
3. CheckNetIsolation解除网络隔离
	3.1 查看帮助:
	3.2 获取包名(-n=)
	3.3 获取包sid(-p=)
4. 添加排除域名(不一定有效)
5. 参考链接


1. Store初始化失败

由于卸载了Edge,打开 Microsoft Store,就会报错,[初始化失败]。
下载Edge浏览器,重新安装即可恢复。

1.1 为何要卸载Edge

Edge默认状态,打开就会一直留在进程列表里,这个可以关闭。
Edge浏览器设置 → 系统和性能 → 系统 → [关闭Edge后继续运行在后台扩展和应用]
这样浏览器可以关闭,但进程里还有7,8个类似WebView的进程,源文件都是 [msedgewebview2.exe], 怎么也关不掉。
由于不使用Edge,服务里相关的更新服务也都禁用了。

1.2 如何卸载Edge

Edge属于系统自带的程序,没有提供卸载项。
没找到正常卸载的办法,只能删除目录。
比如启动进入PE模式,整个删除目录: [C:\Program Files (x86)\Microsoft]

也可在正常运行系统时删除的,打开目录 [C:\Program Files (x86)\Microsoft] ,多次手动框选删除文件。 最后剩下个别无法删除的文件,就是系统正在调用打开的文件。
任务管理器里,关闭包含 [msedgewebview2.exe] 的所有进程。
这时候关闭 [msedgewebview2.exe] 后就无法再重新启动了。然后就可以删除掉整个目录了。
世界清净了... 
如果不使用Edge浏览器, 微软商店等系统自带的应用,可以这样删除Edge。

1.3 为何删除Edge会影响微软商店

系统自带的应用大都属于UWP(通用 Windows 平台),UWP的好处是便于开发人员设计统一通用的界面,不用为不同的设备单独开发设计界面。
大概很多UWP都会调用Edge组件来呈现界面,所以Edge没了,很多UWP应用就没法正常打开了。
解决的办法就是前面提到的,下载Edge浏览器, 重新安装即可恢复。

2. 微软商店无法联网

若系统和网络都正常,微软商店在不使用代理时是可以正常联网的。
但开启了系统代理后,Microsoft Store 会连不上网?
... 这又是UWP的问题 ... 
  • UWP 是微软在 Windows 10 中引入的新概念,由于所有 UWP 应用均运行在被称为 App Container 的虚拟沙箱环境中,其安全性及纯净度远胜于传统的 EXE 应用。
  • 但 App Container 机制同时也阻止了网络流量发送到本机(即 loopback),使大部分网络抓包调试工具无法对 UWP 应用进行流量分析。
  • 同样的,该机制也阻止了 UWP 应用访问 localhost,即使你在系统设置中启用了代理,也无法令 UWP 应用访问本地代理服务器,十分恼人。

2.1 解除网络隔离的办法有:

  1. 系统自带的 CheckNetIsolation 命令行工具可以将 UWP 应用添加到网络隔离排除列表。
  2. 第三方工具 Fiddler
  3. 代理软件附带功能或组件, 比如: EnableLoopback.exe
  4. 代理中添加排除域名(状态:时好时坏): *.outlook.com;*.microsoft.com;*office365.com;
Fiddler下载
Fiddler 是一款适用于 Windows、macOS 和 Linux 的 Web 调试代理工具。 它由 Fiddler Classic 发展而来,如今已成为功能更强大、用途更广泛的产品——Fiddler Everywhere。 Fiddler Everywhere 目前是唯一仍在积极开发并提供专属支持的 HTTPS 调试器版本, 它是一款功能强大的工具,可为开发人员和 QA 专业人员提供以下功能:

补充: 另外还有个开源工具,这个10年前的开源项目,没有编译好的可执行程序,只有源码,需要自己搭环境编译... 

3. CheckNetIsolation解除网络隔离

3.1 查看帮助:

 CheckNetIsolation -?
用法: CheckNetIsolation [Module]
模块列表:
 LoopbackExempt    控制 AppContainer 和程序包系列环回免除,以便于应用程序开发。
 Debug    启动 AppContainer 或程序包系列的网络流量故障排除会话。 生成使用的、未使用的或缺少的t 网络功能以及应用程序生成的网络流量的报告。
 -?    显示此帮助消息。

 CheckNetIsolation LoopbackExempt -?
   CheckNetIsolation LoopbackExempt [operation] [-n=] [-p=]
      操作列表:
 -a    将 AppContainer 或包系列添加到环回免除列表。[-n=] [-p=]
 -d    将 AppContainer 或包系列从环回免除列表中删除。[-n=] [-p=]
 -c    清除环回免除 AppContainers 和包系列的列表。
 -s    显示环回免除的 AppContainers 和包系列列表。
 -is    启用 AppContainer 或包系列以接收入站连接。

      参数列表
 -n=   AppContainer 名称或包系列名称。
 -p=   AppContainer 或包系列安全标识符 (SID)。
 -?    显示 LoopbackExempt 模块的此帮助消息。

查看排除列表: 
 CheckNetIsolation LoopbackExempt -s
列出环回免除的 AppContainer
[1] -----------------------------------------------------------------
    名称: microsoft.windowsstore_8wekyb3d8bbwe
    SID:  S-1-15-2-1609473798-1231923017-684268153-4268514328-882773646-2760585773-1760938157
[2] -----------------------------------------------------------------
    名称: Microsoft.AccountsControl_cw5n1h2txyewy
    SID:  S-1-15-2-969871995-3242822759-583047763-1618006129-3578262429-3647035748-2471858633

注:排除列表初始状态为空,以上2个排除项 (store联网和账户登录) 是后添加的。
使用包名称(-n=), 或者包sid(-p=)即可将 指定的 UWP 应用添加到网络隔离排除列表中

3.2 获取包名(-n=)

列出包数量
get-appxpackage | find /c "Name              :"

列出包含发行方的包名称
get-appxpackage | find  "PackageFamilyName :"

列出名称中包含“store”的所有应用。 
 get-appxpackage |select-string -pattern "store"
Microsoft.StorePurchaseApp_22408.1400.1.0_x64__8wekyb3d8bbwe
Microsoft.WindowsStore_22510.1401.2.0_x64__8wekyb3d8bbwe
Microsoft.Services.Store.Engagement_10.0.23012.0_x64__8wekyb3d8bbwe
Microsoft.Services.Store.Engagement_10.0.23012.0_x86__8wekyb3d8bbwe

查看包信息
 get-appxpackage Microsoft.WindowsStore
Name              : Microsoft.WindowsStore
PackageFullName   : Microsoft.WindowsStore_22510.1401.2.0_x64__8wekyb3d8bbwe
PackageFamilyName : Microsoft.WindowsStore_8wekyb3d8bbwe

添加排除项目
 CheckNetIsolation LoopbackExempt -a  -n="Microsoft.WindowsStore_8wekyb3d8bbwe"

删除排除项目
 CheckNetIsolation LoopbackExempt -d  -n="Microsoft.WindowsStore_8wekyb3d8bbwe"

3.3 获取包sid(-p=)

注册表这里可以看到所有SID,就是 -p= 的值
计算机\HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppContainer\Mappings
定位到 [Mappings\] 后,Ctrl + F,通过关键字查找。 比如找“WindowsStore”
S-1-15-2-1609473798-1231923017-684268153-4268514328-882773646-2760585773-1760938157

添加排除项目
 CheckNetIsolation LoopbackExempt -a  -p=S-1-15-2-1609473798-1231923017-684268153-4268514328-882773646-2760585773-1760938157

查看排除列表: 
 CheckNetIsolation LoopbackExempt -s
列出环回免除的 AppContainer
[1] -----------------------------------------------------------------
    名称: microsoft.windowsstore_8wekyb3d8bbwe
    SID:  S-1-15-2-1609473798-1231923017-684268153-4268514328-882773646-2760585773-1760938157
[2] -----------------------------------------------------------------
    名称: Microsoft.AccountsControl_cw5n1h2txyewy
    SID:  S-1-15-2-969871995-3242822759-583047763-1618006129-3578262429-3647035748-2471858633

添加好这2个必要项,微软商店即可正常联网并登录账号。

4. 添加排除域名(不一定有效)

代理中添加排除域名: *.outlook.com;*.microsoft.com;*office365.com;
更新: 这个方法有时有效。有时无效,无效时并不会显示连不上网的提示,而是什么都不显示... 

清除环回免除 AppContainers 和包系列的列表。
 CheckNetIsolation LoopbackExempt -c
确认列表为空
 CheckNetIsolation LoopbackExempt -s

代理服务器设置,手动设置代理,编辑
默认通常为: 
Localhost;127.*;10.*;172.16.*;172.17.*;172.18.*;172.19.*;172.20.*;172.21.*;172.22.*;172.23.*;172.24.*;172.25.*;172.26.*;172.27.*;172.28.*;172.29.*;172.30.*;172.31.*;192.168.*
在其后添加微软相关域名地址:
;*.outlook.com;*.microsoft.com;*office365.com

这种方法对其他UWP应用也应该有效,只要找到正确的链接域名。

5. 参考链接


UWP
UWP 是 通用 Windows 平台,UWP 已不再处于积极开发状态。
UWP 旨在让开发者为不同 Windows 设备 (PC、平板电脑、手机、Xbox) 等开发一个应用版本。 UWP 通过 Microsoft Store 分发,并允许应用程序在各种 Windows 设备上自动调整以适应不同的硬件和屏幕。 
请注意,仍支持 UWP,但开发 Windows 应用的首选方法是使用 WinUI 和 Windows 应用 SDK。 另一个选项是 WPF。 

开发 Windows 桌面应用

WinUI 的设置和工具

Windows 应用 SDK

教程:使用 .NET 创建新的 WPF 应用

2025-11-22

Chrome-Gemini-Nano

1. Chrome-Weights.bin
	1.1 停用删除
	1.2 转移目录
2. 尝试失败记录2025
	2.1 在 Chrome 中启用 AI
	2.2 Next.js Chrome AI 聊天机器人
	2.3 Chrome插件
3. 相关帮助
	3.1 内置 AI 帮助
	3.2 Chrome AI 功能故障排除
4. 更多相关主题
	4.1 templates模板
	4.2 demo演示
	4.3 Gemini-api

 Chrome-Gemini-Nano

1. Chrome-Weights.bin

OptGuideOnDeviceModel文件夹: C:\Users\Tom\AppData\Local\Google\Chrome\User Data\OptGuideOnDeviceModel\2025.8.21.1028 
OptGuideOnDeviceModel 文件夹(通常包含一个很大的weights.bin 文件)
  • 是Chrome 浏览器内置的Gemini Nano AI 模型, 名为Gemini Nano,用于支持“Prompt API”等实验性功能。 
  • 它包含Chrome的优化指南功能使用的设备端机器学习模型的已学习参数(权重)。 
  • 该模型帮助Chrome做出本地决策,以优化你的浏览体验(例如,提高页面加载时间,管理资源),而无需将可能敏感的浏览数据发送到服务器进行分析以用于此特定功能。 

1.1 停用删除

若不需要,可以参照下一节,停用相关组件即可。避免这个超大文件占用空间。

1.2 转移目录

Chrome用户数据默认位置如下: 
C:\Users\Tom\AppData\Local\Google\Chrome\User Data
  1. 将 [User Data] 复制到其他分区。比如 F:\ChromeData
  2. 删除C:\Users\Tom\AppData\Local\Google\Chrome\下的目录 [User Data]。
  3. 创建链接
    •   mklink /J "C:\Users\Tom\AppData\Local\Google\Chrome\User Data" "F:\ChromeData"
    • 为 C:\Users\Tom\AppData\Local\Google\Chrome\User Data <<===>> F:\ChromeData 创建的联接
这样,Chrome的用户数据都在F盘,不再占用C盘空间。

2. 尝试失败记录2025

2.1 在 Chrome 中启用 AI

浏览器安装完成后,请确保设置以下标志:
  • chrome://flags/#prompt-api-for-gemini-nano
    • 选择“已启用”
  • chrome://flags/#optimization-guide-on-device-model
    • 选择“启用绕过首选项要求”
  • chrome://flags/#summarization-api-for-gemini-nano
    • 选择“已启用”
  • chrome://components/
    • 点击设备型号优化指南 [Optimization Guide On Device Model] 中的“检查更新”按钮下载该型号的优化指南。 如果您看不到优化指南,请确保您已正确设置上述参数,然后重新启动浏览器并刷新页面。
    • Optimization Guide On Device Model - 版本: 2025.8.21.1028 
  • chrome://settings/help
    • Google Chrome 已是最新版本
    • 版本 142.0.7444.176(正式版本) (64 位) 
  • chrome://on-device-internals/
    • Tools \ 
      • Device performance class: Very Low 
    • Model Status \ 
      • Foundational model state: Ready
      • Model Name: v3Nano
      • Version: 2025.08.14.1358
      • Backend Type: CPU
      • File path: C:\Users\Tom\AppData\Local\Google\Chrome\User Data\OptGuideOnDeviceModel\2025.8.21.1028
      • Folder size: 2,730.3 MiB
    • 模型状态下可以看到模型已经Ready。
完成以上任然收到错误提示:
您的浏览器不受支持。
请将Chrome浏览器更新至127版本或更高版本。 注: 这里的Chrome大概需要开发版。

模型相关源码

2.2 Next.js Chrome AI 聊天机器人

这个聊天机器人演示(来源)使用 Next.js 和Vercel AI SDK,并通过chrome-ai提供程序调用 Chrome 的内置 AI模型(Gemini Nano)。
Gemini Nano的Prompt API在浏览器的window.ai函数中公开。它可以通过Vercel AI SDK的统一API轻松调用。

工作原理
以下代码包含了使用 Chrome AI 和 Vercel AI SDK 进行文本流传输所需的全部内容。
import { streamText } from "ai";
import { chromeai } from "chrome-ai";

const { textStream } = await streamText({
  model: chromeai(),
  prompt: "what is a large language model?",
}); 
chromeai实现了一个底层使用window.ai的Provider 。 

支持的浏览器
请确保您使用的是 Chrome(开发者 / Canary)版本 127 或更高版本。 

必要的实验性标志
浏览器安装完成后,请确保设置以下标志:
chrome://flags
启用相关模块与上一节一致

chrome://components
点击“设备型号优化指南”中的“检查更新”按钮下载该型号。 如果您看不到优化指南,请确保您已正确设置上述参数。 如果仍然看不到优化指南,请在浏览器控制台中运行“await window.ai.assistant.create();”,然后刷新页面。

浏览器控制台(console)
更多工具 → 开发者工具 → 控制台(console)页签
快捷键: F12 或 (Ctrl + Shift + I) → 开发者工具 → 控制台(console)页签

2.3 Chrome插件

Chrome 应用商店 
搜索:Gemini nano ai

Chrome AI - Chrome 内置离线 AI 对话/翻译

概述
在侧边栏(Side panel)里打开 Chrome 内置 Gemini Nano AI,可以离线使用 AI 对话和翻译功能。
使用 Chrome 内置的 Gemini Nano AI 与 AI 进行对话和翻译,支持离线使用。

使用此扩展程序依赖于 Chrome 内置的 Gemini Nano AI,因此 Chrome 版本必须不低于 v138,最新版本已包含此版本。
  1. Download and install Chrome with built-in AI Latest Version.
  2. Go to chrome://flags/#prompt-api-for-gemini-nano and enable the Prompt API for Gemini Nano option.
  3. Go to chrome://flags/#optimization-guide-on-device-model and turn on the Enables optimization guide on device option.
  4. Go to chrome://components/ and check or download the latest version of Optimization Guide On Device Model.

Chrome 内置离线AI 对话/翻译
安装后测试,如下错误提示:
This extension uses Chrome's built-in Translation API and Gemini Nano AI, which requires Chrome version be no lower than v138, which you can get in the Latest Version.

Translation Feature Setup:
  1. Download and install Chrome with built-in AI Latest Version.
  2. Go to (chrome://…) and enable
    1. chrome://flags/#enable-experimental-web-platform-features
    2. chrome://flags/#translation-api
    3. chrome://flags/#language-detection-api
  3. Restart Chrome browser to apply changes.
Chat Feature Setup:
  • Go to (chrome://…) and enable
    • chrome://flags/#prompt-api-for-gemini-nano
    • chrome://flags/#optimization-guide-on-device-model
  • Go to (chrome://…) and check or download the latest version of [Optimization Guide On Device Model].
    • chrome://components/
以上几种工具及插件需要设置的部分基本一致。

3. 相关帮助

3.1 内置 AI 帮助

硬件
  • GPU 或 CPU:内置模型可以使用 GPU 或 CPU 运行。
  • GPU:VRAM 严格大于 4 GB。
  • CPU:16 GB 或更多 RAM,以及 4 个或更多 CPU 核心。
  • 网络:无限流量或不按流量计费的网络连接。
  • 存储空间:包含 Chrome 个人资料的卷上至少有 22 GB 的可用空间。 
随着浏览器更新模型,Gemini Nano 的确切大小可能会有所不同。 如需确定当前大小,请访问:  
  • chrome://on-device-internals/
    • Foundational model state: Ready
    • Model Name: v3Nano
    • Version: 2025.08.14.1358
    • Backend Type: CPU
    • File path: C:\Users\Tom\AppData\Local\Google\Chrome\User Data\OptGuideOnDeviceModel\2025.8.21.1028
    • Folder size: 2,730.3 MiB

3.2 Chrome AI 功能故障排除

4. 更多相关主题

4.1 templates模板

AI应用模板和示例

4.2 demo演示

网络人工智能示例 
Web AI 是一个 TypeScript 库,它允许您直接在 Web 浏览器中运行现代深度学习模型。
您可以轻松地将 AI 功能添加到 Web 应用程序中,而无需复杂的服务器端基础架构。 

特征 Features
  • 便于使用: 用一行代码创建一个模型,用另一行代码获取结果。
  • ONNX 运行时提供支持: Web AI 使用 ONNX Web 运行时环境运行模型,该环境对各种运算符都有丰富的支持。这意味着任何模型都能正常工作。
  • 兼容Hugging Face: Web AI 使用与中心相同的格式的模型配置文件,这使得集成现有模型变得更加容易。
  • 内置缓存: Web AI 使用 localforage 将下载的模型存储在 IndexedDB 中。您可以动态配置缓存大小。
  • Web Worker 支持: 所有繁重的操作 – 模型创建和推理 – 都被卸载到单独的线程中,这样用户界面就不会冻结。

4.3 Gemini-api


2025-11-20

Windows-sfc

1. sfc
	1.1 Syntax
	1.2 Parameters
	1.3 Examples
	1.4 扫描修复
	1.5 CBS.log
	1.6 更多相关链接
2. sfc与DISM
	2.1 主要区别 
	2.2 参考链接
3. chkdsk
	3.1 Parameters
	3.2 HDD-SSD
	3.3 查看 chkdsk 日志

1. sfc

sfc, system file checker, 系统文件检查器.
扫描并验证所有受保护系统文件的完整性,并将错误的版本替换为正确的版本。 

1.1 Syntax

sfc [/scannow] [/verifyonly] [/scanfile=<file>] [/verifyfile=<file>] [/offwindir=<offline windows directory> /offbootdir=<offline boot directory> /offlogfile=<log file path>]

1.2 Parameters

Parameter Description
/scannow 扫描所有保护的系统文件的完整性,并尽可能修复有问题的文件。
/verifyonly 扫描所有保护的系统文件的完整性。不会执行修复操作。
/scanfile <file> 扫描引用的文件的完整性,如果找到问题,则修复文件。指定完整路径 <file>
/verifyfile <file> 验证带有完整路径 <file> 的文件的完整性。不会执行修复操作。
/offwindir <脱机Windows目录> 对于脱机修复,指定脱机 windows 目录的位置
/offbootdir <脱机启动目录> 对于脱机修复,指定脱机启动目录的位置
/offlogfile=<log file path> 对于脱机修复,指定一个用于存储日志文件的非默认位置
/? 在命令提示符下显示帮助。

1.3 Examples

要验证 kernel32.dll 文件,请键入:
sfc /verifyfile=c:\windows\system32\kernel32.dll

若要设置脱机启动目录设置为 D:  且脱机 Windows 目录设置为 D:\Windows 的 kernel32.dll 文件的脱机修复,请键入:
sfc /scanfile=D:\windows\system32\kernel32.dll /offbootdir=D:\ /offwindir=d:\windows
sfc /scanfile=D:\windows\system32\kernel32.dll /offbootdir=D:\ /offwindir=d:\windows /offlogfile=C:\log.txt

sfc /verifyonly
sfc /scannow
sfc /verifyfile=c:\windows\explorer.exe
sfc /verifyfile=c:\windows\regedit.exe
sfc /?
Microsoft (R) Windows (R) Resource Checker 6.0 版

1.4 扫描修复

 > sfc /VERIFYONLY
开始系统扫描。此过程将需要一些时间。
开始系统扫描的验证阶段。
验证 100% 已完成。

Windows 资源保护找到了完整性冲突。
对于联机修复,位于 windir\Logs\CBS\CBS.log 的 CBS 日志文件中有详细信息。
例如 C:\Windows\Logs\CBS\CBS.log。
对于脱机修复,/OFFLOGFILE 标记提供的日志文件中有详细信息。

 > sfc /SCANNOW
开始系统扫描。此过程将需要一些时间。
开始系统扫描的验证阶段。
验证 100% 已完成。

Windows 资源保护找到了损坏文件并成功修复了它们。
对于联机修复,位于 windir\Logs\CBS\CBS.log 的 CBS 日志文件中有详细信息。
例如 C:\Windows\Logs\CBS\CBS.log。
对于脱机修复,/OFFLOGFILE 标记提供的日志文件中有详细信息。

1.5 CBS.log

分析SFC.exe在 Windows 中产生的记录档专案

findstr /c:"[SR]" %windir%\logs\cbs\cbs.log > sfcdetails.txt
FINDSTR: 无法打开 %windir%\logs\cbs\cbs.log

findstr /c:"[SR]" C:\Windows\Logs\CBS\CBS.log > sfcdetails.txt
Sfcdetails.txt档案包含每次在计算机上执行SFC.exe程式时记录的专案。 

C:\Windows\Logs\CBS\CBS.log 文件末尾有类似如下的修复记录。
[Pnp] Corrupt file: C:\WINDOWS\System32\drivers\BthA2dp.sys
[Pnp] Repaired file: C:\WINDOWS\System32\drivers\BthA2dp.sys
[Pnp] Corrupt file: C:\WINDOWS\System32\drivers\BthHfEnum.sys
[Pnp] Repaired file: C:\WINDOWS\System32\drivers\BthHfEnum.sys

1.6 更多相关链接

CBS.log檔案包含某些檔案在您成功在 Windows Server 計算機上執行 SFC 公用程式之後,也不會修復的專案
如何在 Windows 中运行系统文件检查器
系统文件检查器
系统文件检查器的说明(Sfc.exe)
Last updated on 2025/01/15 
/scanonce — 扫描所有系统文件一次。
重启计算机时一次扫描所有受保护的系统文件。  重启计算机时,此命令可能需要访问 Windows 安装源文件。
运行此命令时,SfcScan DWORD 值在以下注册表项中设置为 2:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon

/scanboot — 每次系统重新启动时在启动阶段扫描所有系统文件。
每次启动计算机时扫描所有受保护的系统文件。  每次启动计算机时,此命令都可能需要访问 Windows 安装源文件。 
运行此命令时,SfcScan DWORD 值在以下注册表项中设置为 1:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon

/cancel — 取消所有挂起的扫描(例如“/scanboot”修饰符)。

/enable — 启用 Windows 文件保护 (WFP),防止程序修改 Windows 系统文件。

2025 年更新:SFC /scannow 命令修复失败的 9 种解决方案
设置服务为自动启动。 Windows Modules Installer,
sc config trustedinstaller start= auto
net start trustedinstaller 
启用 Windows 模块安装程序后,重启计算机并再次运行 SFC 命令,检查问题是否已解决。 

删除 RebootPending 键
打开文件资源管理器,在 c:\windows\winsxs\ 文件夹中查找 pending.xml 文件。 如果找到,请重命名或删除它。删除后,重启电脑并运行系统文件检查器工具,查看错误是否已解决。
如果删除 pending.xml 文件没有帮助,您可以删除 RebootPending 键以删除待处理的重启信息,并允许您的系统运行系统文件检查器工具。 
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RebootPending 
删除之后,重启电脑并再次运行 SFC 命令,检查问题是否已解决。 

2. sfc与DISM

2.1 主要区别

特征 SFC 系统文件检查器
(System File Checker)
DISM 部署映像服务和管理
(Deployment Image Servicing and Management)
主要功能 扫描和修复受损的 Windows 核心系统文件。 修复 Windows 映像和组件存储的完整性。
修复机制 从组件存储(WinSxS)中找到并替换损坏的系统文件。 从本地源或 Windows Update 服务器下载正确的文件来修复组件存储。
适用场景 适用于系统文件损坏导致的问题,如“系统文件保护”检测到问题。 适用于 SFC 无法修复的问题,例如组件存储损坏,更新失败等。
依赖性 不一定需要网络连接,因为它从本地缓存中获取文件。 默认需要网络连接(从微软服务器下载文件),也可以指定本地源。

2.2 参考链接

DISM.exe /Online /Cleanup-image /Restorehealth 
运行 DISM 后,最好重新运行 SFC /scannow 以确保所有问题都已修复。 
sfc /scannow 

系统文件检查是操作系统内置的实用程序,用于检查系统文件是否损坏。 sfc /scannow  命令(系统文件检查)会扫描所有受保护的操作系统文件的完整性,并在可能的情况下将错误、损坏、更改或受损的版本替换为正确的版本。 如果无法修复损坏,则应运行 DISM 来尽可能多地修复错误。
系统文件检查在 Vista 及更高版本中有效。
Dism 可在 Windows 7 及更高版本上运行。
即使 SFC 没有发现任何违规行为,运行 DISM Restorehealth 仍然是个好主意。 
如果您使用的是 Windows 8(或更高版本),无论 SFC 是否发现错误,您都应该运行 DISM! 

3. chkdsk

检查卷的文件系统和文件系统元数据是否存在逻辑和物理错误。  如果不带参数使用, chkdsk 仅显示卷的状态,不会修复任何错误。 如果与 /f、 /r、 /x 或 /b 参数一起使用,则会修复卷上的错误。 

Syntax
chkdsk [<volume>[[<path>]<filename>]] [/f] [/v] [/r] [/x] [/i] [/c] [/l[:<size>]] [/b] [/scan] [/forceofflinefix] [/perf] [/spotfix] [/sdcleanup] [/offlinescanandfix] [/freeorphanedchains] [/markclean] [/?]

3.1 Parameters

Parameter Description
<volume> 指定驱动器号(后跟冒号)、装入点或卷名。
[<path>]<filename> 仅 FAT/FAT32: 指定要检查碎片的文件。
您可以使用通配符 ? 和 * 指定多个文件。
/f 修复了磁盘上的错误。 磁盘必须锁定。
如果 chkdsk 无法锁定驱动器,则会出现一条消息,询问您下次重新启动计算机时是否要检查驱动器。
/v 在 FAT/FAT32 上: 显示磁盘上每个文件的完整路径和名称。
在 NTFS 上: 显示清理消息(如果有)。
/r 查找不良扇区并恢复可读信息。 磁盘必须锁定。 /r 包括 /f 的功能,以及对物理磁盘错误的额外分析。
/x 首先强制该卷卸载(如有必要)。 驱动器的所有打开句柄都失效。 /x 还包括 /f 的功能。
/i 仅用于 NTFS。 对索引条目执行不太严格的检查,从而减少运行 chkdsk 所需的时间。
/c 仅用于 NTFS。 不检查文件夹结构中的周期,从而减少运行 chkdsk 所需的时间。
/l[:<size>] 仅 NTFS: 将日志文件大小更改为指定的 KB 数。
如果未指定大小,则显示当前大小。
/b 仅 NTFS: 重新评估该卷上的坏簇 (隐含 /R)
将卷映像化到新的硬盘驱动器后,请使用此参数。
/scan 仅用于 NTFS。 对卷运行联机扫描。
/forceofflinefix 仅 NTFS: (必须与 "/scan" 一起使用) 跳过所有联机修复;
找到的所有故障都 排队等待脱机修复(即 "chkdsk /spotfix")。
/perf 仅 NTFS: (必须与 "/scan" 一起使用) 使用更多系统资源尽快完成扫描。
这可能会对系统中运行的其他任务的性能造成负面影响。
/spotfix 仅用于 NTFS。 对卷运行现成修复。
/sdcleanup 仅 NTFS: 回收不需要的安全描述符数据 (隐含 /F)。
/offlinescanandfix 对卷运行脱机扫描并修复。
/freeorphanedchains 仅 FAT/FAT32/exFAT: 释放所有孤立的簇链而不恢复其内容。
/markclean 仅 FAT/FAT32/exFAT: 如果未检测到损坏,则将卷标记为干净,即使未指定 /F 也是如此。
/? 在命令提示符下显示帮助。

3.2 HDD-SSD

对 HDD:CHKDSK 主要用于检查和修复文件系统的逻辑错误以及查找物理坏道。
对 SSD:虽然也可以运行 CHKDSK,但 SSD 内置了更高级的磨损均衡和错误纠正功能,通常不需要手动运行 CHKDSK。 CHKDSK 对 SSD 的影响极小,因为其写入操作非常少,对 SSD 的寿命影响可以忽略不计。 

硬盘驱动器 (HDD) 固态硬盘 (SSD)
物理性质 HDD 使用旋转磁盘。 扇区和块从拼盘中物理读取。 物理性质: SSD 以电子方式存储数据,没有移动部件。
chkdsk
运行时
物理磁头必须移动到每个被检查的数据位置,由于机械移动,速度 较慢 。 无寻道时间: 读取任何扇区都同样快;没有机械延迟。
检查 坏扇区 (使用 /r)需要更长的时间,因为检查每个扇区的物理完整性,并在可能的情况下替换坏扇区。 检查 坏扇区 (使用 /r)更快,但仍需要读取 每个扇区。 然而,NAND 闪存的读取 速度 比 HDD 快得多。
对于大型驱动器来说,长时间运行时间并不少见。 将集群标记 为坏 是合乎逻辑的,而不是物理重新映射。
通常,在大容量 HDD 上, /r 或者在 /b 读取每个扇区时花费相当长的时间。 即使没有错误且大部分为空的驱动器,物理读取速度也会使该过程成为瓶颈。 由于 SSD 上的扇区读取速度较快,因此运行 /r 和 /b 参数会更快地完成该过程,因为它的物理构成。

在某些情况下,在大容量 HDD 或 SSD 上, chkdsk 可能会太快地完成其进程。 如果发生这种情况,可能是:
  • 该 chkdsk 实际上并没有扫描驱动器上的每个扇区。
  • 操作系统(OS)卷或其他进程装载为脏或锁定。
  • HDD 可能有读取头失败或其他硬件问题,导致 chkdsk 行为不可预知。
  • 该 chkdsk 仅对文件系统结构执行联机扫描,在启动到 OS 之前未显式运行脱机扫描。
  • 该 chkdsk 实际上并没有扫描驱动器上的每个扇区。
  • SSD 没有太多数据要处理(更多可用空间)。
  • 扫描的 SSD 是没有严重碎片的 NVMe。
  • SSD 可能会有效地内部优化“完全扫描”,从而进一步提高扫描速度。

3.3 查看 chkdsk 日志

有两种方法可用于使用事件查看器和 PowerShell 在 Windows 中检索 chkdsk 日志文件。

Event Viewer
若要使用事件查看器查看日志,请执行以下步骤:
启动 >控制面板>管理工具事件>查看器。
或者,按 Win + R 键调出运行对话框,键入 eventvwr.msc,然后选择 确定。
展开 Windows 日志,>右键单击应用程序>,选择过滤当前日志。
在 “筛选器当前日志 ”窗口中,导航到 “事件源 ”下拉菜单,选择 Chkdsk 和 Wininit。
选择“ 确定 ”以完成对这两个源的筛选。

PowerShell
在 PowerShell 中检索日志时,有两种源类型: chkdsk 和 wininit。 在 PowerShell 中运行以下两个命令之一,以查看最新的 chkdsk 日志: 
  • get-winevent -FilterHashTable @{logname="Application"} | ?{$_.providername -match "chkdsk"} | fl timecreated, message
  • get-winevent -FilterHashTable @{logname="Application"} | ?{$_.providername -match "wininit"} | fl timecreated, message
  • get-winevent -FilterHashTable @{logname="Application"} | ?{$_.providername -match "chkdsk"} | fl timecreated, message | out-file "C:\Users\Administrator\Desktop\Chkdsk_Log.txt"
  • get-winevent -FilterHashTable @{logname="Application"} | ?{$_.providername -match "wininit"} | fl timecreated, message | out-file "C:\Users\Administrator\Desktop\Wininit_Log.txt"
  • 2025-11-18

    Windows-Delivery-Optimization

    1. Dosvc
    2. 传递优化的副作用
    	2.1 关闭传递优化
    	2.2 设置服务失败后的操作
    	2.3 禁用端口7680
    	2.4 删除超大文件
    3. 设置传递优化
    4. 扩展阅读
    	4.1 如何在 Windows 中创建和管理组策略管理模板的中央存储
    	4.2 了解 ADMX 策略
    	4.3 组策略设置参考电子表格
    	4.4 PolicyDefinitions (策略定义)
    	4.5 其他
    

     Windows-Delivery-Optimization

    1. Dosvc

    服务名称:DoSvc; 显示名称:Delivery Optimization;
    Delivery Optimization(传递优化)是一项 Windows 技术,它使用对等(P2P)网络来加速下载 Windows 更新和 Microsoft Store 应用程序的速度。
    它通过允许您的电脑从其他附近的电脑或从 Internet 上的其他来源下载更新,同时也将更新提供给其他电脑,从而减轻 Microsoft 服务器的负担。 

    为 Windows 配置传递优化 (DO)
    传递优化选项
    可以使用组策略 (gpedit) 或 Intune 等 MDM 解决方案配置传递优化。
    • 组策略中的传递优化设置位于“配置\策略\管理模板\Windows 组件\传递优化”下。
    • 在 MDM 中,相同设置处于 .Vendor/MSFT/Policy/Config/DeliveryOptimization/ 下。

    2. 传递优化的副作用

    如前所述,传递优化为减低对Microsoft服务器的压力,使用了P2P技术,让相同的更新文件在用户端互相传递。 就是参与的用户也会分享自己下载的更新和应用。这些文件日积月累会越来越大。
    搜索网上,会有(传递优化占用上百GB磁盘空间)的用户发帖求助。
    本机的超大文件 (content.bin) 约3.5Gb出现在如下目录: 
    C:\Windows\ServiceProfiles\NetworkService\AppData\Local\Microsoft\Windows\DeliveryOptimization\
    关闭传递优化,可以避免传递优化生成的巨大文件。注意:不关闭,这个超大文件也可以删除。

    2.1 关闭传递优化

    转到“设置”>“更新和安全”>“Windows 更新”>“传递优化” 
    不确定这里的设置有没有实际用途... 

    禁用服务:DoSvc
    (services.msc)服务
    打开服务(Delivery Optimization)属性界面,启动类型改为[禁用]。应用时可能会弹出“拒绝访问”。

    (regedit)注册表关闭
    若上面无法禁用服务,可通过注册表关闭
    计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DoSvc
    Start 当前值为2,设置为4即可。

    2.2 设置服务失败后的操作

    回到服务界面,(DoSvc) Delivery Optimization 的属性页面,可以看到服务已被禁用。
    Delivery Optimization 的属性页面 \ 恢复页签 设置启动失败的后续操作为: 无操作。
    同样,这里若无法应用,提示”拒绝访问”。再回到注册表界面操作
    计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DoSvc
    FailureActions,失败动作, 如图将03下2个01改成0即可。

    2.3 禁用端口7680

    传递优化会用到如下端口,可以通过设置防火墙,阻止7680端口。

    2.4 删除超大文件

    本机的超大文件 (content.bin) 约3.5Gb出现在如下目录: 
    C:\Windows\ServiceProfiles\NetworkService\AppData\Local\Microsoft\Windows\DeliveryOptimization\
    关闭传递优化,可以避免传递优化生成的巨大文件。
    不关闭功能,这个超大文件也是可以删除的。只是过段时间又会慢慢变大... 
    若提示错误,可能更新服务正在工作。可以在未更新时操作,比如关闭更新或断开网络等。

    3. 设置传递优化

    您也可以通过组策略编辑器设置此服务,可以搜索 gpedit.msc 来打开它,
    然后转到“计算机配置”>“管理模板”>“Windows 组件”>“传递优化”。

    4. 扩展阅读

    4.1 如何在 Windows 中创建和管理组策略管理模板的中央存储

    4.2 了解 ADMX 策略


    适用于 Windows 11 2025 更新 (25H2) 的管理模板 (.admx)
    Administrative Templates (.admx) for Windows 11 2025 Update (25H2)
    本页面提供适用于 Windows 11 2025 更新 (25H2) 的完整管理模板 (.admx) 集。
    • 下载安装后,默认位置如下: 
      • C:\Program Files (x86)\Microsoft Group Policy\Windows 11 Sep 2025 Update (25H2)\PolicyDefinitions
    • 本机策略定义位置如下: 
      • C:\Windows\PolicyDefinitions

    4.3 组策略设置参考电子表格

    Windows 11 2025 更新 (25H2) 组策略设置参考电子表格
    Group Policy Settings Reference Spreadsheet for Windows 11 2025 Update (25H2)
    此电子表格列出了 Windows 11 2025 更新 (25H2) 附带的管理模板文件中包含的计算机和用户配置策略设置。 您可以在编辑组策略对象时配置这些策略设置。

    4.4 PolicyDefinitions (策略定义)

    PolicyDefinitions (策略定义) 是一个文件夹,它用于存储 Windows 组策略的模板文件(.admx 文件),以便管理员可以在本地或域控制器上通过组策略编辑器(gpedit.msc)管理 Windows 设置。 它并不是一个可以直接“使用”的应用程序,而是操作系统用来管理策略的底层文件存储位置。 

    PolicyDefinitions 的作用
    存储策略模板: 存放的 .admx 文件定义了可在组策略编辑器中配置的所有设置的名称和选项。
    简化管理: 通过将策略设置集中在一个地方,方便管理员进行统一的管理和部署。
    适用于高级管理: 主要用于企业环境,以便集中管理多台电脑的策略配置,例如安全性、系统行为等。 

    如何访问和管理策略定义
    使用组策略编辑器: 在运行窗口中输入 gpedit.msc,即可打开本地组策略编辑器,直接在界面中浏览和修改策略设置,而无需直接操作 PolicyDefinitions 文件夹。
    在域控制器上: 如果是域环境,可以在域控制器上通过组策略管理编辑器(gpmc.msc)进行集中管理。
    手动添加自定义模板: 如果有第三方软件提供的策略模板,可以手动将 .admx 文件复制到  C:\Windows\PolicyDefinitions 文件夹下,然后刷新组策略编辑器即可看到新的策略设置。 

    4.5 其他

    Microsoft Intune 设置目录已更新,以支持新的 Windows 11 版本 25H2 设置

    Windows-UAC

    导航 (返回顶部) 1. UAC 1.1 UAC选项 1.2 触发UAC警告条件 1.3 避免UAC提示的方法 2. 提供管理员权限-任务计划方式 2.1 Windows 任务计划 2.2 快捷方式 2.3 运行 2.4 更便捷的UAC白名单小工具 3. 不...