Можем ли мы использовать таймер для себя? - PullRequest
0 голосов
/ 25 января 2010

На самом деле это то, что я хочу сделать;

Когда появляется условие, моя программа закрывается и через пять минут снова открывается.

Возможно ли использовать только один .exe, используя любое свойство ОС -?

Я делаю это с двумя .exe

if (close_condition){
     //call secondary program
     system ("secondary.exe");
     return (0);
}

и моя вторичная программа просто ждет пять минут и вызывает основную.

main (){
     Sleep (300000)//sleep for five minutes;
     system ("primary.exe");
     return (0);
}

Я хочу сделать это без дополнительной программы.

(простите за плохой английский)

Ответы [ 2 ]

3 голосов
/ 25 января 2010

Вы можете сделать это с одним приложением, которое просто имеет другое поведение, если задано переключение (скажем, myapp.exe /startme).

Кстати,

system() - это синхронный вызов, который возвращается только после завершения выполнения команды. В win32 CreateProcess () - это то, что вы ищете.

Вы также можете просто следовать предложению Джейса о том, чтобы позволить ОС планировать вашу работу, используя NetScheduleJobAdd () .

Но, в зависимости от того, чего вы пытаетесь достичь, лучшим решением может быть просто скрыть ваше приложение на 5 минут.

1 голос
/ 25 января 2010

Я думаю, что вам нужно использовать планировщик системных задач для планирования перезапуска, который в некотором смысле использует другое приложение, которое является частью ОС.

Я уверен, что это можно сделать, но, честно говоря, я думаю, что вы должны просто придерживаться текущей настройки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...