Seite 1 von 1

Installation per AutoIt

Verfasst: 27 Jul 2010, 16:50
von ABrandt
Hallo, hat jmd. schon einmal Pakete im Opsi verteilt die per AutoIt gescriptet sind?

code der *.ins

Code: Alles auswählen

[Initial]
LogLevel=2
;  Log Errors in Logfile but don't abort:
ExitOnError=false
; Show syntax errors in the script:
ScriptErrorMessages=on
; Dont trace step by step through the script:
TraceMode=off
; let started programs run in front of the winst window
StayOnTop=false

[Aktionen]
WinBatch_install

[WinBatch_install]
%ScriptPath%\blabla.msi.exe

inhalt der blabla.msi.exe

Code: Alles auswählen

Run (@SystemDir & "\msiexec.exe /i " & @ScriptDir & "\blabla_Version_2.2.7.msi")

WinWaitActive ("blabla","Welcome to the blabla Setup Wizard")

ControlClick ("blabla","Welcome to the blabla Setup Wizard","Button1")

WinWaitActive ("blabla")

ControlClick ("blabla","Select Installation Folder","Button1")

WinWaitActive ("blabla")

ControlFocus ("blabla","TPC Settings","WindowsForms10.EDIT.app.0.378734a1")

ControlSetText ("blabla","","WindowsForms10.EDIT.app.0.378734a1","server.lala.de")

ControlClick ("blabla","TPC Settings","WindowsForms10.BUTTON.app.0.378734a2")

WinWaitActive ("blabla","Installation Complete")

ControlClick ("blabla","Installation Complete","Button1")
Sobald ich das außerhalt der Opsi Umgebung mache geht alles wunderbar.
Baue ich die Geschichte als Paket kann auf die *.msi nicht zugegriffen werden.
Ich weiß dass das eher ein AutoIt Problem zu sein scheint aber vllt. hat ja jmd. schon ehrfahren in Kombination von beidem.

Danke für die Antworten

Re: Installation per AutoIt

Verfasst: 28 Jul 2010, 10:25
von sschindler
Hallo,

liegt den auf dem Client auf dem das Paket installiert werden soll das MSI Paket auch an der angegebenen stelle?
Hat der pcpatch User darauf zugriff? Zum testen mal versucht mit einem festen Pfad zu arbeiten?

Gruß

Re: Installation per AutoIt

Verfasst: 28 Jul 2010, 16:19
von ABrandt
Die *.msi Datei liegt auf dem "pcbin" share im install ordner
\\opsi_share\install\program\blabla.msi

mit dem ersten Teil der "Run" Anweisung sage ich ihm doch bloß
er soll die "msiexec.exe" aus dem SystemDir (sprich Windows Ordner)
nehmen und im zweiten Teil die *.msi aus dem ScriptPath sprich \\opsi_share\install\program\blabla.msi.

An sich hat der User pcpatch alle Zugriffsrechte auf einem Client.
Ist per SAMBA Ldapp Authentifizierung.

Re: Installation per AutoIt

Verfasst: 28 Jul 2010, 18:02
von COMaction
Hallo,

:?: :?: :?:

Sorry ich versteh da was nicht. Ihr redet von einer MSI Datei. Ich sehe eine Exe Datei.
%ScriptPath%\blabla.msi.exe
Die *.msi Datei liegt auf dem "pcbin" share im install ordner
\\opsi_share\install\program\blabla.msi
Dann steht im Autoitcode:
Run (@SystemDir & "\msiexec.exe /i " & @ScriptDir & "\blabla_Version_2.2.7.msi")
Auch hier wenn doch die Datei blabla.msi.exe heißt, wie soll er die finden?

Dann msiexe.exe musst Du keinem Pfad zuweisen. Zudem steht in der Anweisung ScriptDir soll das nicht ScriptPath heißen?

Ich kenn mich mit Autoit nicht aus. Aber wenn ich mir das so durchlese...... Passt das nicht was da geschrieben wird.

Gruß
Michael

Re: Installation per AutoIt

Verfasst: 28 Jul 2010, 18:27
von ABrandt
Erst einmal Danke dass ihr euch meiner annehmt. ;)

In der *.ins Datei weise ich auf eine per AutoIt gescriptete (compilierte) *.exe hin.
D.h. man kann damit den Installationsablauf eines Setups scripten indem man sagt welcher
Knopf zu welcher Zeit gedrückt werden soll um somit den kompletten Prozess zu automatisieren.
Mit dem "Run" befehl der in der AutoIt erstellten *.exe steht, möchte ich einfach nur die *.msi aufrufen.
Deswegen spreche ich von dem aufrufen der *.msi Datei. Aber wie ich in der Thread eröffnung
schon geschrieben habe wird das eher ein AutoIt Problem sein. Ich denke dass die *.msi wohl nicht gefunden wird von der "gebauten" *.exe
Run (@SystemDir & "\msiexec.exe /i " & @ScriptDir & "\blabla_Version_2.2.7.msi")
ScriptPath wäre richtig damit OPSI weiß wo dieses File liegt aber AutoIt versteht das nicht.
Deswegen kann ich in dem AutoIt script, zumindest nicht das ich wüsste, damit nicht arbeiten.
Da kenn ich halt nur "@SystemDir" und "@ScriptDir".

Ich weiß das ganze klingt verwirrend ist aber super wenn man wirklich komplette Settings die evtl.
in einer Installation gesetzt werden müssen (Server/Port/ etc.) nicht mehr selbst tippen muss sondern diese
compilierte *.exe halt selbst macht.

Wir haben in der Firma z.B. einige Tools da sind solche Einstellungen im Setup gefordert.
Wenn ich einem User jetzt das Paket mit dem Tool zuweise und der beim Neustart da eine Installation
findet , in dem dieser zich einstellungen machen muss steigt mir die chefetage irgendwann aufs dach.
Daher erstelle ich mit AutoIt eine neue *.exe wo ich wiederrum alles gescripte habe und alle sind glücklich und zufrieden.
Und da habe ich dieses besagte Problem auch nicht. Per "Run" eine *.exe aufrufen geht tadellos nur halt mit der *.msi jetzt nicht.

Re: Installation per AutoIt

Verfasst: 03 Aug 2010, 15:33
von sschindler
Ich würde mir zum Testen trotzdem den Werte von @Scriptdir einmal ausgeben lassen, bzw. feste Pfade benutzen. Es muss ja einen Grund geben wieso autoit deine *.msi nicht findet ;)
Ich weiss nämlich nicht ob @ScriptDir die Linuxschreibweite ( also /ordner/.../bla.msi.exe) ausgibt oder das schon für Windows zu \ übersetzt.