C 从内核窗口创建文件

C 从内核窗口创建文件,c,kernel,C,Kernel,这就是我创建文件的方法(在C:\example.txt中): 但在启动驱动程序后,我在C驱动器上找不到example.txt。我使用的是Windows7,我不知道是否应该使用另一个文件路径。 ZwCreateFile也获得了成功。 我做错了什么?找到了解决方案:替换文件\u打开文件\u替换可能是权限问题。尝试在您拥有write accessWell的地方创建文件,看起来它不会创建新文件,但会打开一个句柄。我应该添加哪些属性来创建文件?找到解决方案:替换文件\u打开文件\u替换 RtlInitUn

这就是我创建文件的方法(在C:\example.txt中):

但在启动驱动程序后,我在C驱动器上找不到example.txt。我使用的是Windows7,我不知道是否应该使用另一个文件路径。 ZwCreateFile也获得了成功。
我做错了什么?

找到了解决方案:替换文件\u打开文件\u替换

可能是权限问题。尝试在您拥有write accessWell的地方创建文件,看起来它不会创建新文件,但会打开一个句柄。我应该添加哪些属性来创建文件?找到解决方案:替换文件\u打开文件\u替换
RtlInitUnicodeString(&uniName, L"\\DosDevices\\C:\\example.txt"); //L"\\SystemRoot\\drvhinf.txt");  // or L"\\SystemRoot\\example.txt" \\DosDevices\\C:\\WINDOWS\\example.txt
    InitializeObjectAttributes(&objAttr, &uniName,
        OBJ_CASE_INSENSITIVE | OBJ_KERNEL_HANDLE,
        NULL, NULL);
    //////////////////////////////////

    ///////////////////////////////////
    //Load the buffer (ie. contents of text file to the console)
    ntstatus = ZwCreateFile(&handle,
        GENERIC_WRITE, //GENERIC_READ
        &objAttr, &ioStatusBlock,
        NULL,
        FILE_ATTRIBUTE_NORMAL,
        0,
        FILE_OPEN,
        FILE_SYNCHRONOUS_IO_NONALERT,
        NULL, 0);