เรียกใช้ไฟล์ MSI ในฐานะผู้ดูแลระบบจากบัญชีผู้ใช้


18

ฉันมักจะเข้าสู่ระบบในฐานะผู้ใช้ปกติในกล่อง Windows XP ของฉัน บางครั้งเมื่อฉันต้องการติดตั้งการอัปเดตซอฟต์แวร์ฉันไม่ต้องการออกจากระบบและเข้าสู่ระบบอีกครั้งในฐานะผู้ดูแลระบบ แต่ฉันคลิกขวาที่ตัวติดตั้ง exe และเลือก "Run as ... " เพื่อเรียกใช้จากบัญชีผู้ดูแลระบบของฉัน . อย่างไรก็ตามตัวเลือกนี้ดูเหมือนว่าจะมีอยู่สำหรับไฟล์ exe เท่านั้นไม่ใช่สำหรับไฟล์ msi

มีวิธีทำให้ไฟล์ msi ทำงานภายใต้บัญชีอื่นหรือไม่? หรือว่าไม่แนะนำด้วยเหตุผลบางอย่าง?


เพียงเปิดการติดตั้งไฟล์ MSI จากพรอมต์คำสั่งที่ยกระดับ (คลิกขวาที่cmd.exeแล้วเลือก "run as administrator") ติดตั้งด้วยบรรทัดคำสั่งดังนี้: msiexec.exe /I "MyFile.msi" /QN /L*V "C:\msilog.log"(พา ธ การอัพเดทตามความเหมาะสม) Runas ควรจะทำงานได้ดีฉันแค่ค้นหาพรอมต์คำสั่งที่ยกระดับได้ง่ายขึ้น
Stein Åsmul

คำตอบ:


24

ไฟล์. msi สามารถเรียกใช้งานด้วย msiexec.exe ดังนั้นเมื่อใช้ร่วมกับคำสั่งrunasคุณสามารถทำสิ่งที่คุณต้องการได้:

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

เนื่องจากแนะนำให้ใช้พา ธ แบบเต็มไปยังไฟล์จึงอาจต้องมีเครื่องหมายอัญประกาศล้อมรอบและคุณต้องหลีกเลี่ยงแล้วใช้เครื่องหมายแบคสแลช\:

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

เกี่ยวข้อง: serverfault.com/questions/19341/…
hyperslug

อ๊ะขอบคุณยังไม่ได้ตรวจสอบความผิดพลาด @fretje: ขอบคุณ แต่ฉันได้รับข้อความแสดงข้อผิดพลาดเป็นครั้งแรกที่ msiexec ไม่สามารถเปิดไฟล์ msi ได้ ปรากฏว่าคุณต้องระบุพา ธ ทั้งหมดไปยังไฟล์ msi ไดเรกทอรีปัจจุบันที่ runas รันนั้นจะไม่ถูกส่งไปยังคำสั่งที่กำลังรันในกรณีนี้ msiexec (ซึ่งสมเหตุสมผล)
Tim Pietzcker

ดูเหมือนว่าคุณควรจะสามารถที่จะใช้เพียงmsiexec /a package.msi- ดูหน้าบน TechNet (ซึ่งกล่าวว่าสำหรับ Server 2003 แต่ดูเหมือนจะเหมือนกับเนื้อหาของหน้าเว็บที่สอดคล้องกันในระบบ XP ช่วยเหลือที่) msiexec
SamB

@SamB: การติดตั้งระดับผู้ดูแลหมายถึงการติดตั้งอิมเมจของแหล่งติดตั้งท้องถิ่นบนเครือข่ายจากที่ที่ผู้อื่นสามารถติดตั้งแอปพลิเคชันบนเครื่องของพวกเขา (แทนการใช้ cd-rom) ผู้ใช้สามารถเลือกเรียกใช้จากแหล่งเมื่อเขาติดตั้งและตัวติดตั้งใช้ไฟล์ส่วนใหญ่ของผลิตภัณฑ์โดยตรงจากเครือข่าย ดังนั้นนี่ไม่ใช่ความหมายของ OP (เรียกใช้ในฐานะผู้ดูแลระบบ)
fretje

@fretje: โอ้ ... มันสับสน!
SamB

6

คุณสามารถเปิดพรอมต์คำสั่งในฐานะผู้ดูแลระบบได้ (คลิกขวาที่ runas หรือ start-> run-> runas / user: administrator cmd) เปลี่ยนเป็นไดเรกทอรีที่ MSI ของคุณมีอยู่และเรียกใช้ msiexec / i product.msi

หรือเพิ่มสิ่งนี้ลงทะเบียนของคุณ: HKEY_CLASSES_ROOT \ Msi.Package \ shell \ runas \ คำสั่งค่า: ติดตั้ง & เป็น ... HKEY_CLASSES_ROOT \ Msi.Package \ shell \ runas \ คำสั่งค่า: msiexec / i "% 1"


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.