0

我想按 ID 打开一个文件,然后在 Win32 API 中使用生成的句柄BackupRead()

这可能吗?我不确定是否可以使用来自NtCreateFile()其他 Win32 API 的句柄?

例如,我可以这样做吗

NtCreateFile(&handle, ..., FILE_OPEN_BY_FILE_ID, ....)
BackupFile(handle, ....)

我对使用感到有些困扰NtCreateFile,它在MSDN上有很好的记录, 但他们也提到可能会出现兼容性问题

有任何想法吗?

4

1 回答 1

1

我不确定我是否 100% 了解您的问题是什么,并且我不知道任何名为BackupFile().

如果您想要重用NTCreateFile()with中的句柄BackupRead(),那么这样做应该很好,只要文件句柄是使用正确的标志和权限打开的。

一定要NTCreateFileFILE_OPEN_FOR_BACKUP_INTENT旗子打电话:

NtCreateFile(&handle, ..., FILE_OPEN_BY_FILE_ID|FILE_OPEN_FOR_BACKUP_INTENT, ....)

如果您打算将生成的句柄传递给BackupRead().

于 2012-10-13T15:40:19.363 回答