Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Skrypt PHP w windows services
jamesb
post 23.03.2009, 22:43:25
Post #1





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 5.07.2008

Ostrzeżenie: (0%)
-----


Witam

Temat w połowie zwiazany z php a mianowicie chciałbym utworzyć usługe (services) w windowsie xp za pomocą programiku srvinstw.exe lub sc.exe. Jako plik wykonywalny byłby zwykły plik wiersza polecenien *.cmd który odpala skrypt php (php.exe -c sktypt.php...) usługa się tworzy jednak wyrzuca błąd 1053 Usługa nie odpowiada na sygnał uruchomienia lub sygnal sterujący w oczekiwanym czasie.

Plik *.cmd mam teraz wrzucony w harmonogram zadań windows i odpalam go w określonym czasie co kilka minut, wszystko działa ok skrypt php ładnie sie wykonuje. Teraz chciałbym to troszke "profesjonalniej" zrobić jako usługa windows:]
Go to the top of the page
+Quote Post
erix
post 24.03.2009, 18:58:12
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Obawiam się, że nie ma takiej możliwości. Usługa musi odpowiadać na parę sygnałów sterujących.

Cytat
Plik *.cmd mam teraz wrzucony w harmonogram zadań windows i odpalam go w określonym czasie co kilka minut, wszystko działa ok skrypt php ładnie sie wykonuje. Teraz chciałbym to troszke "profesjonalniej" zrobić jako usługa windows:]

Ale chyba proces powinien po jednokrotnym uruchomieniu pozostać w pamięci, nie trzeba chyba odpalać przez zaplanowane zadania...


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
jamesb
post 24.03.2009, 21:46:12
Post #3





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 5.07.2008

Ostrzeżenie: (0%)
-----


Znalazłem rozszerzenie php win32services http://pl.php.net/win32service
Ale nie moge tego odpalić, moze ktos sie tym bawił prosze o jakis wyprobowany przykładowy kod.
Go to the top of the page
+Quote Post
erix
post 25.03.2009, 14:36:04
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




To znaczy? Przecież masz w dokumentacji: http://pl.php.net/manual/pl/win32service.e...les-service.php


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
jamesb
post 26.03.2009, 23:56:24
Post #5





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 5.07.2008

Ostrzeżenie: (0%)
-----


Zlokalizowałem problem:] Kodzik poniżej, wystarczy dodać sciezke do pliku php.ini oraz ścieżke do php.exe jeśli jest inna (mozna spawdzić we właściowościach usługi windows).

Kod
<?php
        $x = win32_create_service(array(
            'service' => 'service',
            'display' => 'service',
            'params' => '-c "(ściezka)\php.ini" -f "(ścieżka)\script.php" run',
            'path' => '(ścieżka)\php.exe',
        ));
        debug_zval_dump($x);
    ?>




Fajnie usługa działa skrypt sie wykonuje ale tylko jeden raz. Jak tu teraz zrobić aby gdy usługa działa skrypcik (script.php) wykonywał się o określonej godzinie, co kilka minut itp. questionmark.gif


---


Pomogły funkcje sleep i usleep.
Wszystko ładnie śmiga usługa działa i wpisuje do bazy danych co kilka minut siakieś śmieszne dane;]

Pozdrawiam

Ten post edytował jamesb 27.03.2009, 09:43:58
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 24.07.2025 - 16:27