Nếu bạn đọc bất cứ điều gì về cách hệ thống trình cài đặt Windows hoạt động, rõ ràng họ đã áp dụng một số ý tưởng từ cơ sở dữ liệu giao dịch để cài đặt và bảo trì chương trình, chưa kể các .msi
tệp là cơ sở dữ liệu.
Luôn có câu hỏi trong việc thiết kế bất kỳ cơ sở dữ liệu nào - bạn có muốn tốc độ hoặc độ chính xác / an toàn không? Cho rằng các trình cài đặt có thể sửa đổi cấu hình hệ thống và một rủi ro có thể khiến hệ thống không thể hoạt động, an toàn đã được ưu tiên hơn tốc độ. Một trong những lý do tại sao trình .msi
cài đặt quá chậm là vì các tệp rollback được tạo cho mỗi tệp, v.v. sẽ được sửa đổi và sau đó bị xóa - cho phép mọi thay đổi được "khôi phục" nếu có sự cố xảy ra ở giữa mọi thứ ( chẳng hạn như mất điện hoặc sự cố hệ thống).
Bây giờ, tôi tin rằng công cụ MSI tự thực thi cài đặt, sửa đổi hoặc chỉ xóa một chương trình tại một thời điểm - nếu bạn cố chạy .msi
trong khi một chương trình khác đang gỡ cài đặt, chẳng hạn, nó sẽ không chạy hoặc sẽ chờ gỡ cài đặt hiện đang chạy kêt thuc. Trình cài đặt không phải MSI có thể không hoạt động theo cách này - vì họ không sử dụng công cụ MSI. Nhưng vì quyết định thiết kế an toàn này, đây có lẽ là lý do tại sao appwiz.cpl
khăng khăng chỉ cho phép một người gỡ cài đặt được gọi cùng một lúc.
CCleaner cho phép bạn khởi động các trình gỡ cài đặt mà không cần đợi các trình chạy trước đó kết thúc. Trình cài đặt MSI có thể vẫn không hoạt động song song do các điều trên.