2011-01-28 55 views
7

Tôi đang gặp sự cố khi cài đặt dịch vụ Windows. Tôi đã cài đặt và gỡ cài đặt dịch vụ nhiều lần (installutil ..... installutil/u) mà không có bất kỳ sự cố nào nhưng đã xảy ra sự cố và bây giờ khi tôi cố gắng cài đặt, tôi nhận được thông báo lỗi được liệt kê bên dưới. Tôi đã kiểm tra bảng điều khiển quản lý máy tính và dịch vụ CIMediator không xuất hiện trong danh sách dịch vụ. Làm cách nào để xóa dịch vụ?Sự cố khi cài đặt dịch vụ cửa sổ

System.ArgumentException: Nguồn CIMediator đã tồn tại trên máy tính cục bộ.

Trả lời

0

Kiểm tra xem khóa có còn trong sổ đăng ký không.

HKLM \ System \ CurrentControlSet \ Services \ CIMediator (có lẽ, trừ khi phím được định nghĩa khác nhau)

Nếu có, xuất khẩu chìa khóa cho một tập tin .reg và sau đó xóa nó.

14

Chỉ cần giải quyết cùng một vấn đề, sau nhiều lần gỡ cài đặt/khởi động lại. Tôi có thực hiện riêng của tôi về cài đặt dịch vụ (có nguồn gốc từ [System.Configuration.Install.Installer] [1]) ứng dụng, và tôi đã xác định EventLog như sau:

public ProjectInstaller() 
    { 
     InitializeComponent(); 

     EventLogInstaller installer = FindInstaller(this.Installers); 
     if (installer != null) 
     { 
      installer.Log = "MyService";     
     } 
    }  

Bạn có thể có tính năng tương tự thực hiện các sau cách ([MSDN: EventLog.CreateEventSource Method] [2]):

if(!EventLog.SourceExists("MySource")) 
{ 
    EventLog.CreateEventSource("MySource", "MyNewLog"); 
} 

trong trường hợp của tôi, trong một số các cài đặt EventLog được tạo thành công, nhưng trong quá trình gỡ bỏ cài đặt một cái gì đó đã đi sai, và EventLog không được gỡ bỏ (mặc dù nó không được hiển thị trong EventViewer, nó vẫn còn hiện diện trong e). Vì vậy, lỗi "MyService đã tồn tại trên máy tính cục bộ", rõ ràng là lỗi về EventLog, không phải bản thân dịch vụ.

Bạn có thể thử làm như sau:

Tới Start menu và gõ regedit. Thao tác này sẽ mở Registry Editor. Hãy cẩn thận với nó, nó luôn luôn được khuyến khích để sao lưu toàn bộ registry trước khi làm bất cứ điều gì (File -> Export), hoặc chỉ có các phím bạn đang về để chỉnh sửa/xóa. Mở Chỉnh sửa -> Tìm, nhập CIMediator và chỉ để lại Phím đã chọn. Tên dịch vụ của bạn sẽ xuất hiện như nhiều thời điểm quan trọng, trên địa điểm sau

HKEY_LOCAL_MACHINE \ SYSTEM \ ControlSet001 \ Services \ eventlog \ CIMediator,
HKEY_LOCAL_MACHINE \ SYSTEM \ ControlSet001 \ Services \ CIMediator,
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ dịch vụ \ eventlog \ CIMediator,
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ CIMediator

Cố gắng xóa các phím. Nó làm việc cho tôi.

1 2

+0

Perfect giải pháp. Tôi đã tìm thấy các khóa được tạo trong registry. Tôi chắc rằng tôi chưa cài đặt nó qua thư mục Project Bin. Tự hỏi làm thế nào nó đã tạo ra khóa registry mà không cần cài đặt. chỉ tò mò. Tuy nhiên, việc xóa các khóa hiện có đã giải quyết được sự cố của tôi. Cảm ơn bạn. –

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