我已在 Windows 11 中启用了长文件路径,方法是使用 regedit 将LongPathsEnabled
注册表值设置1
为HKLM\SYSTEM\CurrentControlSet\Control\FileSystem
。
多年来,这一设置一直运行良好,但上周,该LongPathsEnabled
设置被多次重置0
。
每次我将其设置为1
,一两天内它就会设置为0
。
我尝试通过gpedit.msc
在本地计算机策略(下)中将“启用 Win32 长路径”设置设置为“已启用”来解决此问题Computer Configuration\Administrative Templates\System\Filesystem
,但这并没有帮助。
我怎样才能阻止LongPathsEnabled
注册表值被设置为零?
我怎样才能知道设置了什么?
我的公司控制着我机器上的策略设置,但没有设置这个。我如何检测他们是否设置了它?
答案1
如果注册表项发生更改,则一定是由某个进程或线程完成的。我建议使用进程监视器跟踪该项,看看能否找出更改原因。因此,在停止它之前,您需要知道更改原因。
您还可以使用 Sysinternals 的另一个工具(现已使用多年),那就是 Sysmon,它作为 Windows 服务运行,并使用自定义 xml,您可以以更详细的方式审核系统上的更改。
审计该密钥的 sysmon 自定义 xml 可能如下所示
<Sysmon schemaversion="4.22">
<RegistryEvent>
<TargetObject condition="end with">\LongPathsEnabled</TargetObject>
</RegistryEvent>
</Sysmon>
对于 sysmon 的自动安装,我强烈推荐这个 github repo
https://github.com/simeononsecurity/Automate-Sysmon
其中已经有一个自定义 xml,但您可能需要在该 xml 中为 LongPathsEnabled 添加一条规则 https://github.com/simeononsecurity/Automate-Sysmon/blob/main/Files/sysmonconfig-export.xml
卸载联想客户端软件
答案2
几周前 Windows 11 更新后,我开始出现这种情况。
显然,在“本地组策略编辑器”中设置它可以为我解决这个问题(regedit 中的设置总是被重置,但组策略得以维护,并且系统似乎能够写入长文件)。
即:在gpedit.msc
,在Computer Configuration
>>> -- 。Administrative Templates
System
Filesystem
Enable win32 long paths
注意:就我而言,没有任何公司可以对其进行任何控制,并且我在 Windows 11 更新后开始看到它(我怀疑微软引入了一个错误......)。