2010-09-27 30 views
11

Tôi đang cố gắng tích hợp WiX vào giải pháp xây dựng tự động của mình bằng cách sử dụng TFS 2010 chạy trên Windows Server 2008 R2. Mọi thứ dường như rất dễ dàng, và sau đó tôi nhận được điều này:WiX: Lỗi xác thực ICE bí ẩn và khó chẩn đoán khi xây dựng máy chủ xây dựng

light.exe: Lỗi thực hiện ICE hành động 'ICE01'. Nguyên nhân phổ biến nhất của loại lỗi ICE này là công cụ tạo mã được đăng ký không chính xác. Xem http://wix.sourceforge.net/faq.html#Error217 để biết chi tiết và cách giải quyết vấn đề này. Định dạng chuỗi sau không được mong đợi bởi trình ghi nhật ký tin nhắn bên ngoài: "Dịch vụ Trình cài đặt Windows không thể truy cập được. Điều này có thể xảy ra nếu Trình cài đặt Windows không được cài đặt đúng. Hãy liên hệ với nhân viên hỗ trợ của bạn để được trợ giúp".

Thật kỳ quặc. Nhưng này! Họ cung cấp một liên kết. Điều đó sẽ giúp ích, phải không?

Lỗi LGHT0217
Trong WiX v3, Light sẽ tự động chạy validation-- Windows Installer nội quán Evaluators (ICES) --Khi mọi xây dựng thành công. Xác thực là cách tuyệt vời để nắm bắt các lỗi tác giả phổ biến có thể dẫn đến các sự cố dịch vụ, đó là lý do tại sao nó được chạy theo mặc định. Thật không may, có một vấn đề phổ biến xảy ra trên Windows Vista và Windows Server 2008 có thể làm cho các ICE thất bại. Để biết chi tiết về nguyên nhân và cách khắc phục, hãy xem Blog của Heath Stewart và WebLog của Aaron Stebner.

Không hề. Những bài viết này chỉ mô tả một tình huống liên quan đến đăng ký động cơ kịch bản và các điều kiện mà chúng mô tả không có mặt. Tuy nhiên, tôi đến ngày Re: (WiX-users) Why do I get ICE failures building from a serviceaccount? (2010-01-14) dường như chỉ ra rằng nếu tôi đã sử dụng tài khoản miền để chạy dịch vụ Trình cài đặt Windows, nó sẽ hoạt động. Nghe có vẻ như nó đáng để bắn.

"Đối với bất cứ lý do trên Windows 2008 (tôi không thử nghiệm Vista, XP, 2003, 7, hoặc 2008 R2) Dịch vụ MSI chỉ có sẵn từ thông tin đăng nhập mà một trong hai có truy cập quản trị hoặc là thông tin đăng nhập mà Các đăng nhập là từ các tài khoản dịch vụ không có đặc quyền quản trị không thể truy cập dịch vụ msi và do đó không thể chạy thử nghiệm ICE. "

Tuy nhiên, khi cố gắng để bắt đầu dịch vụ Windows Installer với tài khoản xây dựng dịch vụ của tôi:

Windows có thể không bắt đầu dịch vụ Windows Installer trên chảo-1. Lỗi 1297: Một đặc quyền mà dịch vụ yêu cầu hoạt động đúng không tồn tại trong cấu hình tài khoản dịch vụ. Bạn có thể sử dụng các dịch vụ Microsoft Management Console (MMC) snap-in (services.msc) và cài đặt Security Security MMC snap-in (secpol.msc) để xem cấu hình dịch vụ và cấu hình tài khoản.

OK, Windows, vì vậy bạn cho tôi biết rằng tài khoản dịch vụ xây dựng của tôi thiếu một số giấy phép rõ ràng cần thiết để khởi động dịch vụ. Làm cho nó quản trị viên nên sửa chữa quyền đó? Không, điều đó cũng không hiệu quả.

Vì vậy, tôi hoàn nguyên về hệ thống cục bộ cho tài khoản dịch vụ Trình cài đặt Windows. Lần này tôi đã thực hiện dịch vụ xây dựng một quản trị viên cục bộ và lo, thành công! Đó không phải là một giải pháp, mặc dù.

Ý tưởng tiếp theo của tôi là cố gắng cách ly thiết lập quyền mà dịch vụ xây dựng thực sự sẽ yêu cầu thực hiện việc này. Đó sẽ là một giải pháp tốt đẹp thay vì phải thêm nhiều tài khoản hơn vào bộ quản trị viên. Bước 1: đi vào chính sách bảo mật cục bộ và thêm tài khoản dịch vụ xây dựng cho tất cả các quyền hiện được cấp cho Quản trị viên. Về lý thuyết, điều đó sẽ cho phép việc xây dựng thành công và từ đó tôi có thể xóa quyền chọn lọc cho đến khi tôi đã cô lập tất cả các quyền cần được tổ chức để thành công.

Thật không may, ngay cả với tất cả các quyền tương tự, bản dựng sẽ vẫn không thành công trừ khi tài khoản dịch vụ xây dựng là thành viên của quản trị viên cục bộ. Tại sao điều này? Điều gì khác ngoài LSP có phụ thuộc vào nhóm quản trị viên mà tôi có thể đã thay đổi để mang tài khoản dịch vụ xây dựng của tôi tương đương với quản trị viên?

Kết luận hiện tại: dịch vụ xây dựng phải là quản trị viên để tránh lỗi xác thực ICE.

mở câu hỏi:

  • Tại sao không cho phép cô lập ý tưởng công việc của tôi?
  • Điều bí ẩn này là gì Error 1297 bị ném khi chạy Dịch vụ Trình cài đặt Windows với tư cách là người dùng miền? Hầu như không có tài liệu nào tôi có thể tìm thấy về điều này.
+0

Chỉ cần đăng những phát hiện của tôi lên http://stackoverflow.com/q/1064580/33499 Hy vọng nó sẽ giúp ích. – imagi

+0

Tôi vừa chạy vào đây, hôm nay, với WiX 3.8 trên một giàn khoan Win 8.1 Agent. Tôi đã không chạy vào các vấn đề tương tự như bạn, chính xác, nhưng tôi thiết lập này lên giống như tất cả các đại lý khác tôi có, ngoại trừ một trong những điều này là trên một tên miền. Có lẽ điều này có thể là thủ phạm? Nếu vậy, làm thế nào bạn có được xung quanh nó? –

Trả lời

1

Tôi cũng gặp phải vấn đề tương tự. Sau khi một số khó khăn và googling tôi đến giải pháp mà đàn áp xác nhận ICE trong dự án WiX sẽ làm cho dự án biên dịch.

+1

+1, xem thêm [WiX 3.0 ném lỗi 217, trong khi được thực hiện bằng cách tích hợp liên tục] (http://stackoverflow.com/q/1064580/33499) – wimh

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