Das Problem:

Nach Windows installation sollte verschiedene programme installiert und konfiguriert werden, und das dauert von 30 bis zu 2 stunden. Außerdem hängen die Programme von der Abteilung und Position des Mitarbeiters ab.

In der Installationsabteilung Arbeitet nur ein Person und sie installiert Rechner für Alle Mitarbeiter in Deutschland. Diese person installiert ca. 1000 Laptops, pc und Tablets pro Jahr. So natürlisch ist das es kann zu fehler kommen.

Die Lösung:

Powershell. Alle Rechne in das Unternehmen laufen unter Windows 10, Powershell war erste Logisch wahl.
Erste script hat ca 6 monate funktioniert bis sein schwerwiegender Mangel ans Licht kam. Völliger Mangel an Flexibilität. Jede Änderung des Programmpfades oder der Konfiguration erforderte eine Änderung des Codes.

What if…?

Was wäre, wenn schreiben wir das ganze Pfad mit options ins .xml?
Und So würde letzte wersion geboren.

XML

Die .xml-Datei ist ein Handbuch für die automatische Installation, sie enthält Informationen über Programme, die installiert werden müssen, Dateien, die kopiert werden müssen.

<?xml version="1.0"?>
<install>
    <info>
        <name></name>
        <dependence></dependence>
        <date></date>
        <author></author>
        <stepscount></stepscount>
    </info>
    <data>
        <step>
            <name></name>
            <option></option>
            <path></path>
            <prams></prams>
	    <folder_name></folder_name>
	    <dest_path></dest_path>
        </step>
    </data>
</install>

Info

Enthält grundlegende Informationen und eine Datei.

  • name – Klarer und verständlicher Name, er wird in ein Log geschrieben.
  • dependence – Abhängigkeiten, Link zu einem anderen für diese Installation erforderlichen Xml. Es wird zuerst installiert.
  • date – Datum, an dem die Datei erstellt wurde.
  • author – Autor.
  • stepscount – Anzahl der Schritte
  • reboot – ob Rechner neue gestarten muss

Step

Enthält Anweisungen für einen einzelnen Schritt, die Installation des Programms, das Kopieren des Ordners oder die Erstellung eines neuen Ordners.

  • name – Name für diesen Schritt, er wird in Log gespeichert und während der Installation angezeigt.
  • option – Die gewählte Option, was zu tun ist.
  • path – Pfad zum installierten Programm, Ordner, in dem der Ordner angelegt/kopiert werden soll.
  • prams – Zusätzliche Parameter für die Software-Installation.
  • folder_name – Name für neu erstellten Ordner.
  • dest_path – Pfad zum Zielordner.

Option

  • install – Installieren des Programms
    • benötigt path
    • optional parms
  • create_folder – erstellt einen neuen Ordner
    • benötigt path
    • benötigt folder name
  • copy_folder – Kopieren den Ordner
    • benötigt path
    • benötigt dest_path
  • script – Startet das .bat-Skript
    • benötigt path

Variable

Variablen, die zum Erstellen oder Kopieren von Dateien und/oder Ordnern verwendet werden.

  • %FAV%C:\Users\sscextoki\Favorites
  • %DESKTOP%C:\Users\sscextoki\Desktop
  • %DOCU%C:\Users\sscextoki\Documents
  • %APPDATA%C:\Users\sscextoki\AppData\Roaming
  • %ProgramFiles%C:\Program Files

Starter.ps1

Das ist Powershell script mit Einfahe GUI.

Der Script komm in kurze auf mein GitHub

Installator

Es liest die Daten aus der xml-Datei und folgt den darin enthaltenen Anweisungen.

Parameter

  • -XML – Ort der xml-Datei
  • -Cleanup – Mit dieser Option das Skript reinigt die Registrierung nach Abschluss der Arbeit und kopiert die Protokolldateien in den richtigen Ordner.
  • -IgnoreDependence – das Skript ignoriert die Abhängigkeiten von Xml-Dateien

Alle Dataien befindet sicht auf GitHub

https://github.com/oskar15/Autounstall

Kategorien: Blog