estrutura BG_FILE_INFO (bits.h)

Fornece os nomes locais e remotos do arquivo a ser transferido.

Sintaxe

typedef struct _BG_FILE_INFO {
  LPWSTR RemoteName;
  LPWSTR LocalName;
} BG_FILE_INFO;

Membros

RemoteName

Cadeia de caracteres terminada em nulo que contém o nome do arquivo no servidor (por exemplo, http://< server>/<path>/file.ext). O formato do nome deve estar em conformidade com o protocolo de transferência usado. Não é possível usar curingas no caminho ou no nome do arquivo. A URL deve conter apenas caracteres de URL legais; nenhum processamento de escape é executado. A URL é limitada a 2.200 caracteres, sem incluir o terminador nulo.

Cada segmento da URL é limitado a caracteres MAX_PATH.

Você pode usar o SMB para expressar o nome remoto do arquivo para baixar ou carregar; não há suporte SMB para trabalhos de upload-reply. Você pode especificar o nome remoto como um caminho UNC, caminho completo com uma unidade de rede ou usar o prefixo "file://". BITS 1.5 e anteriores: Não há suporte para o protocolo SMB para RemoteName .

LocalName

Cadeia de caracteres terminada em nulo que contém o nome do arquivo no cliente. O nome do arquivo deve incluir o caminho completo (por exemplo, d:\myapp\updates\file.ext). Você não pode usar curingas no caminho ou no nome do arquivo e os diretórios no caminho devem existir. O caminho é limitado a MAX_PATH, não incluindo o terminador nulo.

O usuário deve ter permissão para gravar no diretório local para downloads e a parte de resposta de um trabalho de upload-reply. O BITS não dá suporte a fluxos NTFS. Em vez de usar unidades de rede, que são específicas da sessão, use caminhos UNC (por exemplo, \server\share\path\file). Não inclua o \? prefixo no caminho.

Comentários

O BITS dá suporte aos protocolos HTTP, HTTPS e SMB para RemoteName. Para obter requisitos HTTP, consulte Requisitos HTTP para downloads de BITS.

BITS 1.5 e anteriores: Não há suporte para o protocolo SMB para RemoteName .

O seguinte identifica se o BITS propaga os carimbos de data/hora de um arquivo:

  • Para downloads HTTP, o BITS propaga o carimbo de data/hora de modificação do arquivo e define o tempo de criação do arquivo para o tempo de modificação.
  • Para uploads HTTP, o BITS não propaga os carimbos de data/hora do arquivo.
  • Para downloads e uploads do SMB, o BITS propaga os carimbos de data/hora do arquivo.
O BITS não dá suporte a caminhos SMB para pipes ou dispositivos nomeados. Para manter as informações de proprietário e ACL para arquivos baixados usando SMB, chame o método IBackgroundCopyJob3::SetFileACLFlags .

Se a parte do caminho e do nome do arquivo da URL de um trabalho de upload http e upload-reply contiver caracteres Unicode não em comum à página de código no cliente e no servidor, a tradução de URL falhará no servidor e o trabalho BITS será colocado no estado de erro. Se a parte do servidor da URL contiver caracteres Unicode, você deverá codificar a parte do servidor usando IDN ( Nomes de Domínio Internacionalizados ).

O BITS não limita o tamanho do arquivo que você pode baixar usando HTTP. Para obter limites de upload, consulte a propriedade de extensão DO IIS BITSMaximumUploadSize .

IIS 5.0: Os downloads são limitados a 4 GB.

BITS 1.2 e anteriores: Para downloads HTTP, o tamanho máximo do arquivo que você pode transferir é de 4 GB; O BITS não pode garantir a transferência bem-sucedida de arquivos com mais de 4 GB. Se a URL contiver caracteres Unicode que não estão no conjunto de caracteres US-ASCII, codifique a cadeia de caracteres Unicode em UTF-8 antes de passá-la como o nome do arquivo remoto para BITS. Se você não codificar a cadeia de caracteres, o servidor HTTP poderá receber uma URL incorreta e o trabalho poderá entrar no estado de erro.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP
Servidor mínimo com suporte Windows Server 2003
Cabeçalho bits.h

Confira também

IBackgroundCopyFile2::SetRemoteName

IBackgroundCopyFile::GetLocalName

IBackgroundCopyFile::GetRemoteName

IBackgroundCopyJob3::ReplaceRemotePrefix

IBackgroundCopyJob::AddFileSet