Если это выполняется только один раз в день (или около того), то просто сделайте это как обычное приложение командной строки, которое выполняется планировщиком задач Windows.В планировщике задач уже есть весь пользовательский интерфейс, необходимый для определения момента запуска программы, передачи параметров и всего, что связано с планированием задачи.
Единственная реальная причина для выполнения этого типа функции в качествеСлужба Windows, если требуется более высокое разрешение выполнения, чем раз в минуту.Тем не менее, основным недостатком службы Windows является то, что вам придется управлять логикой того, как часто / когда она запускается.Другое - приложение всегда работает, что оставляет возможность утечки памяти, если у вашего кода есть проблемы.