Comme mentionné ci-dessus, une tâche planifiée est ce que vous recherchez. Pour exécuter un script en tant que service, lisez ceci:
Q4. Comment puis-je exécuter mon script en tant que service? C'est aussi une question à réponses multiples, et aucune d'entre elles n'est la seule façon de le faire. La première question à vous poser est de savoir si vous souhaitez ou non installer le service sur d'autres ordinateurs que le vôtre.
A1. If you only wish to install the service on your own computer, The easiest way to do this is to use Pirmasoft RunAsSvc. This program makes services easy to install and easy to remove when necessary.
A2. If you wish to make the service available to anyone running your script, you can use SRVANY.EXE and ServiceControl.au3. You can then use this code to install your script as a service:
#include "ServiceControl.au3"
$servicename = "MyServiceName"
_CreateService("", $servicename, "My AutoIt Script", "C:\Path_to_srvany.exe", "LocalSystem", "", 0x110)
RegWrite("HKLM\SYSTEM\CurrentControlSet\Services\" & $servicename & "\Parameters", "Application", "REG_SZ", @ScriptFullPath)
or use the following code to delete this service:
#include "ServiceControl.au3"
$servicename = "MyServiceName"
_DeleteService("", $servicename)
Il y a une mise en garde à la mise en place AutoIt en tant que service. Si le service n'est pas installé à l'aide du code ci-dessus, il doit avoir le paramètre «autoriser le service à interagir avec le bureau», sinon les fonctions d'automatisation telles que les fonctions Control * ou Win * ne fonctionneront pas. Pour assurer le service ne dispose en effet ce paramètre, utilisez le code suivant: RegWrite ("HKLM \ SYSTEM \ CurrentControlSet \ Services [NomService]", "Type", "REG_DWORD", 0x110)
Pris du Sujet de la FAQ sur les forums AutoIt. www.autoitscript.com/forum/index.php?showtopic=37289)