Een taak voltooien en annuleren
Als u een overdrachtstaak wilt voltooien, roept u de methode IBackgroundCopyJob::Complete aan. Voor downloadtaken kunt u de methode Voltooien aanroepen voordat alle bestanden in de taak zijn overgedragen (voordat de status van de taak wordt BG_JOB_STATE_TRANSFERRED). Alleen de bestanden die BITS naar de client hebben overgebracht voordat u de methode Complete hebt aangeroepen, zijn beschikbaar voor de gebruiker.
Voor uploadtaken roept u de methode Complete alleen aan als de status van de taak is BG_JOB_STATE_TRANSFERRED. Als u wilt bepalen wanneer de status van de taak BG_JOB_STATE_TRANSFERRED is, poll de statuseigenschap van de taak of registreer om de BG_NOTIFY_JOB_TRANSFERRED gebeurtenismelding te ontvangen.
Als u een overdrachtstaak wilt annuleren, roept u de methode IBackgroundCopyJob::Cancel aan. De methode Cancel verwijdert de taak uit de overdrachtswachtrij en verwijdert de tijdelijke bestanden van de client. Normaal gesproken roept u deze methode aan als u een fout die aan de taak is gekoppeld, niet kunt oplossen.
De methode Cancel annuleert een upload als het uploaden niet is voltooid. Als het uploaden is voltooid en de taak van het type BG_JOB_TYPE_UPLOAD_REPLY is, annuleert de methode het antwoord.
Als u de methode Complete of de IBackgroundCopyJob::Cancel methode niet binnen 90 dagen aanroept (standaard JobInactivityTimeout Groepsbeleid), annuleert de service de taak. Als de service de taak annuleert, zijn de gedownloade bestanden en het antwoordbestand niet beschikbaar voor de client; taakannulering heeft geen invloed op bestanden die zijn geĆ¼pload. Roep altijd de methode Complete of Cancel aan en vertrouw niet op het JobInactivityTimeout-beleid om uw taken op te schonen. Taken die in de wachtrij blijven staan, kunnen ervoor zorgen dat gebruikers geen andere taken kunnen maken als de beleidslimiet MaxJobsPerUser of MaxJobsPerMachine is bereikt.