ฉันจะยกระดับได้อย่างง่ายดายเมื่อเรียกใช้ไฟล์. jar ได้อย่างไร


8

เมื่อพยายามเรียกใช้ไฟล์ Jar ตัวติดตั้งฉันได้รับข้อผิดพลาดว่าการเข้าถึงการเขียนถูกปฏิเสธเพื่อสร้างไดเรกทอรีภายใต้โฟลเดอร์ Program Files

คลิกขวา -> เรียกใช้ในฐานะผู้ดูแลระบบไม่พร้อมใช้งานบนไฟล์ Jar (ฉันถือว่าเพราะ Java.exe เป็นตัวที่กินมัน - พวกมันจะไม่ได้รับการปฏิบัติโดยตรงจากเชลล์)

วิธีที่เร็วและง่ายที่สุดในการรันไฟล์. jar ด้วยระดับความสูงคืออะไร

ฉันกำลังประเมินเครื่องมือนี้เพื่อแนะนำทีม dev ของเราและพวกเขาจะติดตั้งลงในกล่องด้วยตนเอง ฉันต้องการตัวเลือกที่ไม่ต้องการให้พวกเขาพิมพ์อะไรเลย

คำตอบ:


6

เพื่อให้ผู้อื่นเรียกใช้โปรแกรมติดตั้ง JAR ได้ง่ายโดยไม่ต้องทำการเปลี่ยนแปลงกับคอมพิวเตอร์ทั้งหมดของพวกเขาคุณอาจต้องการล้อมรอบด้วยชุดสคริปต์ที่ยกระดับและเรียกใช้ไฟล์ JAR คุณสามารถทำเช่นนี้ได้อย่างง่ายดายด้วยระดับความสูงจาก Microsoft พวกเขารวมถึงยูทิลิตี้ที่มีประโยชน์ที่ช่วยให้คุณเปิดใช้งานอะไรก็ได้ในฐานะผู้ดูแลระบบโดยเพียงนำหน้ามันด้วยelevateคำสั่ง

เมื่อคุณดาวน์โหลดแล้วให้แยกไปยังโฟลเดอร์และคัดลอกelevate.cmdและelevate.vbsไปยังโฟลเดอร์ด้วยไฟล์ JAR จากนั้นเขียนสคริปต์ชุดใหม่พร้อมกับ.cmdส่วนขยายที่มีเนื้อหาต่อไปนี้:

elevate cmd /c start "%CD%\installer.jar"

ที่จะเรียกใช้ไฟล์ JAR พร้อมกับตัวจัดการเริ่มต้นสำหรับไฟล์ดังกล่าวในระบบของพวกเขา (โดยใช้startคำสั่งของcmd) %CD%ชี้ไปยังไดเร็กทอรีการทำงานปัจจุบันของสคริปต์และจำเป็นเพราะบรรทัดคำสั่งที่ยกระดับจะเริ่มc:\windows\system32ขึ้น

หากด้วยเหตุผลบางประการ Java ไม่ได้รับการกำหนดค่าอย่างเหมาะสมเป็นตัวจัดการเริ่มต้นสำหรับไฟล์ JAR ซึ่งอาจล้มเหลวได้ หากคุณสามารถนับได้ว่า Java อยู่ในที่เดียวกันในทุกระบบคุณสามารถทำได้ด้วยวิธีนี้:

elevate "c:\Program Files\Java\jre\bin\java.exe" -jar "%CD%\installer.jar"

เมื่อคุณทำอย่างใดอย่างหนึ่งเพียงแค่เรียกใช้ไฟล์แบทช์และ Windows จะแจ้งให้ผู้ดูแลระบบระดับความสูงและเปิดตัวติดตั้ง

รวมสคริปต์การยกระดับสคริปต์ของคุณและไฟล์ตัวติดตั้งในไฟล์เก็บถาวรแบบขยายตัวเองที่เรียกใช้งานสคริปต์และคุณสามารถสรุปได้ใน.exeไฟล์เล็ก ๆ ( 7-Zipเป็นเครื่องมือโอเพ่นซอร์สที่ยอดเยี่ยมสำหรับการสร้างคลังข้อมูลดังกล่าว)

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ Elevation PowerToys ศึกษาบทความที่เชื่อมโยงหรือไฟล์ README ที่มาพร้อมกับการดาวน์โหลด


คำตอบที่ยอดเยี่ยม :) ขอบคุณ! ฉันจะรอที่จะยอมรับมันดังนั้นบางทีคำถาม / คำตอบของคุณจะได้รับปริมาณข้อมูลเพิ่มขึ้น (ฉันคิดว่ามันใช้งานได้จริงไหม)
Merlyn Morgan-Graham

@ แพทช์วิธีการของบุคคลที่สามในการทำเช่นนี้คืออะไร
Pacerier

@Pacerier แม้แต่ Windows 10 ก็ยังไม่มีวิธีการยกระดับจากบรรทัดคำสั่งในตัว
แพทช์

2

ฉันเพิ่งมีโอกาสทำเช่นนี้และพบว่าวิธีที่ง่ายที่สุดโดยไม่ต้องดาวน์โหลดและติดตั้ง Elevation PowerToys คือการเรียกใช้ cmd.exe ในฐานะผู้ดูแลระบบแล้วโทรjava.exe -jar 'installer.jar'จากบรรทัดคำสั่ง แน่นอนฉันต้องค้นหา java.exe ก่อน แต่นั่นใช้เวลาไม่นาน ...


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