Làm cách nào để giữ một tác vụ theo lịch trình chạy ngay cả khi không có người dùng nào đăng nhập (Windows XP)?


0

Tôi đã viết một chương trình ghi nhiệt độ và nhập nó dưới dạng một tác vụ theo lịch trình trong Windows XP.

Cho đến nay, tôi đã có thể đạt được mục tiêu này:
1. Nhận tác vụ để chạy ngay cả trước khi bất kỳ ai đăng nhập (tức là tại màn hình "Nhấn Ctrl-Alt-Del")

Nhưng tôi có vấn đề với những điều này:
1. Khi tôi đăng nhập, đăng xuất, sau đó đăng nhập lại, tác vụ theo lịch trình không còn hoạt động. Tôi không còn thấy nó trong tab Processes's Processes. Tôi nghi ngờ nó đóng cửa khi tôi đăng xuất.
2. Tôi đã cố gắng đặt thuộc tính "Chạy dưới dạng ..." của tác vụ thành DOMAIN\my-username và cũng đã thử SYSTEM, nhưng vấn đề # 1 ở trên vẫn còn tồn tại.

TÓM LƯỢC:
Tôi muốn chương trình của tôi chạy miễn là Windows hoạt động.

CHỈNH SỬA 1:
Chương trình của tôi thực sự là một kịch bản Python. Vì vậy, dòng lệnh của nó trong Tác vụ theo lịch là:

C:\Python26\pythonw.exe "C:\path\to\templogger.py"

Nó ghi dữ liệu vào một tệp trong thư mục công cộng cục bộ (ví dụ: tất cả những người đăng nhập cục bộ đều có thể truy cập được).

Câu trả lời:


3

Cách tiếp cận tốt nhất cho việc này là chạy nó như một dịch vụ. Bạn có thể có thể thoát khỏi nó chỉ bằng cách sử dụng Sc.exe .


Để thêm vào điều này: có, tôi sẽ viết nó như một dịch vụ, nhưng tôi vẫn sẽ sử dụng các tác vụ theo lịch trình để đơn giản kiểm soát việc bắt đầu hoặc dừng dịch vụ.
Joel Coehoorn

Tôi có thể tránh viết nó như một dịch vụ không? Tôi không biết gì về việc viết chương trình như các dịch vụ Windows. Chương trình của tôi là một kịch bản Python. Xem CHỈNH SỬA 1 ở trên.
Kit

Nó khá dễ làm. Trước tiên, bạn cần srvany.exe đi kèm với bộ tài nguyên windows. Thứ hai, hoặc sử dụng phần mềm miễn phí hoặc dòng lệnh để tạo dịch vụ. Sau đó thêm vào sổ đăng ký cho dịch vụ đó. Ive đã phải làm điều này để chạy tai nghe kịch bản python, illbeard hoặc ouchpotato như các dịch vụ windows.
crosenblum

NSSM ( nssm.cc ) tốt hơn srvany.exe. Tôi đã từng sử dụng nó để chạy một kịch bản python như một dịch vụ không có vấn đề gì, chỉ cần đảm bảo rằng các đường dẫn của bạn là chính xác.
LawrenceC

3

Bạn đã thử cho người dùng quyền "đăng nhập như một công việc hàng loạt" và quyền "đăng nhập như một dịch vụ" chưa?


ntrights.exe từ bộ tài nguyên có thể cung cấp cho tài khoản đặc quyền này nếu tôi không nhầm.
LawrenceC

1
Thay vì đặt câu này như một câu hỏi, bạn nên diễn đạt nó nhiều hơn như một câu trả lời;)
James Mertz
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.