Condividi tramite


Funzione FindFirstStreamTransactedW (winbase.h)

[Microsoft consiglia vivamente agli sviluppatori di usare mezzi alternativi per raggiungere le esigenze dell'applicazione. Molti scenari sviluppati da TxF possono essere ottenuti tramite tecniche più semplici e più leggibili. Inoltre, TxF potrebbe non essere disponibile nelle versioni future di Microsoft Windows. Per altre informazioni e alternative a TxF, vedere Alternative all'uso di NTFS transazionale.

Enumera il primo flusso nel file o nella directory specificata come operazione transazionata.

Sintassi

HANDLE FindFirstStreamTransactedW(
  [in]  LPCWSTR            lpFileName,
  [in]  STREAM_INFO_LEVELS InfoLevel,
  [out] LPVOID             lpFindStreamData,
        DWORD              dwFlags,
  [in]  HANDLE             hTransaction
);

Parametri

[in] lpFileName

Nome file completo.

Il file deve risiedere nel computer locale; in caso contrario, la funzione ha esito negativo e l'ultimo codice di errore è impostato su ERROR_TRANSACTIONS_UNSUPPORTED_REMOTE (6805).

[in] InfoLevel

Livello di informazioni dei dati restituiti. Questo parametro è uno dei valori del tipo di enumerazione STREAM_INFO_LEVELS .

Valore Significato
FindStreamInfoStandard
0
I dati vengono restituiti in una struttura di WIN32_FIND_STREAM_DATA .

[out] lpFindStreamData

Puntatore a un buffer che riceve i dati del file. Il formato di questi dati dipende dal valore del parametro InfoLevel .

dwFlags

Riservato per utilizzi futuri. Questo parametro deve essere zero.

[in] hTransaction

Handle per la transazione. Questo handle viene restituito dalla funzione CreateTransaction .

Valore restituito

Se la funzione ha esito positivo, il valore restituito è un handle di ricerca che può essere usato nelle chiamate successive alla funzione FindNextStreamW .

Se la funzione ha esito negativo, il valore restituito è INVALID_HANDLE_VALUE. Per informazioni dettagliate sull'errore, chiamare GetLastError.

Commenti

Tutti i file contengono un flusso di dati predefinito. In NTFS i file possono contenere anche uno o più flussi di dati denominati. Nei file system FAT i file system non possono avere più che il flusso di dati predefinito e pertanto questa funzione non restituirà risultati validi quando usati nei file di file system FAT. Questa funzione funziona su tutti i file system che supportano collegamenti rigidi; in caso contrario, la funzione restituisce ERROR_STATUS_NOT_IMPLEMENTED (6805).

La funzione FindFirstStreamTransactedW apre un handle di ricerca e restituisce informazioni sul primo flusso nel file o nella directory specificata. Per i file, si tratta sempre del flusso di dati predefinito: ::$DATA. Dopo aver stabilito l'handle di ricerca, usarlo nella funzione FindNextStreamW per cercare altri flussi nel file o nella directory specificata. Quando l'handle di ricerca non è più necessario, deve essere chiuso usando la funzione FindClose .

In Windows 8 e Windows Server 2012 questa funzione è supportata dalle tecnologie seguenti.

Tecnologia Supportato
Protocollo SMB (Server Message Block) 3.0 No
Failover trasparente SMB 3.0 (TFO) No
SMB 3.0 con condivisioni file con scalabilità orizzontale (SO) No
File system del volume condiviso del cluster (CsvFS) No
File system resiliente (ReFS) No
 

SMB 3.0 non supporta TxF.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione winbase.h (include Windows.h)
Libreria Kernel32.lib
DLL Kernel32.dll

Vedere anche

Funzioni di gestione file

FindClose

FindNextStreamW

STREAM_INFO_LEVELS

NTFS transazionale

WIN32_FIND_STREAM_DATA