# Problembehandlung bei fehlgeschlagenen chocolatey-Paketen

Wie im vorherigen Abschnitt erläutert, besteht die Installation eines chocolatey-Pakets aus mehreren Phasen:

1. Initialisierung der chocolatey-Umgebung und Variablen
2. Überprüfung auf vorhandene Installationen der zu installierenden Software
3. Mögliche Deinstallation vorhandener Installationen
4. Herunterladen von Binärdateien
5. Tatsächliche Installation mithilfe der heruntergeladenen Setup-Binärdateien.
6. Nachgelagerte Aktionen, die nach der Installation ausgeführt werden

Auch wenn jede Phase scheitern und dazu führen kann, dass die Installation abgebrochen wird, ist die Wahrscheinlichkeit für Fehler in den Phasen 3, 4 und 5 am höchsten.

## Die richtige Fehlermeldung finden

Es ist wichtig zu wissen, dass jede fehlgeschlagene Installation die standardmäßigen chocolatey-Fehler-Stackmeldungen zurückgibt, die in etwa so aussehen:

{% code overflow="wrap" fullWidth="false" %}

```log
2021-08-23 09:48:58,465 [DEBUG] - Verschiebe 'C:\ProgramData\chocolatey\lib\generic-autodesk-navisworks-freedom-2022'
 nach 'C:\ProgramData\chocolatey\lib-bad\generic-autodesk-navisworks-freedom-2022'
2021-08-23 09:48:58,480 [WARN ] - Dies ist Versuch 1/3. Neuer Versuch nach 300 Millisekunden.
 Fehler in Warnung umgewandelt:
 (5) Zugriff verweigert: [\\?\C:\ProgramData\chocolatey\lib-bad\generic-autodesk-navisworks-freedom-2022]
```

{% endcode %}

Die `Zugriff verweigert` Meldung gehört zum standardmäßigen Fehler-Stack von chocolatey und muss ignoriert werden. Der tatsächliche Fehler, der dazu führt, dass die Paketinstallation fehlschlägt, befindet sich irgendwo in den vorherigen Zeilen der Protokolldatei. Die Suche nach dem Tag `[ERROR]` hilft dabei, die richtigen Meldungen zu finden.

Sieh dir an, wie in diesem Beispiel der eigentliche Fehler oben auftritt (404 beim Download), aber der chocolatey-Fehler-Stack später einige irreführende Meldungen wie 'Zugriff verweigert' ausgibt.

<figure><img src="/files/eca332454d69d9d131d193a6b3ea38e78dfefffb" alt=""><figcaption><p>Tatsächlicher Downloadfehler oben, gefolgt vom standardmäßigen chocolatey-Fehler-Stack unten, kann irreführend sein.</p></figcaption></figure>

## Beispiele für fehlgeschlagene Installationen

### Fehler während der Initialisierung

Während der Initialisierungsphase können aus folgenden Gründen Fehler auftreten:

* Problem mit der chocolatey-Installation selbst (defekte Konfiguration, fehlende Dateien):

{% code overflow="wrap" %}

```log
2023-10-10 10:28:32,523 [ERROR] - Fehler beim Deserialisieren der Antwort vom Typ chocolatey.infrastructure.app.configuration.ConfigFileSettings:
 '.', hexadezimaler Wert 0x00, ist ein ungültiges Zeichen. Zeile 1, Position 1.
2023-10-10 10:28:32,535 [ERROR] - '.', hexadezimaler Wert 0x00, ist ein ungültiges Zeichen. Zeile 1, Position 1.
2023-10-10 10:28:32,537 [DEBUG] - Beende mit 1
```

{% endcode %}

{% hint style="warning" %}
Vorsicht, da diese (leicht ähnliche) Meldung auch in der `chocolatey.log` erscheinen kann, dies ist jedoch sicher zu ignorieren und erfordert keine Aktion!

{% code overflow="wrap" %}

```log
2023-11-21 11:46:10,365 [ERROR] - Fehler beim Serialisieren des Typs chocolatey.infrastructure.app.configuration.ConfigFileSettings:
 Der Zugriff auf den Pfad 'C:\ProgramData\chocolatey\config\chocolatey.config.update' wurde verweigert.
```

{% endcode %}
{% endhint %}

* Netzwerkproblem, wenn der RealmJoin-nuget-Server nicht erreichbar ist (siehe [Infrastrukturüberlegungen](/de/realmjoin-bereitstellung/infrastructure.md#realmjoin-connection-endpoints)):

{% code overflow="wrap" %}

```log
2023-09-08 13:01:47,335 [ERROR] - generic-adobe-reader-dc-continuous nicht installiert. Das Paket wurde mit den angegebenen Quellen nicht gefunden.
```

{% endcode %}

* Problem mit fehlenden obligatorischen Paketparametern:

{% code overflow="wrap" %}

```log
2023-09-14 13:53:33,982 [ERROR] - ERROR: Obligatorischer Parameter 'Serial' nicht angegeben, Abbruch!
```

{% endcode %}

### Fehler während des Downloads

Bei Fehlern im Zusammenhang mit dem Herunterladen der Binärdateien enthält die Fehlermeldung normalerweise die Download-URL, die `cdn.realmjoin.com`enthält, Beispiele:

{% code overflow="wrap" %}

```log
2023-10-16 13:04:52,952 [ERROR] - ERROR: Die entfernte Datei existiert entweder nicht, ist nicht autorisiert oder für die URL 'https://cdn.realmjoin.com/blobs/generic/generic-adobe-acrobat-dc-continuous/AcrobatDCUpd2300620320.msp' gesperrt. Exception calling "GetResult" with "0" argument(s): "Nicht genügend Speicherplatz auf dem Datenträger verfügbar"
```

{% endcode %}

{% code overflow="wrap" %}

```log
2021-08-23 09:36:08,874 [ERROR] - ERROR: Die entfernte Datei existiert entweder nicht, ist nicht autorisiert oder für die URL 'https://cdn.realmjoin.com/blobs/generic/generic-adobe-acrobat-dc-continuous/AcrobatDCUpd2300620320.msp' gesperrt. Exception calling "GetResult" with "0" argument(s): "Es ist nicht genügend Speicherplatz auf dem Datenträger vorhanden"
```

{% endcode %}

### Fehler während des (De-)Installationsprozesses

Fehler, die während des eigentlichen (De-)Installationsprozesses mithilfe der heruntergeladenen Binärdatei auftreten, lassen sich am besten mit zwei Dingen beheben:

1. Dem vom Setup-Prozess zurückgegebenen Exit-Code.
2. Der vom Setup-Prozess geschriebene Protokolldatei, zu finden unter `C:\WINDOWS\Logs\RealmJoin\Packages\<package-id>\`sofern der Installer die Möglichkeit zum Schreiben eines Protokolls bietet.

{% hint style="info" %}
Wenn ein MSI-Installer verwendet wurde, sind die Exit-Codes standardisiert und können nachgeschlagen werden [hier](https://learn.microsoft.com/en-us/windows/win32/msi/error-codes). Zusätzlich schreiben MSI-Installer immer Protokolldateien in den oben genannten Ordner. Besonders wenn der Exit-Code `1603` zurückgegeben wurde (generischer MSI-Fehler), ist die MSI-Protokolldatei für die Fehlerbehebung zwingend erforderlich.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.realmjoin.com/de/sonstiges/troubleshooting/package-installation-issues/troubleshooting-failed-chocolatey-packages.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
