Chạy tệp MSI với tư cách quản trị viên từ tài khoản người dùng


18

Tôi thường đăng nhập như một người dùng bình thường trên hộp Windows XP của mình. Đôi khi, khi tôi muốn cài đặt bản cập nhật phần mềm, tôi không muốn đăng xuất và đăng nhập lại với tư cách quản trị viên, nhưng tôi nhấp chuột phải vào trình cài đặt exe và chọn "Chạy dưới dạng ..." để chạy nó từ tài khoản quản trị viên của mình . Tuy nhiên, tùy chọn này dường như chỉ tồn tại cho các tệp exe, không phải cho các tệp msi.

Có cách nào để làm cho các tệp msi chạy trong một tài khoản khác không? Hoặc là không nên cho một số lý do?


Chỉ cần khởi chạy cài đặt tệp MSI từ dấu nhắc lệnh nâng cao (nhấp chuột phải vào cmd.exe và chọn "chạy với tư cách quản trị viên"). Cài đặt với một dòng lệnh đại loại như thế này: msiexec.exe /I "MyFile.msi" /QN /L*V "C:\msilog.log"(cập nhật đường dẫn cho phù hợp). Runas nên hoạt động tốt, tôi chỉ cần tìm một dấu nhắc lệnh nâng cao dễ dàng hơn.
Stein smul

Câu trả lời:


24

Các tập tin .msi có thể được thực thi với msiexec.exe, vì vậy kết hợp với lệnh runas , bạn có thể thực hiện những gì bạn muốn:

runas /user:administrator "msiexec /i <path and filename of your msi>"

Vì một đường dẫn đầy đủ đến tệp được khuyến nghị, nó có thể cần các trích dẫn xung quanh nó và bạn cần thoát chúng sau đó bằng dấu gạch chéo ngược \:

runas /user:administrator "msiexec /i \"<path and filename of your msi>\""
                                      ^^                               ^^


À cảm ơn, đã không kiểm tra serverfault. @fretje: Cảm ơn, tuy nhiên lần đầu tiên tôi nhận được thông báo lỗi rằng msiexec không thể mở tệp msi. Dường như bạn cần chỉ định toàn bộ đường dẫn đến tệp msi. Thư mục hiện tại mà runas được chạy từ không được chuyển đến lệnh đang được chạy, trong trường hợp này là msiexec (có nghĩa).
Tim Pietzcker

Dường như bạn cũng nên có thể chỉ cần sử dụng msiexec /a package.msi- xem các msiexectrang trên TechNet (mà nói đó là cho Server 2003, nhưng dường như giống với nội dung của trang tương ứng trong hệ thống trợ giúp XP).
SamB

@SamB: Cài đặt quản trị chỉ có nghĩa là cài đặt hình ảnh của nguồn cài đặt cục bộ trên mạng từ nơi người khác có thể cài đặt ứng dụng trên máy của họ (thay vì sử dụng đĩa cd-rom). Sau đó, người dùng có thể chọn chạy từ nguồn khi cài đặt và trình cài đặt sử dụng hầu hết các tệp của sản phẩm trực tiếp từ mạng. Vì vậy, đây không phải là ý nghĩa của OP (chạy với tư cách quản trị viên).
fretje

@fretje: Ồ ... thật khó hiểu!
SamB

6

Bạn luôn có thể mở một dấu nhắc lệnh với tư cách quản trị viên (nhấp chuột phải vào runas hoặc start-> run-> runas / user: admin cmd), thay đổi thư mục nơi MSI của bạn tồn tại và thực thi msiexec / i sản phẩm.msi

Hoặc thêm phần này vào đăng ký của bạn: HKEY_CLASSES_ROOT \ Msi.Package \ shell \ runas \ lệnh Giá trị: Cài đặt & như ... HKEY_CLASSES_ROOT \ Msi.Package \ shell \ runas \ lệnh Giá trị: msiexec / i "% 1"


0

Hãy nhìn runastừ dòng lệnh. Bạn có thể khởi chạy bất cứ thứ gì dưới tài khoản được chỉ định.

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.