Я использую C# и Microsoft.Win32.TaskScheduler.dll для создания динамических запланированных задач. Нет проблем установить дату для определенной запланированной даты месяца:
TaskService ts = new TaskService();
TaskDefinition tsDef = ts.NewTask();
(...)
DateTime scheduleDateTime = new DateTime(2024, 12, 31, 23, 59, 0);
m_Logger.SendMessage("Trigger Monthly...");
MonthlyTrigger objMonthlyTrigger = new MonthlyTrigger();
objMonthlyTrigger.DaysOfMonth = new int[] { scheduleDateTime.Day };
objMonthlyTrigger.StartBoundary = scheduleDateTime;
objMonthlyTrigger.EndBoundary = DateTime.MaxValue;
tsDef.Triggers.Add(objMonthlyTrigger);
Мой вопрос заключается в использовании настройки триггера «по расписанию ежемесячно» для примеров:
Как мне это сделать ? Заранее спасибо за вашу помощь
Вам нужен MonthlyDOWTrigger
. Собственный объект документирован здесь , а оболочка .NET — здесь.
MonthlyDOWTrigger objMonthlyTrigger = new(DaysOfTheWeek.Sunday | DaysOfTheWeek.Saturday, weeksOfMonth: WhichWeek.SecondWeek | WhichWeek.ThirdWeek)
{
StartBoundary = scheduleDateTime,
EndBoundary = DateTime.MaxValue,
};
tsDef.Triggers.Add(objMonthlyTrigger);
Работает ! Большое спасибо.