Как запустить сценарий Perl в фоновом режиме в Windows? - PullRequest
2 голосов
/ 02 февраля 2009

У меня есть Perl-скрипт, который выскакивает окно сообщения, когда его работа завершена. Как я могу запустить это в фоновом режиме?

Я посмотрел на Proc :: Background , но для этого требуется запустить определенную команду. Я хотел бы, чтобы мой код выполнялся в фоновом режиме, не вызывая новый процесс, если это возможно.

Ответы [ 4 ]

8 голосов
/ 02 февраля 2009

Один из способов - запустить программу с wperl, версией Windows GUI, вместо perl.

2 голосов
/ 03 февраля 2009

Рассмотрите возможность его запуска в качестве службы. Здесь есть скрипт Perl здесь который фактически установит это для вас.

Кроме того, вы также можете попробовать ExeService , программу, которая позволяет запускать исполняемые файлы, сценарии и команды в качестве служб Windows.

Для получения дополнительной информации о том, что такое служба Windows, см. Служба Windows (Википедия).

0 голосов
/ 10 января 2012
use Win32::GUI; 
BEGIN {
    Win32::GUI::Hide(scalar(Win32::GUI::GetPerlWindow()))
};

Это заставит ваш скрипт работать в фоновом режиме

0 голосов
/ 03 февраля 2009

Если у вас есть Perl 5.x, используйте fork. Fork - это встроенное ключевое слово, которое поддерживается на всех платформах.

Вот пример кода:

Re: Perl Фоновые процессы в Windows

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