Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Fügt dem Auftrag eine einzelne Datei hinzu.
Syntax
HRESULT AddFile(
[in] LPCWSTR RemoteUrl,
[in] LPCWSTR LocalName
);
Die Parameter
[in] RemoteUrl
Null-beendete Zeichenfolge, die den Namen der Datei auf dem Server enthält. Informationen zum Angeben des Remotenamens finden Sie im Abschnitt " RemoteName"- und "Hinweise" der BG_FILE_INFO-Struktur .
[in] LocalName
Null-beendete Zeichenfolge, die den Namen der Datei auf dem Client enthält. Informationen zum Angeben des lokalen Namens finden Sie im Abschnitt " LocalName "- und "Hinweise" der BG_FILE_INFO Struktur.
Rückgabewert
Diese Methode gibt die folgenden HRESULT-Werte sowie andere zurück.
| Rückgabecode | Description |
|---|---|
|
Die Datei wurde dem Auftrag erfolgreich hinzugefügt. |
|
Uploadaufträge können nur eine Datei enthalten; Sie können dem Auftrag keine weitere Datei hinzufügen. |
|
Die Gruppenrichtlinieneinstellung "MaxFilesPerJob" bestimmt, wie viele Dateien ein Auftrag enthalten kann. Das Hinzufügen der Datei zum Auftrag überschreitet den MaxFilesPerJob-Grenzwert. |
|
Sie können diesen Fehler aus einem der folgenden Gründe erhalten:
|
|
Der Benutzer verfügt nicht über die Berechtigung zum Schreiben in das angegebene Verzeichnis auf dem Client. |
Bemerkungen
Wenn Sie einem Auftrag mehrere Dateien gleichzeitig hinzufügen möchten, rufen Sie die IBackgroundCopyJob::AddFileSet-Methode auf. Es ist effizienter, die AddFileSet-Methode aufzurufen, wenn mehrere Dateien zu einem Auftrag hinzugefügt werden, als die AddFile-Methode in einer Schleife aufzurufen. Weitere Informationen finden Sie unter Hinzufügen von Dateien zu einem Auftrag.
Rufen Sie die IBackgroundCopyJob3::AddFileWithRanges-Methode auf, um einer Aufgabe eine Datei hinzuzufügen, aus der BITS Datenbereiche aus der Datei herunterlädt.
Uploadaufträge können nur eine Datei enthalten. Wenn Sie eine zweite Datei hinzufügen, gibt die Methode BG_E_TOO_MANY_FILES zurück.
Für Downloads garantiert BITS, dass die Version einer Datei (basierend auf Dateigröße und Datum, nicht Inhalt) konsistent ist; Es garantiert jedoch nicht, dass eine Reihe von Dateien konsistent ist. Wenn BITS sich beispielsweise in der Mitte des Downloads der zweiten von zwei Dateien im Auftrag befindet, wenn die Dateien auf dem Server aktualisiert werden, startet BITS den Download der zweiten Datei neu. Die erste Datei wird jedoch nicht erneut heruntergeladen.
Beachten Sie, dass Sie, wenn Sie der Besitzer der Datei sind, die vom Server heruntergeladen wird, eine neue URL für jede neue Version der Datei erstellen. Wenn Sie dieselbe URL für neue Versionen der Datei verwenden, dienen einige Proxyserver möglicherweise veraltete Daten aus ihrem Cache, da sie nicht mit dem ursprünglichen Server überprüft werden, wenn die Datei veraltet ist.
Bei Uploads generiert BITS einen Fehler, wenn sich die lokale Datei ändert, während die Datei übertragen wird. Der Fehlercode ist BG_E_FILE_CHANGED und der Kontext BG_ERROR_CONTEXT_LOCAL_FILE.
BITS überträgt die Dateien in einem Auftrag sequenziell. Wenn beim Übertragen einer Datei ein Fehler auftritt, wechselt der Auftrag in einen Fehlerzustand, und es werden keine weiteren Dateien innerhalb des Auftrags verarbeitet, bis der Fehler behoben ist.
Standardmäßig kann ein Benutzer bis zu 200 Dateien zu einem Auftrag hinzufügen. Dieser Grenzwert gilt nicht für Administratoren oder Dienstkonten. Um den Standardwert zu ändern, legen Sie die Gruppenrichtlinien für MaxFilesPerJob fest.
Vor Windows Vista: Es gibt keine Beschränkung für die Anzahl der Dateien, die ein Benutzer einem Auftrag hinzufügen kann.
Informationen zu Skalierbarkeitsproblemen finden Sie unter "Bewährte Methoden bei der Verwendung von BITS".
Examples
Ein Beispiel zum Hinzufügen einer einzelnen Datei zu einem Auftrag finden Sie unter Hinzufügen von Dateien zu einem Auftrag.
Anforderungen
| Anforderung | Wert |
|---|---|
| Mindestens unterstützter Client | Windows XP |
| Mindestanforderungen für unterstützte Server | Windows Server 2003 |
| Zielplattform | Fenster |
| Header | bits.h |
| Library | Bits.lib |
| DLL | QmgrPrxy.dll |
Siehe auch
IBackgroundCopyJob3::AddFileWithRanges