Seite 2 von 2

Re: Profilbilder rsp. User Account Pictures

Verfasst: 02.08.2024, 20:22
von Holgi
habe noch ein weiteres Script von ChatGPT gefordert:
funktioniert bei mir aber ebenfalls nicht. Bild (jpg) liegt in 448X448 vor.

Code: Alles auswählen

# Pfad zur neuen Bilddatei
$imagePath = "C:\Pfad\zum\Bild.jpg"

# Stelle sicher, dass das Bild existiert
if (-Not (Test-Path -Path $imagePath)) {
    Write-Host "Das Bild wurde nicht gefunden. Bitte überprüfe den Pfad." -ForegroundColor Red
    exit
}

# Funktionen und Variablen definieren
function Get-UserSID {
    param(
        [string]$userName
    )

    # Query WMI for user SID
    $wmi = Get-WmiObject Win32_UserAccount -Filter "Name='$userName'"
    return $wmi.SID
}

# Aktuellen Benutzer und dessen SID ermitteln
$currentUsername = $env:USERNAME
$userSid = Get-UserSID -userName $currentUsername

# Erforderliche Verzeichnisse
$publicAccountPicturesPath = "$env:PROGRAMDATA\Microsoft\User Account Pictures"
$userAccountPicturesPath = "$env:APPDATA\Microsoft\Windows\AccountPictures"

# Sicherstellen, dass das Verzeichnis existiert
if (-Not (Test-Path -Path $userAccountPicturesPath)) {
    New-Item -ItemType Directory -Path $userAccountPicturesPath -Force | Out-Null
}

# Bild an alle relevanten Stellen kopieren
try {
    # Kopiere Bild zu ProgramData-Verzeichnis
    Copy-Item -Path $imagePath -Destination "$publicAccountPicturesPath\$userSid.jpg" -Force

    # Kopiere Bild zu Benutzer-Verzeichnis
    Copy-Item -Path $imagePath -Destination "$userAccountPicturesPath\$userSid.jpg" -Force

    Write-Host "Das Benutzerprofilbild wurde erfolgreich geändert." -ForegroundColor Green
} catch {
    Write-Host "Es ist ein Fehler beim Ändern des Benutzerprofilbilds aufgetreten: $_" -ForegroundColor Red
}

Re: Profilbilder rsp. User Account Pictures

Verfasst: 02.08.2024, 23:03
von g-force
Hast Du denn die Zeile

Code: Alles auswählen

$imagePath = "C:\Pfad\zum\Bild.jpg"
entsprechend angepasst?
Werden die Bilder weiterhin per "$OEM$" in den angegebenen Pfad kopiert?
Welche Fehlermeldung bekommst Du?

Re: Profilbilder rsp. User Account Pictures

Verfasst: 02.08.2024, 23:09
von Holgi
Bei dem ersten Script im vorherigen Beitrag muss der Name des Bildes gleich dem Usernamen sein.
Beim letzten Script von ChatGPT habe ich den Pfad und Namen angepasst. Fehlermeldung weiß ich jetzt leider nicht mehr. OEM mache ich wie bisher.

Re: Profilbilder rsp. User Account Pictures

Verfasst: 03.08.2024, 10:57
von Holgi
so, hier noch die Fehlermeldung nachgereicht. Die konnte ich so als Batch nicht sehen. Erst wenn ich das Powershell-Script mit

Code: Alles auswählen

.\windows-batchdatei.ps1
aufrufe, dann sehe ich:

Code: Alles auswählen

In C:\users\martin\downloads\Windows-Batchdatei.ps1:44 Zeichen:87
+ ... Ändern des Benutzerprofilbilds aufgetreten: $_" -ForegroundColor Red
+                                                    ~~~~~~~~~~~~~~~~~~~~~~
Die Zeichenfolge hat kein Abschlusszeichen: ".
In C:\users\martin\downloads\Windows-Batchdatei.ps1:43 Zeichen:9
+ } catch {
+         ~
Die schließende "}" fehlt im Anweisungsblock oder der Typdefinition.
    + CategoryInfo          : ParserError: (:) [], ParseException
    + FullyQualifiedErrorId : TerminatorExpectedAtEndOfString
Da fehlt dann wohl noch eine Klammer. Keine Ahnung, wo die hin soll.