Planificateur de tâches Windows Server 2016: Erreur de retour des tâches 0xC0000142

J'ai un problème étrange avec le planificateur de tâches sous Windows Server 2016.

Je crée une tâche qui se déclenche quotidiennement à 3h du matin. Ces tâches ne démarrent qu'un simple fichier batch qui supprime certains fichiers sur un lecteur local. Donc rien de spécial.

Le résultat de l'exécution de cette tâche est 0xC0000142. Peu importe si je démarre cette tâche manuellement ou si elle démarre par Windows à 3 heures du matin.

Mais si je redémarre l'ensemble du serveur et démarre la tâche manuellement, cela fonctionne. Le résultat est 0x0. J'essaie d'activer la "section Windows SharedSection" via le registre et de redémarrer, mais rien ne se passe. Le lendemain matin, j'obtiens le résultat 0xC0000142.

Ma tâche en XML:

<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.4" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
  <RegistrationInfo>
    <Date>2018-11-29T11:46:43.174076</Date>
    <Author>ECB189BAdministrator</Author>
    <URI>Delete temp</URI>
  </RegistrationInfo>
  <Triggers>
    <CalendarTrigger>
      <StartBoundary>2018-11-29T03:00:00</StartBoundary>
      <Enabled>true</Enabled>
      <ScheduleByDay>
        <DaysInterval>1</DaysInterval>
      </ScheduleByDay>
    </CalendarTrigger>
  </Triggers>
  <Principals>
    <Principal id="Author">
      <UserId>S-1-5-21-3460449123-1791338768-3707012617-500</UserId>
      <LogonType>S4U</LogonType>
      <RunLevel>HighestAvailable</RunLevel>
    </Principal>
  </Principals>
  <Settings>
    <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
    <DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries>
    <StopIfGoingOnBatteries>true</StopIfGoingOnBatteries>
    <AllowHardTerminate>true</AllowHardTerminate>
    <StartWhenAvailable>false</StartWhenAvailable>
    <RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable>
    <IdleSettings>
      <StopOnIdleEnd>true</StopOnIdleEnd>
      <RestartOnIdle>false</RestartOnIdle>
    </IdleSettings>
    <AllowStartOnDemand>true</AllowStartOnDemand>
    <Enabled>true</Enabled>
    <Hidden>false</Hidden>
    <RunOnlyIfIdle>false</RunOnlyIfIdle>
    <DisallowStartOnRemoteAppSession>false</DisallowStartOnRemoteAppSession>
    <UseUnifiedSchedulingEngine>true</UseUnifiedSchedulingEngine>
    <WakeToRun>false</WakeToRun>
    <ExecutionTimeLimit>PT0S</ExecutionTimeLimit>
    <Priority>7</Priority>
  </Settings>
  <Actions Context="Author">
    <Exec>
      <Command>C:mybatch.bat</Command>
    </Exec>
  </Actions>
</Task>

Mon lot:

@ECHO OFF
del /Q /S C:temp*.*

Ce problème n'affecte qu'un seul serveur. Tous les autres serveurs avec la même tâche n'ont pas ce problème.


/ MODIFIER
Ok, j'essaie quelque chose. Je change D'EXÉCUTION SI L'UTILISATEUR EST CONNECTÉ OU NON pour S'EXÉCUTER UNIQUEMENT LORSQUE L'UTILISATEUR EST CONNECTÉ. Ça marche. Je n'ai pas plus de messages d'erreur lors de l'exécution de cette tâche à 3 heures du matin, mais ce n'est pas la solution. Pourquoi le mode EXÉCUTER SI L'UTILISATEUR EST CONNECTÉ OU NON ne fonctionne pas? J'essaie l'administrateur et l'utilisateur SYSTÈME.

demandé sur