lang/ps/ WindowsRegistry
FL Studio Wallpaper Example
Getting a registry key
$regpath = "HKCU:\SOFTWARE\Image-Line\FL Studio 21\General"
(get-itemproperty -path $regpath -name BackPicFileName).BackPicFileName
Setting a registry key
$regpath = "HKCU:\SOFTWARE\Image-Line\FL Studio 21\General"
$tmp = (Get-ItemProperty -path $regpath -name BackPicFilename).BackPicFileName
Set-ItemProperty -path $regpath -name BackPicFileName -value ($tmp.replace("0008", "0100")) # string replace
Set-ItemProperty -path $regpath -name BackPicFileName -value ($tmp -replace "\d{4}", "0100") # regex replace
Picking a wallpaper at random
$wp_dir = "C:\Users\john\Pictures\Wallpaper\mountains_dark"
$regkey = "HKCU:\SOFTWARE\Image-Line\FL Studio 21\General"
$regname = "BackPicFileName"
$fs = Get-ChildItem $wp_dir -filter "*.jpg"
$i = Get-Random $fs.Length
$f = $fs[$i]
$wp = $wp_dir + "\" + $f.Name
Set-ItemProperty -path $regkey -name $regname -value $wp
echo ("Set background to: " + (Get-ItemProperty -path $regkey).BackPicFileName)