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)