Set Eulanda Registry String
Zuletzt geändert: 19.04.2026 03:03

Übersicht

Set-EulandaRegistryString #

ÜBERSICHT #

Schreibt einen String-Value in die SQL-Registry (und aktualisiert den HiveStore-Cache bei aktivem Hive-Modus).

SYNTAX #

Set-EulandaRegistryString [-Conn] <__ComObject> [[-Udl] <string>] [[-ConnStr] <string>]
    [<CommonParameters>]

BESCHREIBUNG #

Write-Through-Semantik: die Datenbank ist Quelle der Wahrheit und wird zuerst beschrieben (cn_RegWriteString). Im Hive-Modus wird anschließend der Wert auch in der lokalen Hive-Datei aktualisiert - so dass der nächste Cache-Hit bereits den neuen Wert sieht, ohne Populate.

Der __EULXT_FetchedAt__-Marker des Subtrees wird NICHT zurückgesetzt. Begründung: die anderen Values in diesem Subtree wurden nicht re-fetched aus der DB, also darf der Subtree nicht fälschlich als “komplett frisch” markiert werden. Wer nach dem Schreiben garantiert einen vollständig frischen Subtree haben will:

Set-EulandaRegistryString -Path X -Name Y -Value 'neu'
Clear-EulandaRegistryCache -Path X   # nächster Read triggert Populate
Secret-Values (Name-Pattern *secret*, *password*, *token* etc.) werden im Hive automatisch DPAPI-verschlüsselt abgelegt, in der DB bleibt der Klartext - das ist die Standard-Registry-Semantik.

PARAMETER #

-Path #

Ziel-Pfad in der SQL-Registry. Legt Sub-Keys bei Bedarf an.

-Name #

Value-Name unter dem Pfad.

-Value #

Zu schreibender String.

-Conn #

Type: __ComObject

Bestehende ADODB.Connection. Alternativ -Udl oder -ConnStr.

AUSGABEN #

[int] - Anzahl geschriebener Values (typisch 1).

BEISPIELE #

Set-EulandaRegistryString -Conn $conn `
  -Path '\MODULES\Grundwerte\Firmenstamm' `
  -Name 'CreditorID' -Value 'DE987654321'
# Mit anschliessendem Clear für starke Konsistenz
Set-EulandaRegistryString -Conn $conn -Path '\SYSTEM\Config' `
  -Name 'ApiUrl' -Value 'https://api.example.com'
Clear-EulandaRegistryCache -Path '\SYSTEM\Config'

HINWEISE #

Nutzt $script:RegStore.Set - im Hive-Modus Write-Through via New-EulRegHiveStore, im Legacy-/Off-Modus direkt cn_RegWriteString.