如何从 Startup 文件夹中删除 forkbomb?

Eth*_*ein 87 windows windows-vista batch batch-file

我有一台运行 Windows Vista 的较旧的笔记本电脑,大约从 2005 年开始,我在玩弄它。在愚蠢的时刻,我创建了一个批处理文件并将以下代码放入其中:

%0|%0
Run Code Online (Sandbox Code Playgroud)

我运行了这个,我不得不重新启动我的笔记本电脑。但是,我决定继续这个破坏性的路径并将批处理文件放在 Windows 启动文件夹中。现在我无法登录而不破坏我的笔记本电脑。

如何从 Startup 文件夹中删除这个 forkbomb?

Dav*_*ill 76

如何从 Startup 文件夹中删除 forkbomb?

以“安全模式”启动您的 PC(启动程序不在安全模式下运行,并且只安装了启动 Windows 所需的基本驱动程序)。

然后您可以删除有问题的批处理文件。


如何以安全模式启动 Windows Vista

  1. 要开始进入 Windows Vista 安全模式,请打开或重新启动您的 PC。

  2. 您将看到启动画面

  3. Windows Vista 启动画面出现之前,按 F8进入“高级启动选项”

  4. 选择“安全模式”,然后按 Enter

截图:

在此处输入图片说明

**强文本**

来源如何以安全模式启动 Windows Vista

  • 它们是使用虚拟机创建的。 (51认同)
  • @Mutantoe 谷歌图片搜索;) (20认同)
  • 请注意,Windows 将启动 RunOnce 注册表项中的内容 [即使在安全模式下](https://msdn.microsoft.com/en-us/library/aa376977%28v=vs.85%29.aspx?f=255&MSPPError= -2147217396) 如果它们以 * 为前缀。如果您有足够的冒险精神在您的启动文件夹中放置一个 fork 炸弹,请确保您不要在注册表中做同样的事情。 (19认同)
  • 只是出于好奇,您是如何获得这些屏幕截图的? (7认同)
  • @EhsanSajjad 是的。本质上,如果您将 forkbomb 保存为“fork.bat”,那么运行它将运行“fork.bat|fork.bat”。这意味着每次运行 `fork.bat` 时,都会再启动两个副本。 (5认同)
  • @EhsanSajjad `%0` 是批处理文件的名称。`|` 是管道符号。所以一个包含`%0|%0`的批处理文件说再次运行我并将我的输出递归地传递给我的一个新副本。 (4认同)

Sor*_*tad 19

您可以在计算机启动和登录时按住 Shift 键跳过加载 Startup 文件夹的内容。(请注意,这不适用于从注册表或其他位置加载的启动应用程序,仅适用于实际的 Startup 文件夹。)

  • 我之前在 Windows 7 上做过这个,而且效果很好。在您按 Enter 密码后,您必须一直按住 Shift 直到桌面出现,为了安全起见,可能需要更长的时间。 (3认同)
  • 你真的试过这个还是你只是在某个地方读过它?我刚刚在 Windows 8.1 上尝试过,但似乎没有用。 (2认同)

Qui*_*ill 9

尝试在启动过程中按 以安全模式启动您的笔记本电脑F8,从那里,只需在启动文件夹中找到该文件并将其删除。

如果您担心不小心打开它或类似的东西,您可以使用命令提示符以安全模式启动(前提是您可以使用命令提示符),然后以del这种方式运行。

比这更安全的是将硬盘驱动器取出并将其连接到无法打开批处理文件的机器,从而无法重新激活序列,并以这种方式将其删除。

如果那不可用,您可以随时尝试重新映像驱动器。

  • 如果您可以通过以某种方式启动到另一个工具来重新映像驱动器,那么您可以从那里删除该文件。 (3认同)

Mic*_*ley 7

最好的办法是启动到安全模式或恢复磁盘或 linux live CD 并将其删除。

要启动到安全模式继续前进,我相信命中F8。这是说明,但最重要的是在F8中途罢工。

在 Windows 中删除文件的命令是del,在 Linux 中是rm. 请注意,在 Linux 中,您最好通过他们的文件管理器执行此操作,因为如果您不了解 Linux,则必须安装磁盘等等。恢复控制台命令提示符是您在 Windows 磁盘中需要的。


Sha*_*tam 5

除了其他答案:如果碰巧,您的问题出在注册表中(例如,在@isanae 对已接受答案的评论中),您可以通过启动到您的 Windows 版本的另一个安装来离线编辑注册表,或使用安装程序/WinPE 环境 CD。

简而言之,打开备用操作系统中的注册表编辑器(从 WinPE 或安装光盘,您可以按Ctrl+F10打开命令提示符,然后输入“regedit”)。从那里,您可以在注册表树中创建一个新节点,然后使用 File -> Load Hive 选择相应的文件进行离线注册表编辑,如下所示:

[HKEY_LOCAL_MACHINE\SYSTEM] (%windir%/system32/config/SYSTEM)

[HKEY_LOCAL_MACHINE\SOFTWARE] (%windir%/system32/config/SOFTWARE)

[HKEY_USERS.Default] (%windir%/system32/config/DEFAULT)

[HKEY_CURRENT_USER] (%userprofile%/ntuser.dat)

从这里,您可以进行任何您需要的编辑(例如,SOFTWARE\Microsoft\Windows\CurrentVersion\Run,保存您的启动程序),然后将您打开的配置单元保存/关闭回同一个文件。

  • 请注意,如果您使用此方法从同一 Windows 安装上的第二个用户帐户修复用户本地注册表设置,则在尝试登录之前卸载配置单元是绝对必要的。如果您将配置单元挂载,则无法将其加载到`HKEY_USERS` 下的正确位置,并且**Windows 将永久更改配置文件** 以指向新制作的大部分为空的配置单元。(大部分为空 = 与有史以来第一次登录的用户状态相同)。仅仅回顾你的步骤并不能解决问题。 (2认同)