Initialisierungsdatei

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Eine Initialisierungsdatei (kurz INI-Datei) ist eine Textdatei, die Wertepaare im INI-Format enthält. Initialisierungsdateien werden häufig von Microsoft-Windows-Anwendungen als Konfigurationsdatei genutzt. Während es in frühen Windows-Ausgaben (bis Windows 3.1) noch das einzige Format gewesen war, sind heutzutage (ab Windows 95 und Windows NT 4.0) weitaus überwiegend Einträge in der Registrierungsdatenbank üblich.

Auch betriebssystemübergreifend lassen sich Programme mit ähnlichen Dateien formatieren. Es kommt hier als einfach aufgebautes und leicht lesbares Format zum Einsatz.

Aufbau[Bearbeiten | Quelltext bearbeiten]

Ein Wertepaar besteht aus einem Schlüssel und einem Wert, die per Gleichheitszeichen getrennt werden. Mehrere Wertepaare werden durch Zeilenumbrüche getrennt. Wertepaare lassen sich in Sektionen gruppieren, die in eckigen Klammern notiert werden. Außerdem erlaubt das Dateiformat die Definition von Kommentarzeilen, die mit einem Semikolon beginnen.

Beispiel:

;Kommentar

[Sektion]
;Kommentar
Schlüssel=Wert

Beim Erstellen einer INI-Datei sind folgende Regeln zu beachten:

  • Jede Sektion darf nur einmal vorkommen.
  • Jeder Schlüssel darf nur einmal je Sektion vorkommen.
  • Auf Werte wird mittels Sektion und Schlüssel zugegriffen.
  • Kommentare werden mit einem ";" eingeleitet.
  • Kommentare dürfen nur auf separaten Zeilen (nicht hinter Sektionsüberschriften oder Schlüsseln) stehen.
  • Leerzeichen und Anführungszeichen werden von verschiedenen Programmen teilweise unterschiedlich behandelt.
  • Groß- und Kleinschreibung wird nicht unterschieden
  • Aussagenlogik: No und False werden als 0, True und Yes als 1 interpretiert.

Es gibt Dateien mit nahezu demselben Aufbau, die sich lediglich durch folgende Merkmale unterscheiden:

  • Andere (z. B. conf und cfg) oder fehlende Dateiendung
  • Einleitung von Kommentaren mit einem anderen Zeichen (z. B. "#").

Ein Beispiel für eine solche Variation findet sich in den Konfigurationsdateien für Subversion-Repositories.

Alternative Formate[Bearbeiten | Quelltext bearbeiten]

  • JSON (JavaScript Object Notation)
  • XML (Extensible Markup Language)
  • YAML (YAML Ain’t Markup Language)

Speicherort[Bearbeiten | Quelltext bearbeiten]

Beispiel einer benutzerfreundlichen Auswahlmöglichkeit zur Festlegung des Speicherortes

In früheren Windows-Ausgaben (mit der Einführung von NTFS) existierten zwei alternative/konkurrierende Philosophien für den Standard-Dateipfad zur INI-Ablage, wobei auf der einen Seite die Benutzerfreundlichkeit und auf der anderen Seite die Sicherheit im Vordergrund stand.

Im Folgenden am Beispiel von Windows XP:

  • \Dokumente und Einstellungen\<Benutzername>\Anwendungsdaten\<Programmname>\
    (allgemein, über eine sogenannte Umgebungsvariable: %APPDATA%\<Programmname>; englisch: \Documents and Settings\<Benutzername>\Application Data\<Programmname>\)
  • \Programme\<Programmname>\
    (allgemein: %PROGRAMFILES%\<Programmname>; englisch: \Program Files\<Programmname>\)

Ab Windows Vista wird die Veränderung des Programme-Ordners durch Benutzer mit eingeschränkten Rechten (oder Nicht-Administratoren) standardmäßig von der Benutzerkontensteuerung blockiert, wovon auch dort gespeicherte INI-Dateien betroffen sind. Manche Programme vergeben daher bei der Installation sämtliche Rechte für die installierten Dateien an den Benutzer „Jeder“. In diesen Windows-Versionen existieren ggf. zudem automatisch erzeugte Kopien der INI-Dateien im Schattenverzeichnis $USERDIR$\AppData\Local\VirtualStore\Windows\.

Anwendungen, die ihre Einstellungen in ihrem eigenen Programmordner ablegen (beispielsweise %PROGRAMFILES%\<Programmname>\ oder %UserProfile%\Desktop\<Programmname>\), bieten den Vorteil, dass sie leichter auf einen anderen Rechner übertragbar sind, haben aber den Nachteil, dass sich alle Benutzer der Anwendung auf einem Rechner diese Einstellungen teilen. Solche Anwendungen werden auch als portabel bezeichnet. Voraussetzung zum Ändern dieser Einstellungen ist, dass der Benutzer Schreibrechte auf die INI-Datei (und den Programmordner) besitzt.

Weblinks[Bearbeiten | Quelltext bearbeiten]