Как проверить триггер задачи в планировщике задач с помощью С++?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Как проверить триггер задачи в планировщике задач с помощью С++?

Сообщение Anonymous »

Я хочу проверить триггеры задач в планировщике задач с помощью C++.
Я хочу использовать функцию *HRESULT get_Type(TASK_TRIGGER_TYPE2 pType);
, чтобы проверить, инициируется ли задача входом в систему или загрузкой.

Код: Выделить всё

TASK_STATE taskState;

for (LONG i = 0; i < numTasks; i++)
{
IRegisteredTask* pRegisteredTask = NULL;
hr = pTaskCollection->get_Item(_variant_t(i + 1), &pRegisteredTask);

if (SUCCEEDED(hr))
{
BSTR taskName = NULL;
TASK_TRIGGER_TYPE2 *pType = NULL;
hr = pRegisteredTask->get_Name(&taskName);
if (SUCCEEDED(hr))
{
printf("\nTask Name: %S", taskName);
SysFreeString(taskName);
hr = pRegisteredTask->get_Type(*pType);   //Implemented here
if (SUCCEEDED(hr))
printf("\n%s",&pType);
else
printf("\n\tCannot get the registered task state: %x", hr);
}

hr = pRegisteredTask->get_State(&taskState);
if (SUCCEEDED(hr))
printf("\n\tState: %d", taskState);
else
printf("\n\tCannot get the registered task state: %x", hr);
}
else
{
printf("\nCannot get the registered task name: %x", hr);
}
pRegisteredTask->Release();
}
else
{
printf("\nCannot get the registered task item at index=%d: %x", i + 1, hr);
}
}
При компиляции выдается ошибка: «IRegisteredTask не имеет члена get_Type()»
Затем я изменил код и добавил

Код: Выделить всё

 ITrigger *trig = NULL;
trig->get_Type(&pType);
Но это тоже не дает мне никакой ценности.

Подробнее здесь: https://stackoverflow.com/questions/545 ... er-using-c
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»