Доступ к запланированной задаче Windows с помощью C # - PullRequest
4 голосов
/ 14 июня 2009

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

Ответы [ 4 ]

4 голосов
/ 01 июня 2010

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

4 голосов
/ 14 июня 2009

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

:)

3 голосов
/ 08 октября 2011

Вы должны вызвать 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

1 голос
/ 14 июня 2009

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

...