J'ai un exécutable qui doit être exécuté sur un lecteur E:/, Windows Server 2012 est installé sur le lecteur C:/. J'ai créé une tâche planifiée qui contient le chemin d'accès complet à l'exécutable cible (E:/stuff/target.exe), et dont le répertoire de travail est défini (E:/stuff/).
Cela échoue, le planificateur de tâches me dit que le nom du répertoire n'est pas valide. Si je supprime le répertoire de travail, il me dit que l'accès est refusé. Ce n'est pas possible, le disque entier est à la fois partagé et a des autorisations de fichiers définies sur "tout le monde" avec un contrôle total. Le compte qui exécute la tâche peut certainement l'exécuter (je peux le faire via cmd.exe). Sidenote : J'ai essayé toutes les permutations du chemin, en utilisant des barres obliques inverses, des barres obliques avant, des guillemets ou non. Ce n'est pas dû à KB2452723 .
J'ai essayé d'avoir un fichier batch qui utilise "CD" pour définir le répertoire de travail à E:/stuff/, puis d'appeler le programme, qui fonctionne lorsque je l'exécute. Malheureusement, lorsqu'il est exécuté par le planificateur de tâches, il ne change jamais le répertoire de travail et essaie d'appeler target.exe depuis le lecteur système (où il n'existe pas).
J'ai également essayé de créer un lien symbolique ("mklink /D") de C:/temp/ vers E:/stuff/, dans le vain espoir de tromper le planificateur de tâches, mais il ne suit pas le lien et me dit que le répertoire n'a pas été trouvé.
Je n'arrive pas à comprendre pourquoi le planificateur de tâches s'y oppose tant, ni quelle serait la pratique correcte pour que cela fonctionne. Quelqu'un a-t-il réussi à exécuter un fichier sur un lecteur non système avec le planificateur de tâches ?