Функция CreateFile не может прочитать файл, даже если он существует, код ошибки -1 - PullRequest
0 голосов
/ 29 мая 2018

Пытаясь перевернуть исполняемый файл Windows, я нашел функцию creatfile, которая пытается открыть файл в режиме только для чтения,

enter image description here

Iсоздайте файл в том же каталоге с тем же именем, что и функции, но он всегда завершается ошибкой с кодом ошибки -1, и я хотел бы выяснить, почему.

enter image description here

Значение регистра eax после вызова функции равно -1, здесь вывод команды dir из того же каталога

enter image description here

Есть идеи, почему это не получается?

1 Ответ

0 голосов
/ 30 мая 2018

Запись \\.\ не используется для обычных файлов.Используется для устройств.Таким образом, создание обычного файла не будет работать здесь.Вместо этого вам нужно создать устройство с таким именем.Эти имена также распространены в драйверах устройств, поэтому, возможно, это и называется этой задачей.

Подробнее см. В разделе «Пространства имен устройств Win32» в Имена файлов, путей и пространств имен .1006 *

...