Я хочу подключить NtReadFile, чтобы он мог изменять текст, который считывается из файла. Но когда я пытаюсь прочитать файл, я получаю сообщение «Это приложение не запускалось, потому что неправильная конфигурация приложения».Крючок NtReadFile. Изменить текст
Вот мой код. Что не так?
NTSTATUS HookNtReadFile (
IN HANDLE FileHandle,
IN HANDLE Event,
IN PIO_APC_ROUTINE ApcRoutine,
IN PVOID ApcContext,
OUT PIO_STATUS_BLOCK IoStatusBlock,
OUT PVOID Buffer,
IN ULONG Length,
IN PLARGE_INTEGER ByteOffset,
IN PULONG Key)
{
NTSTATUS retstatus;
retstatus = glRealNtReadFile (FileHandle, Event, ApcRoutine, ApcContext, IoStatusBlock, Buffer, Length, ByteOffset, Key);
IoStatusBlock->Information = 3;
Length = 3;
Buffer = ExAllocatePool(PagedPool, Length);
Buffer = "hi";
return retstatus;
}
Вы попробовали [шаги] (https://support.microsoft.com/en-us/kb/948854), указанные для этого сообщения об ошибке? –
Почему вы пытаетесь это сделать? – andlabs
@andlabs это одно из моих заданий в uni. Я сделал еще один крючок (NtCreateFile, NtOpenFile ...), но с NtReadFile у меня есть некоторые проблемы. –