2010-07-18 34 views
6

Tôi đang cố tạo dịch vụ cửa sổ bằng C# trong .net chạy trước khi người dùng đăng nhập ... khi người dùng đăng nhập vào biểu tượng sẽ xuất hiện trong khay hệ thống (bên cạnh đồng hồ) để hiển thị cho người dùng rằng dịch vụ đang chạy .. bằng cách nhấp đúp biểu tượng tiện ích cấu hình (được viết bằng wpf) sẽ được hiển thị cho người dùng, vì vậy anh có thể định cấu hình dịch vụ, đọc dữ liệu từ đó và như vậy ..Dịch vụ Windows với công cụ quản lý WPF

có khả năng thực hiện việc này trong một ứng dụng không?

cảm ơn trước vì đã trợ giúp !!!

Trả lời

4

Không, bạn không thể thực hiện việc này với một ứng dụng khi các dịch vụ chạy với người dùng khác trong một phiên khác. Bạn cần phải tạo hai ứng dụng và thực hiện một số giao tiếp giữa cả hai.

Tôi không khuyên bạn nên sử dụng các đường ống được đặt tên trực tiếp (như Kieren Johnstone suggested), nhưng để xem WCF được thiết kế cho giao tiếp liên tục và tóm tắt chi tiết thực hiện của công nghệ truyền thông xa bạn. Đây là một liên kết có thể giúp bạn với WCF: http://www.switchonthecode.com/tutorials/wcf-tutorial-basic-interprocess-communication.

Trân trọng,
Oliver Hanappi

3

Trong một ứng dụng, không. Dịch vụ chạy trong phiên 0, vui lòng xem ở đây:

http://www.microsoft.com/whdc/system/sysinternals/session0changes.mspx

Đặt cược của bạn tốt nhất là sử dụng Named Pipes, xem tại đây:

http://www.switchonthecode.com/tutorials/dotnet-35-adds-named-pipes-support

.. ..hoặc tệp bộ nhớ được ánh xạ, hãy xem tại đây:

http://msdn.microsoft.com/en-us/library/dd997372.aspx

Trong phạm vi hơn-.NETty, bạn cũng có thể sử dụng Remoting. Bạn sẽ cần phải đưa ra một số giao diện hoặc giao thức để tạo điều kiện giao tiếp giữa dịch vụ và tiện ích quản lý. Quản lý quá trình khởi động/dừng sẽ dễ dàng hơn và bạn có thể sử dụng lớp ServiceController (MSDN ref).

Hy vọng rằng sẽ giúp (và không quá nản lòng)!

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