C++ 在Windows10中创建块文件
我需要在文件夹中创建块文件创建应用程序,我试图看到一些关于minifilter的例子,但仍然不明白如何做到这一点。找到了执行处理的这段代码。这是一个示例链接C++ 在Windows10中创建块文件,c++,minifilter,C++,Minifilter,我需要在文件夹中创建块文件创建应用程序,我试图看到一些关于minifilter的例子,但仍然不明白如何做到这一点。找到了执行处理的这段代码。这是一个示例链接 因此,简言之,每一种打开或创建文件的行为都以 IRP_MJ_创建回调。您可以获取要打开的文件名或 已创建文件夹的名称以及此类FLTGetFileName信息 并决定是否允许该请求 返回FLT_PREOP_SUCCESS_NO_回调,允许请求继续 或者将IoStatus设置为“状态”\u ACCESS\u DENIED并返回 FLT_PREO
因此,简言之,每一种打开或创建文件的行为都以 IRP_MJ_创建回调。您可以获取要打开的文件名或 已创建文件夹的名称以及此类FLTGetFileName信息 并决定是否允许该请求 返回FLT_PREOP_SUCCESS_NO_回调,允许请求继续 或者将IoStatus设置为“状态”\u ACCESS\u DENIED并返回 FLT_PREOP_完成以阻止请求。简而言之,这就是你的 过滤器应该阻止在特定文件夹下创建文件
CONST FLT_OPERATION_REGISTRATION Callbacks[] =
{
{ IRP_MJ_CREATE,
0,
SpyPreOperationCallback,
SpyPostOperationCallback },
{ IRP_MJ_WRITE,
0,
SpyPreOperationCallback,
SpyPostOperationCallback },
{ IRP_MJ_SET_INFORMATION,
0,
SpyPreOperationCallback,
SpyPostOperationCallback },
{ IRP_MJ_CLOSE,
0,
SpyPreOperationCallback,
SpyPostOperationCallback },
{ IRP_MJ_OPERATION_END } };