Создайте программу, которая будет запущена запланированной задачей и не должна показывать окно - PullRequest
2 голосов
/ 14 июля 2011

У меня небольшое приложение на c #, которое выполняет некоторую синхронизацию между двумя библиотеками.

Это должно выполняться регулярно, и было выбрано использование по расписанию.

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

Есть ли способ (в планировщике или в приложении), чтобы при запуске программы не было видно никаких окон?

Моя библиотека синхронизации может поставить то, что я хочу.

(что, если вместо использования консольного приложения я создаю приложение для Windows без каких-либо окон и код запускается в app.xaml.cs? Это хорошая идея? У меня такое впечатление, что это не так правильный способ сделать это).

Спасибо!

Ответы [ 3 ]

3 голосов
/ 14 июля 2011

В окне Свойства проекта измените тип вывода с Консольного приложения на Приложение Windows. Ваше приложение все еще будет работать, но у него не будет окна вообще. Вы могли бы также рассмотреть возможность создания службы Windows вместо.

3 голосов
/ 14 июля 2011

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

1 голос
/ 14 июля 2011

Да, использование приложения для Windows без окон - это путь.Вы даже можете показать значок в трее в приложении без окон, если это может быть полезно.

...