Abschließen und Abbrechen eines Auftrags
Um einen Übertragungsauftrag abzuschließen, rufen Sie die IBackgroundCopyJob::Complete-Methode auf. Für Downloadaufträge können Sie die Complete-Methode aufrufen, bevor alle Dateien im Auftrag übertragen wurden (bevor der Status des Auftrags BG _ JOB STATE _ _ TRANSFERD lautet). Nur die Dateien, die BITS erfolgreich an den Client übertragen hat, bevor Sie die Complete-Methode aufgerufen haben, sind für den Benutzer verfügbar.
Rufen Sie bei Uploadaufträgen nur dann die Complete-Methode auf, wenn der Status des Auftrags BG _ JOB STATE _ _ TRANSFERD lautet. Um zu bestimmen, wann der Status des Auftrags BG _ JOB _ STATE TRANSFERD lautet, können Sie die _ Zustandseigenschaft des Auftrags abfragen oder registrieren, um die Ereignisbenachrichtigung BG NOTIFY JOB TRANSFERD zu _ _ _ erhalten.
Um einen Übertragungsauftrag abzubrechen, rufen Sie die IBackgroundCopyJob::Cancel-Methode auf. Die Cancel-Methode entfernt den Auftrag aus der Übertragungswarteschlange und die temporären Dateien vom Client. In der Regel rufen Sie diese Methode auf, wenn Sie einen Fehler im Zusammenhang mit dem Auftrag nicht beheben können.
Die Cancel-Methode bricht einen Upload ab, wenn der Upload nicht abgeschlossen ist. Wenn der Upload abgeschlossen ist und der Auftrag vom Typ BG _ JOB TYPE UPLOAD REPLY _ _ _ ist, bricht die Methode die Antwort ab.
Wenn Sie die Complete-Methode oder die IBackgroundCopyJob::Cancel-Methode nicht innerhalb von 90 Tagen aufrufen (StandardauftragInactivityTimeout Gruppenrichtlinie), bricht der Dienst den Auftrag ab. Wenn der Dienst den Auftrag abbricht, sind die heruntergeladenen Dateien und die Antwortdatei für den Client nicht verfügbar. Der Auftragsabbruch wirkt sich nicht auf Dateien aus, die erfolgreich hochgeladen wurden. Sie sollten immer die Complete- oder Cancel-Methode aufrufen und sich nicht auf die JobInactivityTimeout-Richtlinie verlassen, um Ihre Aufträge zu bereinigen. Aufträge, die in der Warteschlange übrig bleiben, verhindern möglicherweise, dass Benutzer andere Aufträge erstellen, wenn das Richtlinienlimit für MaxJobsPerUser oder MaxJobsPerMachine erreicht ist.