Condividi tramite


Metodo IDeliveryOptimizationJob::AddFileWithRanges

Aggiunge un file a un processo di download e specifica gli intervalli del file da scaricare.

Sintassi

HRESULT AddFileWithRanges(
  [in]           LPCWSTR       fileId,
  [in]           LPCWSTR       remoteUrl,
  [in]           LPCWSTR       localName,
  [in, optional] DWORD         rangeCount,
  [in, optional] BG_FILE_RANGE ranges[],
  [in, optional] ULONG64       fileSize
);

Parametri

fileId [in]

Stringa terminata null che rappresenta un identificatore univoco del contenuto pubblicato. Per il contenuto non pubblicato, questa può essere qualsiasi stringa univoca che il chiamante può usare per identificare i file all'interno di un processo.

remoteUrl [in]

Stringa con terminazione null contenente il nome del file nel server.

localName [in]

Stringa con terminazione null contenente il nome del file nel client.

rangeCount [in, facoltativo]

Numero di elementi in Intervalli.

intervalli [in, facoltativo]

Matrice di una o più strutture BG_FILE_RANGE che specificano gli intervalli da scaricare. Non specificare intervalli duplicati o sovrapposti.

fileSize [in, facoltativo]

Dimensioni del file, in byte. Passare DO_UNKNOWN_FILE_SIZE se le dimensioni non sono note all'applicazione chiamante.

Valore restituito

Questo metodo restituisce i valori restituiti seguenti, nonché altri.

Codice restituito Descrizione
S_OK
Operazione completata.
E_INVALIDARG
Il nome del file locale è NULL o stringa vuota.
E_ACCESSDENIED
L'utente non dispone dell'autorizzazione per scrivere nella directory specificata nel client.
DO_E_INVALID_RANGE
Uno degli intervalli non è valido. Ad esempio, InitialOffset è impostato su BG_LENGTH_TO_EOF.
DO_E_OVERLAPPING_RANGES
Non è possibile specificare intervalli duplicati o sovrapposti.
Nota: Gli intervalli vengono ordinati in base all'offset del valore, non alla lunghezza. Se gli intervalli vengono immessi con lo stesso offset, ma sono in ordine inverso, verrà restituito questo errore. Ad esempio, se 100.5 e 100.0 vengono immessi in tale ordine, non sarà possibile aggiungere il file al processo.
DO_E_INVALID_STATE
Lo stato del processo non può essere BG_JOB_STATE_CANCELLED o BG_JOB_STATE_ACKNOWLEDGED.

Requisiti

Requisito Valore
Client minimo supportato
Windows 10 versione 1709 [solo app desktop]
Server minimo supportato
Windows Server, versione 1709 [solo app desktop]
Intestazione
Deliveryoptimization.h
IDL
DeliveryOptimization.idl
Libreria
Dosvc.lib
DLL
Dosvc.dll
IID
IID_IDeliveryOptimizationJob viene definito come EE2584CF-A69C-4848-B633-2649962B3EF7

Vedi anche

IDeliveryOptimizationJob