tôi có một ứng dụng C# đơn giản cần chạy dưới dạng dịch vụ. làm thế nào để tôi làm cho nó chạy như một dịch vụ thay vì chỉ là một thực thi?C# - làm cách nào để ứng dụng chạy dưới dạng dịch vụ?
Trả lời
Visual C# 2010 Recipies có một ví dụ trong đó sẽ cho bạn thấy chính xác cách thực hiện việc này, mà tôi đã thử sử dụng VS 2008 và .NET 3.5.
Nó khoản sau:
- Tạo một "Windows Service" ứng dụng mới trong Visual Studio
- Cảng nguồn của ứng dụng vào mô hình thực hiện của dịch vụ, AKA chức năng chính của bạn trở thành một phần của một xử lý sự kiện kích hoạt bởi đối tượng hẹn giờ hoặc thứ gì đó dọc theo các dòng đó
Thêm lớp Trình cài đặt dịch vụ vào dự án Dịch vụ Windows của bạn - nó sẽ trông giống như đoạn mã dưới đây:
[RunInstaller(true)] public partial class PollingServiceInstaller : Installer { public PollingServiceInstaller() { //Instantiate and configure a ServiceProcessInstaller ServiceProcessInstaller PollingService = new ServiceProcessInstaller(); PollingService.Account = ServiceAccount.LocalSystem; //Instantiate and configure a ServiceInstaller ServiceInstaller PollingInstaller = new ServiceInstaller(); PollingInstaller.DisplayName = "SMMD Polling Service Beta"; PollingInstaller.ServiceName = "SMMD Polling Service Beta"; PollingInstaller.StartType = ServiceStartMode.Automatic; //Add both the service process installer and the service installer to the //Installers collection, which is inherited from the Installer base class. Installers.Add(PollingInstaller); Installers.Add(PollingService); } }
Cuối cùng bạn sẽ sử dụng một tiện ích dòng lệnh để thực sự cài đặt dịch vụ - bạn có thể đọc về cách làm việc ở đây:
Hãy cho tôi biết nếu bạn có bất cứ thắc mắc.
Có một tempate được gọi là "Dịch vụ Windows" trong studio trực quan. Nếu bạn có bất kỳ câu hỏi nào cho tôi biết, tôi viết các dịch vụ cả ngày.
cảm ơn rất nhiều jonathan tôi chắc chắn sẽ đưa bạn lên trên đó –
Có khung nguồn mở lưu trữ ứng dụng .net dưới dạng dịch vụ Windows. Không có cài đặt đau, gỡ cài đặt dịch vụ windows. Nó decouples rất tốt. Vui lòng kiểm tra bài đăng này Topshelf Windows Service Framework Post
- 1. Ứng dụng C++ OpenGL dưới dạng dịch vụ web
- 2. Lớp dịch vụ ứng dụng dưới dạng lớp tĩnh
- 3. Log4Net với WCF đang chạy dưới dạng dịch vụ
- 4. Chạy tập lệnh python dưới dạng dịch vụ cửa sổ
- 5. nút giám sát đang chạy dưới dạng dịch vụ
- 6. Chạy Java dưới dạng ứng dụng web
- 7. Cách tạo Dịch vụ nghe C# cho MSMQ dưới dạng dịch vụ Windows
- 8. Ưu điểm của việc chạy ứng dụng dưới dạng dịch vụ
- 9. Chạy lệnh dưới dạng quy trình/dịch vụ nền
- 10. chạy Tìm kiếm Đàn hồi dưới dạng dịch vụ Windows
- 11. Chạy Jetty 7 dưới dạng Dịch vụ Windows
- 12. Java đang chạy dưới dạng dịch vụ Unix
- 13. Chạy quy trình Java dưới dạng Dịch vụ trong Linux
- 14. Tôi làm cách nào để sử dụng api web dưới dạng dịch vụ web?
- 15. Làm cách nào để chạy tệp java .jar dưới dạng dịch vụ cửa sổ trên máy chủ Windows 2008?
- 16. Powershell - Tạo tác vụ theo lịch để chạy dưới dạng hệ thống/dịch vụ cục bộ
- 17. Ứng dụng .NET chạy dưới dạng Windows Form hoặc dưới dạng Ứng dụng Console
- 18. Phương pháp tốt nhất để chạy ứng dụng Java dưới dạng * nix Daemon hoặc Dịch vụ Windows?
- 19. Làm cách nào để chạy ứng dụng Windows GUI trên dịch vụ?
- 20. Làm cách nào để hiển thị EJB 3.1 dưới dạng dịch vụ web REST?
- 21. Làm cách nào để tham khảo dịch vụ đang chạy?
- 22. Cách tạo ứng dụng web .net chạy dưới dạng ứng dụng gốc trong Visual Studio
- 23. Dấu nhắc lệnh tương tác dưới dạng MẠNG DỊCH VỤ
- 24. "Chạy dưới dạng" ứng dụng android bị thiếu
- 25. Chương trình Java dưới dạng dịch vụ cửa sổ
- 26. máy chủ http node.js http dưới dạng dịch vụ Windows
- 27. Ứng dụng QtService không thể kết nối với bus hệ thống khi chạy dưới dạng dịch vụ
- 28. Làm thế nào để chạy ứng dụng C# với tín dụng quản trị?
- 29. Làm cách nào để đặt "chỉ chạy nếu đã đăng nhập" và "chạy dưới dạng" với TaskScheduler trong C#?
- 30. Làm cách nào để xác minh xem Dịch vụ Windows có đang chạy
bản sao có thể có của [tài nguyên khi tạo dịch vụ cửa sổ bằng cách sử dụng C#] (http://stackoverflow.com/questions/1688382/resources-on-creating-a-windows-service-using-c) – Joe
Ở đây tôi đã tìm thấy hướng dẫn từng bước: https://stackoverflow.com/a/593803/7713750 – Rekshino