Làm cách nào để hiển thị biểu tượng khay hệ thống cho dịch vụ C# window.?Làm cách nào để hiển thị biểu tượng khay hệ thống cho dịch vụ C# window.?
Trả lời
Dịch vụ chạy trong một cửa sổ khác với người dùng đã đăng nhập, do đó bạn không thể có biểu tượng khay hệ thống cho họ. Từ https://docs.microsoft.com/en-us/dotnet/framework/windows-services/introduction-to-windows-service-applications:
Ứng dụng Windows Service chạy trong một cửa sổ khác với trạm tương tác của người dùng đã đăng nhập. Một cửa sổ là một đối tượng an toàn có chứa một Clipboard, một tập hợp các nguyên tử toàn cầu và một nhóm các đối tượng máy tính để bàn. Vì trạm của dịch vụ Windows không phải là một trạm tương tác, các hộp thoại được nâng lên từ bên trong ứng dụng dịch vụ Windows sẽ không được nhìn thấy và có thể khiến chương trình của bạn ngừng phản hồi. Tương tự, các thông báo lỗi phải được ghi vào nhật ký sự kiện Windows thay vì được nâng lên trong giao diện người dùng.
Các lớp dịch vụ Windows được NET Framework hỗ trợ không hỗ trợ tương tác với các trạm tương tác, tức là người dùng đã đăng nhập. .NET Framework cũng không bao gồm các lớp đại diện cho các trạm và máy tính để bàn. Nếu dịch vụ Windows của bạn phải tương tác với các trạm khác, bạn sẽ cần phải truy cập vào Windows API không được quản lý. Để biết thêm thông tin, hãy xem tài liệu Windows SDK.
Tương tác của dịch vụ Windows với người dùng hoặc các trạm khác phải được thiết kế cẩn thận để bao gồm các tình huống như không có người dùng đăng nhập hoặc người dùng có bộ đối tượng máy tính để bàn không mong muốn. Trong một số trường hợp, có thể thích hợp hơn khi viết một ứng dụng Windows chạy dưới sự kiểm soát của người dùng.
Dưới đây là một số liên kết về cách ghi vào khay hệ thống. Bạn sẽ cần một ứng dụng khác để giao tiếp với dịch vụ, vì dịch vụ không thể trực tiếp có biểu tượng trong khay hệ thống.
How can I make a .NET Windows Forms application that only runs in the System Tray?
và
http://msdotnetsupport.blogspot.com/2008/02/cnet-application-windows-system-tray.html
Bạn không thể, không trực tiếp, vì dịch vụ cửa sổ sẽ nhất thiết bắt đầu khi máy hoạt động, không phải khi người dùng đăng nhập. Dịch vụ cũng sẽ chạy trong ngữ cảnh khác, có thể là người dùng khác.
Điều bạn có thể làm là viết một "bộ điều khiển" dựa trên khay hệ thống riêng biệt tương tác với dịch vụ.
- 1. Tôi làm cách nào để Dịch vụ Windows hiển thị trong khay hệ thống?
- 2. Biểu tượng khay hệ thống trong C++
- 3. Làm mới biểu tượng khay hệ thống theo chương trình
- 4. Làm cách nào để hiển thị ứng dụng Windows Forms .NET dưới dạng biểu tượng khay?
- 5. Làm cách nào để yêu cầu Windows kích thước biểu tượng khay hệ thống?
- 6. Làm thế nào để hiển thị văn bản trong biểu tượng khay hệ thống với API win32?
- 7. Biểu tượng Khay hệ thống Java trên MacOS 10.7.4 không hiển thị hình động gif
- 8. Mở cửa sổ từ biểu tượng Khay hệ thống
- 9. Làm thế nào để hiển thị biểu tượng hệ thống cho một tệp trong SWT?
- 10. Làm thế nào để thêm ContextMenu vào biểu tượng khay hệ thống theo lập trình?
- 11. Java.awt.SystemTray không hiển thị biểu tượng trên khay đúng
- 12. Đặt biểu tượng khay để luôn hiển thị
- 13. Hệ thống biểu tượng trên khay trong ứng dụng Node.js
- 14. Tạo cá thể đơn cho khay hệ thống trong java
- 15. Làm cách nào để tạo biểu tượng Khay bằng FireMonkey?
- 16. Làm cách nào để biết liệu đầu bóng trên khay hệ thống đã đóng chưa?
- 17. Kích thước biểu tượng tốt nhất để hiển thị trong khay
- 18. Biểu tượng khay hệ thống bị thiếu trên Fedora 19 Desktop Edition
- 19. C# Làm thế nào để thay thế đồng hồ khay hệ thống
- 20. Làm thế nào để tạo một thanh menu (khay hệ thống) cho OSX bằng Python?
- 21. Khay Biểu tượng hoạt ảnh
- 22. Cách tự động nhấp chuột phải vào biểu tượng trong khay hệ thống bằng cách sử dụng C#
- 23. C# Nhận văn bản tắt notificationIcons (biểu tượng khay)
- 24. C# Thu nhỏ khay hệ thống ở gần
- 25. Windows chọn biểu tượng sai từ tệp nhiều biểu tượng và tự hiển thị để sửa kích thước
- 26. Cách ẩn JFrame trong khay hệ thống của thanh tác vụ
- 27. Khay hệ thống Ubuntu bằng Python
- 28. Chỉ ứng dụng Khay hệ thống (không có biểu tượng đế) sử dụng C#/Mono trên Mac
- 29. JNDI Nhà cung cấp dịch vụ cho hệ thống tệp
- 30. Nhấp chuột duy nhất để mở menu cho biểu tượng khay trong C#