Scripting Host
Zuletzt geändert: 14.03.2026 10:18

Scripting Host (PowerShell) #

PowerShell-Beispiele für den Zugriff auf EULANDA über COM-Automation. Die Objektreferenz finden Sie unter iScript / Scripting Host.

Voraussetzungen #

EULANDA muss einmalig als COM-Server registriert sein:

# Als Administrator ausführen
& "C:\Program Files (x86)\EULANDA\EULANDA.exe" /REGSERVER

Mandanten auflisten #

Listet alle verfügbaren EULANDA-Mandanten auf.

$App = New-Object -ComObject "Eulanda.Application"

for ($i = 0; $i -lt $App.ClientCount; $i++) {
    Write-Host ("{0}. {1}" -f ($i + 1), $App.Clients($i).Alias)
}

[System.Runtime.InteropServices.Marshal]::ReleaseComObject($App) | Out-Null

Adresse abfragen #

Sucht die erste Adresse, deren Matchcode mit “b” beginnt, und zeigt die Kontaktdaten an.

$App = New-Object -ComObject "Eulanda.Application"
$Cli = $App.Clients(0)
$Cli.Active = $true

$DS = $Cli.CreateDataset("Adresse")
$DS.Search()
$DS.Values("Match") = "b*"
$DS.Post()

Write-Host "Ort: $($DS.Values('PLZ')) $($DS.Values('Ort'))"
Write-Host "Tel: $($DS.Values('Tel'))"
Write-Host "Match: $($DS.Values('Match'))"
Write-Host "EMail: $($DS.Values('EMail'))"

[System.Runtime.InteropServices.Marshal]::ReleaseComObject($DS) | Out-Null
[System.Runtime.InteropServices.Marshal]::ReleaseComObject($Cli) | Out-Null
[System.Runtime.InteropServices.Marshal]::ReleaseComObject($App) | Out-Null

Zugriff auf Script-Bibliotheken #

Zugriff auf ellib, userlib und andere Bibliotheken:

$App = New-Object -ComObject "Eulanda.Application"
$Client = $App.Clients("MeinMandant")
$Client.Active = $true

$Context = $Client.CreateObject("Context")
$Context.userlib.HelloWorld()

[System.Runtime.InteropServices.Marshal]::ReleaseComObject($Context) | Out-Null
[System.Runtime.InteropServices.Marshal]::ReleaseComObject($Client) | Out-Null
[System.Runtime.InteropServices.Marshal]::ReleaseComObject($App) | Out-Null

Hinweis: In PowerShell sollten COM-Objekte nach der Verwendung explizit mit ReleaseComObject freigegeben werden, damit der COM-Server sauber heruntergefahren wird.

Die Eigenschaft $Client.Properties("FOLDER.DESKTOP") liefert z.B. den Desktop-Pfad. Eine Übersicht aller Properties finden Sie unter Client.Properties.