projectedfslib.h) (PRJ_CALLBACK_DATA 结构

定义传递给提供程序的每个操作回调的标准信息。

语法

typedef struct PRJ_CALLBACK_DATA {
  UINT32                               Size;
  PRJ_CALLBACK_DATA_FLAGS              Flags;
  PRJ_NAMESPACE_VIRTUALIZATION_CONTEXT NamespaceVirtualizationContext;
  INT32                                CommandId;
  GUID                                 FileId;
  GUID                                 DataStreamId;
  PCWSTR                               FilePathName;
  PRJ_PLACEHOLDER_VERSION_INFO         *VersionInfo;
  UINT32                               TriggeringProcessId;
  PCWSTR                               TriggeringProcessImageFileName;
  void                                 *InstanceContext;
} PRJ_CALLBACK_DATA;

成员

Size

此结构的大小(以字节为单位)。 提供程序不得尝试访问此结构中超出此值的任何字段。

Flags

特定于回调的标志。

NamespaceVirtualizationContext

正在发送回调的虚拟化实例的不透明句柄。

CommandId

一个 值,该值唯一标识回调的特定调用。 提供程序使用此值:

  • 调用 PrjCompleteCommand 以指示回调完成,该回调之前从该回调返回HRESULT_FROM_WIN32 (ERROR_IO_PENDING) 。
  • 当 ProjFS 发送 PRJ_CANCEL_COMMAND_CB 回调时。 PRJ_CANCEL_COMMAND_CB调用中的 commandId 标识提供程序应取消的回调的早期调用。

FileId

一个 值,该值唯一标识回调的文件句柄。

DataStreamId

一个 值,该值唯一标识回调的打开数据流。

FilePathName

目标文件的路径。 这是以 null 结尾的 Unicode 字符字符串。 始终相对于虚拟化根目录指定此路径。

VersionInfo

如果回调的目标是占位符或部分文件,则为版本信息。

TriggeringProcessId

触发此回调的进程的进程标识符。 如果此信息不可用,则为 0。 提供此信息的回调包括: PRJ_GET_PLACEHOLDER_INFO_CBPRJ_GET_FILE_DATA_CBPRJ_NOTIFICATION_CB

TriggeringProcessImageFileName

一个以 null 结尾的 Unicode 字符串,指定对应于 TriggeringProcessId 的图像文件名。 如果 TriggeringProcessId 为 0,则为 NULL。

InstanceContext

指向提供程序定义的上下文信息的指针。 提供程序在 PrjStartVirtualizing 的 instanceContext 参数中传递此上下文。

如果提供程序未指定此类上下文,则此值将为 NULL。

要求

要求
最低受支持的客户端 Windows 10 版本 1809 [仅限桌面应用]
最低受支持的服务器 Windows Server [仅限桌面应用]
标头 projectedfslib.h