如何从注册表中禁用Windows XP或Windows 7中的Windows文件保护?


1

如何从注册表中禁用Windows 7和/或XP中的Windows文件保护?

我想要 自动 用我创建的驱动程序替换驱动程序。我用了 的PendingFileRenameOperations 键入 HKLM \ System \ CurrentControlSet \ Control \ Session Manager 但我发现它只能用于简单(非系统)文件, 因为Windows文件保护会禁用它以用于系统文件( 看这篇文章 )。

现在我需要暂时禁用WFP(并在更改驱动程序后将其打开)。 你可以告诉我另一种禁用它的方法。它也可以帮助我。有任何想法吗?

Answers:


2

它不能像你希望的那样默默地完成,主要是因为调试器的要求:

您可以通过设置值SFCDisable(REG_DWORD)来禁用WFP   HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \   Winlogon中。默认情况下,SFCDisable设置为0,表示WFP为   活性。将SFCDisable设置为1将禁用WFP。设置SFCDisable   到2将禁用WFP仅用于下一次系统重启(没有   提示重新启用)。

要点:您必须通过连接到系统的内核调试器   使用null调制解调器电缆(例如:I386kd.exe或Windbg.exe)   SFCDisable = 1或SFCDisable = 2。

使用SFCDisable = 1设置禁用WFP后,如下所示   登录后将显示消息:

警告! Windows文件保护在此系统上未处于活动状态。将   您想立即启用Windows文件保护吗?这将启用   Windows文件保护,直到下一次系统重启。 。

单击是将重新激活WFP,直到下一次系统重新启动。这个   每次成功登录时都会显示消息,直到设置了SFCDisable   到0。

看到 这里

你考虑过使用吗? DEVCON 或者,更好的是, pnputil 从命令行加载您的驱动程序?


非常感谢devcon和pnputil!我会试试看。它们似乎很有用。
Searush

但我在Win7中找不到HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Winlogon \ SFCDisable。我做什么?如果我创建名为SFCDisable的新密钥,它会工作吗?
Searush

是的,你可以创造价值,但我不认为它对你有好处。在将值设置为之前,必须附加内核调试器 1 实际上会做任何事情。
Kasius

你的意思是“创建SFCDisable”键在我附加内核调试器后会起作用吗?
Searush

如果我正确地阅读了我引用的文章,那么是的。它应该工作。这不像是将调试器附加到其他进程。您必须将另一个系统连接到您的系统。有人必须物理连接另一台机器并运行调试器。看到 这里
Kasius
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.