Passwort vergessen?

Benutzername vergessen?

Alles rund um IT, Web und Entwicklung.
Von Nutzern für Nutzer.

(Autoit) Download einer Datei mit anschließendem Ausführen



In diesem Artikel werde ich euch zeigen wie ihr mit Autoit Dateien downloaden und anschließend ausführen könnt.

Befehle die ihr dazu benötigt sind folgende:

HttpSetUserAgent( "user agent" )
 - Um einen anderen User Agent einzustellen, da manche Seiten den von Autoit Typischen nicht annehmen

InetGet( "URL" [,"filename" [, options [, background]]] )
- Um die eigentliche Datei zu downloaden

InetGetInfo( [ handle [, index ]] )
- Informationen über die Datei auszulesen, zum Beispiel die Größe

InetGetSize ( "URL" [, options ] )
- Gibt die Größe einer Datei im Internet zurück

InetClose ( handle )
- Schließt ein Handle welches von InetGet zurückgegeben wurde.

FileGetSize ( "filename" )
- Gibt die Größe einer Datei in Bytes zurück

FileExists ( "path" )
- Überprüft ob eine Datei existiert

ShellExecute ( "filename" [, "parameters" [, "workingdir" [, "verb" [, showflag]]]] )
- Führt ein Programm durch Verwendung Shell Execute API aus. Optional: Run oder RunAs


Soo eigentlich ist es Recht einfach ;)
Dann mal Los ;)

#RequireAdmin 
- RequireAdmin würde ich immer nutzen, da auf manchen Windows Betriebssystemen(Vista,7) Adminrechte gebraucht werden um Sachen zu downloaden oder zu starten. Kommt halt auf die Einstellungen an ;)

Global Const $sDownloadLink = "www.randomsite.com/update.exe"
Global Const $sSavePath = @TempDir&"\update.exe"

- Hier deklarieren wir 2 globale unveränderliche Variablen. Einmal den Download "Pfad" der update Datei und einmal den Ort wo diese gespeichert werden soll :).

Local $DownloadFile = InetGet($sDownloadLink,$sSavePath,1,1)

Do
Sleep(250)
Until InetGetInfo($DownloadFile, 2)

- Nun wartet das Skript bis der Download abgeschlossen ist.

If FileExists($sSavePath) Then
If FileGetSize($sSavePath) = InetGetSize($sDownloadLink) Then
ShellExecute($sSavePath)
EndIf
EndIf

- Wenn die Datei existiert und die Bytes Zahl der lokalen Datei gleich groß der im Internet ist, dann führe diese aus.

So ich hoffe ich konnte jemandem helfen

mfg shortx :)

PS: Die *.au3 liegt im DataCloud bei ;)

Ähnliche Artikel

Raspberry Pi Starter Kit
DataCloud

Hinterlasse einen Kommentar

Ich habe die Datenschutzerklärung zur Kenntnis genommen und stimme einer elektronischen Speicherung und Verarbeitung meiner eingegebenen Daten zur Beantwortung der Anfrage zu.

GTA SA Online spielen

12.10.2013 20:29

Ich habe online mehr als 4 Stunden gesucht, aber keine Einträge gefunden, die so klasse wie Deine sind.

Das ist echt wunderbar für mich!