Доступ к запланированной задаче Windows с помощью C#

Как изменить учетные данные, используемые запланированной задачей, с помощью C#.NET?


person Community    schedule 14.06.2009    source источник


Ответы (4)


Кто-то написал библиотеку классов планировщика задач на codeproject.com, это может быть что ты после...

:)

person Community    schedule 14.06.2009

Вместо использования кода вы можете сделать это с помощью команды «SCHTASKS», запустить ее с помощью метода System.Diagnostic.Process.Start с требуемыми параметрами. Это легко и не требует особых усилий.

person Durgesh Gupta    schedule 01.06.2010

Вы должны вызвать RegisterTaskDefintion для определения задачи с новым именем пользователя и паролем, чтобы изменить только пароль.

Фрагмент кода

// Add COM-Reference to "TaskScheduler 1.1 Type Library" to the project
using TaskScheduler;

// code in function X

TaskSchedulerClass TaskClass = new TaskSchedulerClass();
TaskClass.Connect();

// access one task (or search for it or enumerate over all tasks)
IRegisteredTask lTask = null;
lTask = TaskClass.GetFolder("\\").GetTasks(0)[0];

// provide domain\\username and password (ask user for it, use encryption)
string lUsername = "TestDomain\\TestUsername"; // TestDomain can be the hostname for a local user
string lPassword = "xyzPassword";

RegisterTaskDefinition(lTask.Path, lTask.Definition, (int)_TASK_CREATION.TASK_UPDATE, lUsername, lPassword, lTask.Definition.Principal.LogonType, Type.Missing);

Исходный источник ответа: http://taskscheduler.codeplex.com/discussions/215362

person grosser lacher    schedule 08.10.2011

Ознакомьтесь с этой библиотекой для работы с TaskSheduler. Он написан на VB, но я легко сослался на него и вызвал его из C#.

person Martin Konicek    schedule 14.06.2009