2012-12-19 14 views
6

Próbuję uruchomić aplikację python jako usługę systemu Windows. Kod, który instaluję i uruchamiam, ale mam problemy z importowaniem modułów i klas, które są częścią aplikacji.Python, usługa Windows Błąd importowania

Uwaga: Biblioteki w języku Python są uwzględniane w porządku.

Sprawdziłem ścieżkę pythona i wszystkie poprawne wartości są tam (włączając katalog aplikacji), co prowadzi mnie do przekonania, że ​​usługa Windows może działać w innej lokalizacji.

Czy aplikacja pytona działająca jako usługa systemu Windows jest uruchamiana z innej lokalizacji w systemie Windows?

+0

Kiedy mówisz „uruchomić z inna lokalizacja "masz na myśli bieżący katalog roboczy procesu? –

+0

Działa jako inny użytkownik, zwykle użytkownik systemu. więc jeśli masz jakieś specyficzne dla użytkownika zmienne środowiskowe, na których jesteś zależny (wskazówka: '% PATH%'), to może to być problem. – zenpoy

+0

@NathanHoad tak przepraszam, inna lokalizacja z bieżącego katalogu roboczego –

Odpowiedz

2

Tworzenie usługi Pythona przy użyciu win32service utworzyło domyślnie plik pythonservice.exe w C:\Python27\Lib\site-packages\win32.

można wykonać os.chdir(yourdir) w kodzie tuż przed tworzeniem usług,

najlepszym rozwiązaniem byłoby wykorzystanie ścieżek absolutnych i ustawienie właściwego sys.path w swoim skrypcie pliki dostępu