2017-05-24 22 views
6

Gần đây, tôi nhận thấy các đoạn văn bản lạ trong quá trình cài đặt MSI được tạo trong WiX 3.11 + VS 2017. tôi đang nhìn thấy "sao chép tệp mới tập: [1], Thư mục: [9], Kích [6]" text:WiX: "Sao chép tệp mới Tệp: [1], Thư mục: [9], Kích thước [6]" được hiển thị trong khi cài đặt MSI

enter image description here

Tương tự như vậy, tôi nhận được sau khi gỡ cài đặt:

enter image description here

Điều này xảy ra trên Windows 10 Pro mới nhất xây dựng 15063.296. Tôi nghĩ rằng tôi đã không nhận thấy vấn đề này trước đây. Tôi cố gắng trình cài đặt tương tự trên Win 7 mà không được cập nhật trong một thời gian và nó làm việc một cách chính xác (hoặc tốt hơn):

enter image description here

Tôi nghĩ mình không đơn độc, theo screenshot on this page. Nhưng tôi không thể tìm thấy bất kỳ thông tin nào. Bạn có gặp phải sự cố tương tự không? Nếu có, có cách nào để khắc phục không?

Trả lời

10

Tôi đã tìm thấy giải pháp. Tất cả tôi cần là thêm dòng sau bên trong < sản phẩm > thẻ trong wxs chính của tôi:

<UIRef Id="WixUI_ErrorProgressText" /> 

Giải thích

Nếu không có dòng đề cập ở trên, gói MSI của tôi là sử dụng các thông điệp cổ bên trong Windows Trình cài đặt cho ActionText, xem this tutorial. Dường như, trong các phiên bản trước của Windows, những thông điệp này giống hệt với những thông tin được cung cấp bởi Wix. Đó là lý do tại sao tôi đã đúng "Sao chép tập tin mới" trong Win 7 nhưng không chính xác "Sao chép tập tin mới File: [1], Thư mục: [9], Kích [6]" trong mới nhất Win 10

Sau khi thêm một tham chiếu đến WixUI_ErrorProgressText, các thông điệp được xác định bởi Wix được sử dụng (các thông điệp này là chính xác) và mọi thứ đều OK.

Note

Trong Wix, có các mẫu sau đây định nghĩa là tốt (và điều này đã nhầm lẫn tôi lúc đầu):

"File: [1], Thư mục: [9], Kích [6] "

Nhưng nếu bạn muốn thấy tên tệp và kích thước của chúng trong khi cài đặt, bạn đã sai. ProgressDlg trong Wix không hiển thị nó. Nếu bạn muốn thông tin này, bạn cần phải override that dialog và thêm văn bản ActionData một cách rõ ràng. Tôi đã không kiểm tra nó. Xem cách thực hiện trong PrepareDlg.

+1

Tôi nhận thấy hành vi này sau bản cập nhật Windows 10 người sáng tạo, có ai biết chính xác những gì đã thay đổi không? – Ewoud

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