Jak łatwo podnieść poziom uprawnień podczas uruchamiania pliku .jar?
8
Podczas próby uruchomienia pliku jar instalatora pojawia się błąd informujący, że odmowa dostępu do zapisu w celu utworzenia katalogu w folderze Program Files.
Kliknij prawym przyciskiem myszy -> Uruchom jako Administrator nie jest dostępny w plikach Jar (zakładam, ponieważ konsumuje je Java.exe - same nie są traktowane przez powłokę jako bezpośrednio wykonywalne).
Jaki jest najszybszy i najprostszy sposób na uruchomienie pliku .Jar z elewacją?
Oceniam to narzędzie, aby polecić naszemu zespołowi programistów, a oni ręcznie zainstalują je na swoich urządzeniach. Wolałbym opcję, która nie wymaga od nich niczego wpisywania.
Aby ułatwić innym uruchamianie instalatora JAR bez konieczności wprowadzania zmian na wszystkich komputerach, prawdopodobnie należy go owinąć skryptem wsadowym, który podnosi i uruchamia plik JAR. Możesz to zrobić z łatwością dzięki Elevation PowerToys firmy Microsoft . Zawierają one przydatne narzędzie, które pozwala uruchamiać wszystko jako administrator, po prostu poprzedzając je elevatepoleceniem.
Po pobraniu je wyodrębnić je do folderu i skopiuj elevate.cmdi elevate.vbsdo folderu z plikiem JAR. Następnie napisz nowy skrypt wsadowy z .cmdrozszerzeniem o następującej treści:
elevate cmd /c start "%CD%\installer.jar"
Spowoduje to uruchomienie pliku JAR z domyślną obsługą takich plików w ich systemie (za pomocą startpolecenia cmd). %CD%wskazuje bieżący katalog roboczy skryptu i jest konieczny, ponieważ wiersz polecenia z podwyższonym poziomem uprawnień uruchomi się za c:\windows\system32.
Jeśli z jakiegoś powodu Java nie zostanie poprawnie skonfigurowana jako domyślny moduł obsługi plików JAR, to się nie powiedzie. Jeśli możesz liczyć, że Java znajdzie się w tym samym miejscu na wszystkich systemach, możesz zamiast tego zrobić to w ten sposób:
Po wykonaniu jednego z nich wystarczy uruchomić plik wsadowy, a system Windows wyświetli monit o podniesienie uprawnień administratora i uruchomienie instalatora.
Dołącz skrypty elewacji, skrypt i pliki instalatora do samorozpakowującego się archiwum, które uruchamia skrypt, i możesz go zawinąć w jeden ładny, mały .exeplik. ( 7-Zip to świetne narzędzie typu open source do tworzenia takich archiwów).
Aby uzyskać więcej informacji na temat narzędzia Elevation PowerToys, zapoznaj się z dołączonym artykułem lub plikiem README dołączonym do pobrania.
Świetna odpowiedź :) Dzięki! Poczekam, aż go zaakceptuję, więc może pytanie / twoja odpowiedź zyskuje trochę ruchu (myślę, że tak to działa?)
Merlyn Morgan-Graham
@Patchy, w jaki sposób można to zrobić w innej firmie?
Pacerier
@Pacerier Nawet Windows 10 wciąż nie ma wbudowanej metody podnoszenia z linii poleceń.
Łaty
2
Właśnie miałem okazję to zrobić i odkryłem, że najłatwiejszym sposobem, bez konieczności pobierania i instalowania programu Elevation PowerToys, było uruchomienie cmd.exe jako administrator, a następnie wywołanie java.exe -jar 'installer.jar'z wiersza poleceń. Oczywiście najpierw musiałem znaleźć plik java.exe, ale nie trwało to długo ...
W rzeczywistości wystarczy tylko zadzwonić installer.jar. Automatycznie zlokalizuje domyślny program „otwórz za pomocą”, który został już ustawiony na java.exe. (Gdyby tak nie było, dwukrotne kliknięcie .jar nie uruchomiłoby go w pierwszej kolejności.)
Właśnie miałem okazję to zrobić i odkryłem, że najłatwiejszym sposobem, bez konieczności pobierania i instalowania programu Elevation PowerToys, było uruchomienie cmd.exe jako administrator, a następnie wywołanie
java.exe -jar 'installer.jar'
z wiersza poleceń. Oczywiście najpierw musiałem znaleźć plik java.exe, ale nie trwało to długo ...źródło
installer.jar
. Automatycznie zlokalizuje domyślny program „otwórz za pomocą”, który został już ustawiony najava.exe
. (Gdyby tak nie było, dwukrotne kliknięcie .jar nie uruchomiłoby go w pierwszej kolejności.)