【发布时间】:2013-05-06 19:40:55
【问题描述】:
如果我尝试运行它:
#include <Windows.h>
int main()
{
CreateFile(
TEXT("X:\\$MFT\\Folder"),
FILE_READ_ATTRIBUTES,
FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE,
NULL,
OPEN_EXISTING,
0,
NULL);
return 0;
}
在任何进一步尝试访问X: 时系统死锁(以及在 Windows 8 上,随后出现蓝屏死锁)。
(更新:X: 只是一个占位符;您可以将其替换为任何有效的驱动器。)
我花了一段时间才找到它,现在我找到了——但我很困惑:原因是什么?
【问题讨论】:
-
X 是映射的网络驱动器吗?您的描述当然听起来像是驱动程序中的错误。您从 BSOD 获得的错误代码是什么?您是否已发送崩溃报告?
-
@dlev: 不,
X:是一个占位符,如果你愿意,你可以用C:替换它——如果它是C:,它崩溃得更快,实际上。我没有写C:,因为我担心有人会复制粘贴它,然后逐字逐句运行它并不小心让他的电脑崩溃。 -
好的,文件名很重要,还是只是其他标志的组合导致了死锁/BSOD?
-
@dlev:
\$MFT部分很重要——系统似乎不希望主文件表以这种方式打开。然而,究竟是什么导致它崩溃,这让我感到困惑——它应该只是失败。\Folder部分可以是任何东西。
标签: windows winapi crash createfile bsod