Condividi tramite


struttura BG_FILE_INFO (bits.h)

Fornisce i nomi locali e remoti del file da trasferire.

Sintassi

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

Members

RemoteName

Stringa con terminazione Null contenente il nome del file nel server, ad esempio http://< server>/<path>/file.ext. Il formato del nome deve essere conforme al protocollo di trasferimento usato. Non è possibile utilizzare caratteri jolly nel percorso o nel nome del file. L'URL deve contenere solo caratteri URL legali; non viene eseguita alcuna elaborazione di escape. L'URL è limitato a 2.200 caratteri, senza includere il carattere di terminazione Null.

Ogni segmento dell'URL è limitato a MAX_PATH caratteri.

È possibile usare SMB per esprimere il nome remoto del file da scaricare o caricare; non è disponibile alcun supporto SMB per i processi upload-reply. È possibile specificare il nome remoto come percorso UNC, percorso completo con un'unità di rete o usare il prefisso "file://". BITS 1.5 e versioni precedenti: Il protocollo SMB per RemoteName non è supportato.

LocalName

Stringa con terminazione Null contenente il nome del file nel client. Il nome del file deve includere il percorso completo, ad esempio d:\myapp\updates\file.ext. Non è possibile utilizzare caratteri jolly nel percorso o nel nome del file e le directory nel percorso devono esistere. Il percorso è limitato alle MAX_PATH, senza includere il carattere di terminazione Null.

L'utente deve disporre dell'autorizzazione per scrivere nella directory locale per i download e la parte di risposta di un processo upload-reply. BITS non supporta i flussi NTFS. Anziché usare unità di rete specifiche per la sessione, usare percorsi UNC, ad esempio \server\share\path\file. Non includere \? prefisso nel percorso.

Commenti

BITS supporta i protocolli HTTP, HTTPS e SMB per RemoteName. Per i requisiti HTTP, vedere Requisiti HTTP per i download BITS.

BITS 1.5 e versioni precedenti: Il protocollo SMB per RemoteName non è supportato.

Di seguito viene indicato se BITS propaga i timestamp di un file:

  • Per i download HTTP, BITS propaga il timestamp di modifica del file e imposta l'ora di creazione del file sull'ora di modifica.
  • Per i caricamenti HTTP, BITS non propaga i timestamp del file.
  • Per i download e i caricamenti SMB, BITS propaga i timestamp del file.
BITS non supporta i percorsi SMB a named pipe o dispositivi. Per mantenere le informazioni sul proprietario e sull'elenco di controllo di accesso per i file scaricati tramite SMB, chiamare il metodo IBackgroundCopyJob3::SetFileACLFlags .

Se la parte relativa al percorso e al nome file dell'URL per un processo di caricamento e caricamento HTTP contiene caratteri Unicode non comuni alla tabella codici sia nel client che nel server, la conversione url avrà esito negativo nel server e il processo BITS verrà inserito nello stato di errore. Se la parte server dell'URL contiene caratteri Unicode, è necessario codificare la parte del server usando IDN (Internationalized Domain Names ).

BITS non limita le dimensioni del file che è possibile scaricare tramite HTTP. Per i limiti di caricamento, vedere la proprietà dell'estensione IIS BITSMaximumUploadSize .

IIS 5.0: I download sono limitati a 4 GB.

BITS 1.2 e versioni precedenti: Per i download HTTP, la dimensione massima del file che è possibile trasferire è 4 GB; BITS non può garantire il corretto trasferimento dei file su 4 GB. Se l'URL contiene caratteri Unicode che non si trovano nel set di caratteri US-ASCII, codificare la stringa Unicode in UTF-8 prima di passarla come nome file remoto a BITS. Se non si codifica la stringa, il server HTTP potrebbe ricevere un URL non corretto e il processo potrebbe immettere lo stato di errore.

Requisiti

Requisito Valore
Client minimo supportato Windows XP
Server minimo supportato Windows Server 2003
Intestazione bits.h

Vedi anche

IBackgroundCopyFile2::SetRemoteName

IBackgroundCopyFile::GetLocalName

IBackgroundCopyFile::GetRemoteName

IBackgroundCopyJob3::ReplaceRemotePrefix

IBackgroundCopyJob::AddFileSet