即使文件存在,CreateFile函数也无法读取文件,错误代码为-1

时间:2018-05-29 00:43:36

标签: shell assembly reverse-engineering createfile ollydbg

试图反转Windows可执行文件,我找到了尝试以只读模式打开文件的函数creatfile

enter image description here

我在同一个目录中创建了与该函数同名的文件,但它始终失败,错误代码为-1,我想知道原因。

enter image description here

函数调用后eax寄存器的值为-1,这是来自同一目录的dir命令的输出

enter image description here

知道它失败的原因吗?

1 个答案:

答案 0 :(得分:2)

\\.\表示法不用于普通文件。它用于设备。因此,创建常规文件在此处不起作用。相反,您需要创建具有该名称的设备。这些名称在设备驱动程序中也很常见 - 因此可能是此任务的命名。

请参阅" Win32设备命名空间"在Naming Files, Paths, and Namespaces获取更多信息。