Bonjour,
Après une multitude d'essais, je me suis rabattu sur la solution d'Orax en modifiant les chemins et le userid comme ceci: <UserId>SYSTEM</UserId>. A priori, cela devrait passer partout.
Un petit coup de Run(@SystemDir & '\schtasks /Create /TN "PurgeONEVENTxml" /XML "C:\Users\Pc\Desktop\purgeWindows-Winlogon_7002.xml"', @SystemDir, @SW_HIDE) et l'affaire est dans le sac.
Et cette solution rejoint mon souhait et la proposition de jguinch puisqu'elle agit en début et fin de session.
J'aurais préféré cette solution
Code : Tout sélectionner
Run(@SystemDir & '\schtasks.exe /create /tn "PurgeONEVENT" /tr "C:\purge\purge.exe ""c:\temp""" /sc ONEVENT /EC System /MO "*[System[Provider[@Name=''Microsoft-Windows-Winlogon''] and (EventID=7002)]]" /F', @SystemDir, @SW_HIDE)
mais la tache échoue. L’échec doit être du au fait que la case "exécuter même si l'utilisateur n'est pas connecté" n'est pas coché et impossible de savoir le faire en command line. Si quelqu'un a la solution, je prends !
Il me reste plus qu'à modifier mon programme "Delete" pour envoyer fichiers et dossiers dans le Temp
Merci à Orax et jguinch pour leur aide