Xác định tên của một tính năng trong MSI để cài đặt từ dòng lệnh


12

Tôi đang cố gắng cài đặt một ứng dụng (SalesLogix 7.2 Công cụ quản trị và Máy chủ) từ gói MSI, nhưng chỉ muốn cài đặt một tính năng cụ thể. Làm cách nào để xác định tên tính năng để tôi có thể thử sử dụng tham số ADDLOCAL?

Lựa chọn SLX MSI

Câu trả lời:


10

Bạn có thể chạy trình cài đặt ở chế độ ghi nhật ký

msiexec /i product.msi /l*v log.txt

Sau đó tìm kiếm các thay đổi đối với ADDLOCALtài sản trong nhật ký. Do đó, bạn sẽ có thể xác định các tính năng nào được cài đặt với lựa chọn ở trên trong GUI.

Nếu không, bạn có thể sử dụng Orca theo đề xuất của jscott và tự mình phân tích gói. Mặc dù tôi nghĩ rằng sử dụng nhật ký dài dòng là giải pháp đơn giản hơn và bạn sẽ không bỏ lỡ một tính năng nào được thêm vào để ADDLOCALcài đặt hoạt động.


1
Hoàn hảo. Làm việc một điều trị. ADDLOCAL=Common,Administrator,Architect
Hình trụ

Rất vui được giúp đỡ! ;)
Alexey Ivanov

5

Nhận một bản sao của Microsoftorca.exe - đó là một trình soạn thảo MSI đơn giản. Có những biên tập viên khác ngoài đó cũng sẽ làm việc tốt cho việc này. Mở MSI ở Orca và kiểm tra Featurebảng. Bảng này sẽ liệt kê tất cả các bộ tính năng có sẵn, miễn là nhà cung cấp sử dụng chúng trong việc đóng gói trình cài đặt.


2

Cách dễ nhất là liên hệ với nhà cung cấp ứng dụng và tìm hiểu xem công tắc dòng lệnh là gì. Như đã nói, đôi khi một nhà cung cấp chọn không cung cấp thông tin đó. Trong trường hợp đó, tôi thích sử dụng Process Monitor để quan sát quá trình cài đặt.

Hầu hết các trình cài đặt làm việc theo cùng một cách. Bạn tải xuống một tệp duy nhất và tệp trích xuất tất cả các tệp cài đặt thực tế vào một thư mục tạm thời. Vì chúng ta cần xem trình cài đặt được trích xuất ở đâu, hãy sử dụng trình theo dõi quá trình để quan sát trình cài đặt ngay khi nó khởi động. Không tiếp tục với trình cài đặt, hoặc thoát nó. Làm một trong hai hành động sẽ khiến các tập tin tạm thời bị xóa. Sao chép tất cả các tệp được giải nén từ thư mục tạm thời. Bạn sẽ sử dụng các tệp này cho trình cài đặt tùy chỉnh của bạn. Sau khi bạn đã định vị quy trình cụ thể (trong Trình giám sát quy trình), hãy lọc tất cả các quy trình khác. Sau đó, bạn có thể quan sát quá trình khi bạn tiếp tục trình tự cài đặt. Những gì bạn đang tìm kiếm là một lệnh msiexec gọi cài đặt cho tính năng bạn đã yêu cầu.

Đây có thể là một quá trình thử nghiệm và lỗi tốn thời gian, nhưng tôi đã thành công lớn trong việc tùy chỉnh cài đặt các ứng dụng mà nhà cung cấp không cung cấp thông tin đó ...


2
Sử dụng Process Monitor có thể mang lại trải nghiệm đau khổ (đặc biệt là nếu bạn chưa từng sử dụng nó trước đây). Để bắt đầu, tôi khuyên bạn nên sử dụng lệnh Bao gồm quá trình từ cửa sổ để chọn cửa sổ trình cài đặt (nhấp và giữ vào biểu tượng và kéo vào cửa sổ ứng dụng trình cài đặt). Điều này sẽ nắm bắt ID quá trình của trình cài đặt. Sau đó, bạn có thể sử dụng lệnh bộ lọc để lọc mọi thứ trừ quá trình đó. Ngoài ra, tôi tắt tất cả mọi thứ trừ quá trình và hoạt động chủ đề.
newmanth

1

Bạn có thể thấy rằng trình cài đặt MSI hỗ trợ tùy chọn cài đặt quản trị msiexec . Điều này sẽ chạy trình cài đặt, nhưng thay vì thực sự cài đặt gói, nó sẽ tạo điểm cài đặt cho phần mềm, được tùy chỉnh với các tùy chọn mà bạn chỉ định. Sau đó, bạn có thể triển khai .msi được tạo tại điểm cài đặt đã chỉ định, theo cách bạn thường triển khai phần mềm của mình.msiexec /a <yourpackage.msi>

Nó chủ yếu phụ thuộc vào những gì nhà cung cấp đã bao gồm hỗ trợ, vì vậy theo câu trả lời của @ newmanth, bạn có thể cần gọi cho nhà cung cấp và xem những tùy chọn triển khai nào họ hỗ trợ.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.