Sự khác biệt chính giữa các tập tin cài đặt MSI và EXE là gì?


13

Chúng tôi chắc chắn thấy rằng một số .exetệp sẽ được thực thi, nhưng chức năng khác nhau của các tệp MSI là gì?


Xem câu trả lời dưới đây, hoặc có lẽ đọc về lợi ích doanh nghiệp của msi trên serverfault.com. Bài viết này mô tả chi tiết những lợi ích mà các tệp MSI mang lại sẽ mang lại ..
Stein smul

Câu trả lời:


7

MSI là từ viết tắt của Microsoft Silent Installer, nó chạy trình cài đặt .exe trong nền.

Nó được sử dụng trong GPO, ví dụ nếu bạn muốn triển khai một ứng dụng trên Cơ sở hạ tầng Windows mà bạn đang quản lý, Bạn phải tạo quy tắc GPO mới với MSI và MSI sẽ được cài đặt trên mọi máy mà không cần người dùng can thiệp.

GPO là "Đối tượng chính sách nhóm", "cung cấp quản lý và cấu hình tập trung cho các hệ điều hành, ứng dụng và cài đặt của người dùng trong môi trường Active Directory."


1
GPO là "Đối tượng chính sách nhóm", "cung cấp quản lý và cấu hình tập trung cho các hệ điều hành, ứng dụng và cài đặt của người dùng trong môi trường Active Directory."
RedGrittyBrick

5
... giống như [M] icro [s] oft [I] nstaller. Bạn đã "im lặng" từ đâu vậy? Không, MSI không chạy PE exes trong nền (chúng có khả năng của nó, nhưng đó không phải là chức năng chính duy nhất hoặc thậm chí của chúng).
Bob

3
The Windows Installer (previously known as Microsoft Installer) is a software component...- Wikipedia . Có, MSI là Trình cài đặt MicroSoft và không phải là trình cài đặt im lặng.
Máy bay phản lực

3
Hầu hết câu trả lời này thực sự sai. Xin vui lòng đọc các câu trả lời khác trong chủ đề này.
Stein Åsmul

Tôi đang nghe mẫu đầy đủ này Microsoft Silent Installerlần đầu tiên. Tôi luôn biết rằng MSI là viết tắt của M icro s oft I nstaller`. Bạn có bất kỳ trích dẫn chính thức nào nói như vậy?
RBT

11

Trình cài đặt là gì? Chà, một trình cài đặt chuẩn bị một hệ thống để cho phép một chương trình chạy: nó cài đặt chương trình đó. Trong quá trình này, trình cài đặt (trên Windows) có thể sao chép tệp vào vị trí hệ thống, đặt phím tắt để khởi chạy, cập nhật thư viện, xóa phiên bản cũ hơn, v.v. Không có tiêu chuẩn hoặc định dạng trình cài đặt chung; bất kỳ chương trình nào thực hiện các hành động này ("cài đặt" chương trình khác) có thể được gọi là trình cài đặt.

Tệp "exe" trong Windows được gọi là tệp Portable Executable và chứa các hướng dẫn tùy ý, mã máy gốc hoặc mã byte .NET. Không có gì về định dạng PE sẽ xác định nó là một trình cài đặt. Tất nhiên, với mã máy tùy ý, bạn có thể viết trình cài đặt - và những trình cài đặt "exe" mà bạn thấy có cách tiếp cận đó.

Một số người viết trình cài đặt tùy chỉnh của riêng họ. Những người khác sử dụng trình tạo cài đặt để tiết kiệm thời gian và công sức; bao gồm NSIS, InnoSetup, InstallShield và nhiều hơn nữa.

MSI là một định dạng cụ thể được sử dụng để lưu trữ thông tin về cài đặt, cơ sở dữ liệu về các bước cần thực hiện và tệp nào sẽ được đặt ở đâu. Chính nó, nó không thể thực thi được; nó thực sự được giải thích bởi msiexec.exetrên các hệ thống Windows. Trình thông dịch này sau đó sẽ làm theo các bước được trình bày trong tệp MSI. Về lý thuyết, bạn có thể tạo bất kỳ exe nào sử dụng cơ sở dữ liệu tương tự MSI (và NSIS, InnoSetup, v.v., làm một cái gì đó tương tự).

Điều khiến MSI trở nên đặc biệt là nó được bao gồm và giải thích bằng các công cụ tích hợp và nó cũng được tích hợp vào Active Directory để triển khai dễ dàng hơn trên nhiều máy trong môi trường công ty và câu trả lời của Clem chi tiết hơn.


6

Các tệp MSI là các tệp cơ sở dữ liệu (cụ thể là cơ sở dữ liệu MS-SQL) mô tả cài đặt thông qua các bảng cơ sở dữ liệu và cài đặt thông qua một tập hợp các trình tự cài đặt phức tạp được xác định trong chính tệp MSI.

Các tệp MSI không được cài đặt dưới dạng các tệp EXE trong nền khi ghi "Clem" - chúng được Windows Installer Engine sử dụng thông qua giao diện dòng lệnh msiexec.exe . Hoặc có thể thử các mẫu dòng lệnh msiexec.exe được chú thích của Advanced Installer . Sau đó, bản thân cài đặt được chạy qua hai chuỗi khác nhau: trình tự giao diện người dùngtrình tự cài đặt thực tế - trình tự sau chạy trong ngữ cảnh hệ thống bằng tài khoản LocalSystem . Sự sắp xếp này là cần thiết để cho phép trình quản trị quyền tạm thời hoặc quyền nâng cao là thuật ngữ phù hợp.

Trình cài đặt EXE có thể là bất cứ điều gì. Thông thường, chúng là các trình cài đặt dựa trên tập lệnh kiểu cũ không dựa trên cơ sở dữ liệu, nhưng tệp EXE cũng có thể là trình bao bọc chứa tệp MSI và các thành phần thời gian chạy liên quan. Tất cả phụ thuộc và phải được điều tra trong từng trường hợp cụ thể.

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.