TaskScheduler
The TaskScheduler UDF offers functions to control and manipulate the Windows Task Scheduler.
Functions
_TS_Open
Connects to the Task Scheduler Service and additionally allows to control and manipulate the Task Scheduler on another computer.
You must ensure the following before you begin (more details can be found here):
- Your computer and the remote computer must be part of a domain or a Workgroup
- You must know the IP Address of the remote computer
- You must have the login credentials for the remote computer and the login credential must be part of the Administrators group on the remote computer
- You may want to ensure that your Firewall allows “Remote Scheduled Tasks Management”
Examples how to connect to another computer (thanks to AdamUL for testing):
; Connect to a computer in AD where the current user is in a the local Admininstrators group
; on that computer, via domain or local group, or directly. Use AD computer name.
Global $oService = _TS_Open("COMPUTERNAME")
; Connect to a computer in AD where the entered user (AdminUser) is an AD user, and is in the
; local Administrators group on that computer, via domain or local group, or directly. Use AD computer name.
Global $oService = _TS_Open("COMPUTERNAME", "AdminUser", "AD", "Password")
; Connect to a computer in AD where the entered local user (Administrator) is NOT an AD user,
; and is in the local Administrators group on that computer, via local group, or directly. Use AD computer name.
Global $oService = _TS_Open("COMPUTERNAME", "Administrator", ".", "Password")
; Non-domain computer where the entered local user (Administrator) is in the local Administrators group
; on that computer. Use IP address or DNS name to connect.
Global $oService = _TS_Open("192.168.0.1", "Administrator", ".", "Password")
Debugging connection problems
At the end of this github page you will find a tool named "Task Scheduler Configuration Troubleshooter". It analyzes possible connection problems and tells you what to do or even tries to solve the problem.