struttura PRJ_CALLBACK_DATA (projectedfslib.h)

Definisce le informazioni standard passate a un provider per ogni callback dell'operazione.

Sintassi

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;

Members

Size

Dimensioni in byte di questa struttura. Il provider non deve tentare di accedere ad alcun campo di questa struttura che si trova oltre questo valore.

Flags

Flag specifici del callback.

NamespaceVirtualizationContext

Handle opaco all'istanza di virtualizzazione che invia il callback.

CommandId

Valore che identifica in modo univoco una particolare chiamata di un callback. Il provider usa questo valore:

  • Nelle chiamate a PrjCompleteCommand per segnalare il completamento di un callback da cui ha restituito in precedenza HRESULT_FROM_WIN32(ERROR_IO_PENDING).
  • Quando ProjFS invia un callback PRJ_CANCEL_COMMAND_CB . Il commandId nella chiamata PRJ_CANCEL_COMMAND_CB identifica una chiamata precedente di un callback che il provider deve annullare.

FileId

Valore che identifica in modo univoco l'handle di file per il callback.

DataStreamId

Valore che identifica in modo univoco un flusso di dati aperto per il callback.

FilePathName

Percorso del file di destinazione. Si tratta di una stringa con terminazione Null di caratteri Unicode. Questo percorso viene sempre specificato rispetto alla radice di virtualizzazione.

VersionInfo

Informazioni sulla versione se la destinazione del callback è un segnaposto o un file parziale.

TriggeringProcessId

Identificatore del processo per il processo che ha attivato questo callback. Se queste informazioni non sono disponibili, sarà 0. I callback che forniscono queste informazioni includono: PRJ_GET_PLACEHOLDER_INFO_CB, PRJ_GET_FILE_DATA_CB e PRJ_NOTIFICATION_CB.

TriggeringProcessImageFileName

Stringa Unicode con terminazione Null che specifica il nome del file di immagine corrispondente a TriggeringProcessId. Se TriggeringProcessId è 0, sarà NULL.

InstanceContext

Puntatore alle informazioni di contesto definite dal provider. Il provider passa questo contesto nel parametro instanceContext di PrjStartVirtualizing.

Se il provider non ha specificato tale contesto, questo valore sarà NULL.

Requisiti

Requisito Valore
Client minimo supportato Windows 10, versione 1809 [solo app desktop]
Server minimo supportato Windows Server [solo app desktop]
Intestazione projectedfslib.h