Função FindFirstStreamW (fileapi.h)
Enumera o primeiro fluxo com um tipo de fluxo ::$DATA no arquivo ou diretório especificado.
Para executar essa operação como uma operação transacionada, use a função FindFirstStreamTransactedW .
Sintaxe
HANDLE FindFirstStreamW(
[in] LPCWSTR lpFileName,
[in] STREAM_INFO_LEVELS InfoLevel,
[out] LPVOID lpFindStreamData,
DWORD dwFlags
);
Parâmetros
[in] lpFileName
O nome do arquivo totalmente qualificado.
[in] InfoLevel
O nível de informações dos dados retornados. Esse parâmetro é um dos valores no tipo de enumeração STREAM_INFO_LEVELS .
Valor | Significado |
---|---|
|
Os dados são retornados em uma estrutura WIN32_FIND_STREAM_DATA . |
[out] lpFindStreamData
Um ponteiro para um buffer que recebe os dados do fluxo de arquivos. O formato desses dados depende do valor do parâmetro InfoLevel .
dwFlags
Reservado para uso futuro. Esse parâmetro deve ser zero.
Valor retornado
Se a função for bem-sucedida, o valor retornado será um identificador de pesquisa que pode ser usado em chamadas subsequentes para a função FindNextStreamW .
Se houver falha na função, o valor retornado será INVALID_HANDLE_VALUE. Para obter informações de erro estendidas, chame GetLastError.
Se nenhum fluxo puder ser encontrado, a função falhará e GetLastError retornará ERROR_HANDLE_EOF (38).
Se o sistema de arquivos não der suporte a fluxos, a função falhará e GetLastError retornará ERROR_INVALID_PARAMETER (87).
Comentários
A função FindFirstStreamW abre um identificador de pesquisa e retorna informações sobre o primeiro fluxo $DATA no arquivo ou diretório especificado. Para arquivos, esse é sempre o fluxo de dados sem nome padrão, "::$DATA". Os diretórios não têm fluxos de $DATA por padrão e não podem ter um fluxo de dados sem nome, mas podem ter chamado fluxos de dados definidos depois de terem sido criados. Depois que o identificador de pesquisa tiver sido estabelecido, use-o em chamadas para a função FindNextStreamW para pesquisar outros fluxos no arquivo ou diretório especificado. Quando o identificador de pesquisa não for mais necessário, ele deverá ser fechado usando a função FindClose .
No Windows 8 e Windows Server 2012, essa função é compatível com as tecnologias a seguir.
Tecnologia | Com suporte |
---|---|
Protocolo SMB (SMB) 3.0 | Sim |
TFO (Failover transparente) do SMB 3.0 | Sim |
SMB 3.0 com compartilhamentos de arquivos de expansão (SO) | Sim |
Sistema de arquivos de Volume Compartilhado Clusterizado (CsvFS) | Sim |
ReFS (Sistema de Arquivos Resiliente) | Sim |
O SMB 3.0 dá suporte à lista de fluxos menores ou iguais a 64K.
Requisitos
Cliente mínimo com suporte | Windows Vista [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2003 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | fileapi.h (inclua Windows.h, WinBase.h) |
Biblioteca | Kernel32.lib |
DLL | Kernel32.dll |