2009-10-28 35 views
6

Tôi hiện đang làm việc trên chương trình python chạy dưới dạng dịch vụ cửa sổ bằng cách sử dụng win32service và win32serviceutil. Dịch vụ chạy như nó cần và thậm chí sau khi sử dụng py2exe, mọi thứ đều ổn (dịch vụ theo dõi các thư mục đích và các tập tin mới được tạo của FTP theo địa chỉ FTP được chỉ định). Tuy nhiên, tôi muốn thêm một số đối số dòng lệnh (ngoài việc cài đặt, xóa, bắt đầu, dừng, vv ...) để chỉ định các thư mục cục bộ và FTP. Tài liệu duy nhất về điều này là những gì tôi tìm thấy tại: http://www.py2exe.org/old/Dịch vụ Python Tùy chỉnh đối số lệnh

"Tùy chọn, bạn có thể chỉ định thuộc tính 'cmdline-style' thành py2exe, với giá trị hợp lệ là 'py2exe' (mặc định), 'pywin32' hoặc ' tùy chỉnh '.' py2exe 'chỉ định dòng lệnh truyền thống luôn được py2exe hỗ trợ.' pywin32 'hỗ trợ các đối số dòng lệnh giống như pywin32 hỗ trợ (nghĩa là các đối số tương tự được hỗ trợ khi chạy dịch vụ từ tệp .py.)' tùy chỉnh 'có nghĩa là mô-đun của bạn được mong đợi cung cấp chức năng' HandleCommandLine 'chịu trách nhiệm cho tất cả xử lý dòng lệnh. "

Bất kỳ trợ giúp nào sẽ được đánh giá cao trong việc chỉ đúng hướng. Vui lòng cho tôi biết nếu có mã nào cần thiết để làm rõ.

Cảm ơn, Zach

Trả lời

3

here là một ví dụ tốt đẹp như thế nào để thực hiện một dịch vụ với một phong tục HandleCommandLine classmethod - nó là một phần của Pyro nhưng không có người phụ thuộc vào Pyro, chứ không phải đó là một tiện ích "lớp cơ sở trừu tượng" mà bạn có thể phân lớp và nhận được một dịch vụ đi với tối thiểu fuss bởi chỉ cần thiết lập một vài điều trong phân lớp của bạn. Đối với các nhu cầu cụ thể của bạn, bạn có thể sử dụng nó như là một mẫu để sao chép và chỉnh sửa để có được xử lý dòng lệnh mà bạn muốn!

+0

Đây có thể chỉ là những gì tôi cần, tôi sẽ đăng lại sau khi tôi áp dụng mã vào mã của mình. –

+0

Đây là một sửa chữa thú vị. Về cơ bản, lớp cơ sở trừu tượng, BasicNTService, nhận các tham số dịch vụ như bình thường (cài đặt, xóa, cập nhật, v.v ...). Sau đó, có một dấu nhắc mới tại dòng lệnh cho các tham số bổ sung được lưu trữ và truy xuất thông qua sổ đăng ký. –

Các vấn đề liên quan