java - Software installeringsautomatisering

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg arbejder på et computer software installationscenter - vores brugere kører Windows. Nogle af softwaren er vanskelig at installere til nye medarbejdere. Jeg vil gerne automatisere opsætningen af ​​software ved hjælp af enten Python eller Java. Hvordan skal jeg udfylde oplysningerne i installationsdialogerne og flytte automatisk gennem opsætningen?

Bedste reference


---- Redigeret som løsningen er naturligvis taler om Windows/MSI ----


MSI understøtter overførsel af konfigurationsparametre på kommandolinjen. Kig ind i det. Medmindre de gør noget virkelig eksotisk, eller de pakkede programmet på en måde, der målrettet ignorerer parametrene, kan du finde ud af, at den bedste løsning kun er at sætte parametrene på kommandolinjen under din kædeninstallation.


---- Original post følger ----


Først skal du vide, hvad slags systemer du installerer software på.


Derefter skal du vælge pakkehåndteringssystemet, der er standard for det pågældende system. I Windows er det MSI, mange Linux-systemer bruger omdrejningstal (nogle brug deb) osv.


Så skal du kigge på fjerninstallation. Næsten alle moderne pakkechef understøtter en eller anden teknik til fjerninstallation. Afhængigt af pakkehåndteringen kan dette indebære push-løsninger (slip pakken med konfigurationsoplysninger i en mappe eller send den via en grænseflade), mens andre styres med en pull-løsning.


Hvis du bruger en pull-løsning, skal du installere et dagligt job for at trække fra en bestemt ressource, og så kan du konvertere systemet til en pull-løsning (hvilket generelt gør forvaltningen lidt lettere).


Senere kan du måske se mere inklusiv løsninger, f.eks. Hvordan man installerer tilføjelser til basissoftwaren under installationsprocessen. Igen er det anderledes for hvert operativsystem, du har til hensigt at støtte.

Andre referencer 1


Jeg brugte pywinauto til at automatisere GUI'er, hvilket også skulle fungere godt for installationsformularer. [2]

Andre referencer 2


Hvis du vil automatisere dialogudførelser på Windows, er AutoIt vejen at gå. Fremragende dokumentation og support, et kraftigt, men læsbart script sprog, understøttelse af brugerdefineret GUI oprettelse og script compilation osv. [3]


Her er et WinZip installationseksempel med AutoIt:


; Run the winzip installer
Run("winzip90.exe")
; Initial Setup Screen
WinWaitActive("WinZip® 9.0 SR-1 Setup", "&Setup")
Send("!s")
; Install location
WinWaitActive("WinZip Setup", "into the following folder")
Send("{ENTER}")
; Features overview
WinWaitActive("WinZip Setup", "WinZip features include")
Send("!n")
; License agreement
WinWaitActive("License Agreement")
Send("!y")
; Quick start
WinWaitActive("WinZip Setup", "Quick Start Guide")
Send("!n")
; Choose interface
WinWaitActive("WinZip Setup", "switch between the two interfaces")
Send("!c")
Send("!n")
; Installation type (custom/express)
WinWaitActive("WinZip Setup", "&Express setup (recommended)")
Send("!e")
Send("!n")
; Select file associations
WinWaitActive("WinZip Setup", "WinZip needs to associate itself with your archives")
Send("!n")
; Completed installation screen
WinWaitActive("WinZip Setup", "Thank you for installing this evaluation version")
Send("{ENTER}")
; Wait for winzip to load then close it
WinWaitActive("WinZip (Evaluation Version)")
WinClose("WinZip (Evaluation Version)")