Problem with worklet that manipulates registry

Hi all. I have a worklet that runs the following code in the remediation section. It doesn’t seem to be working. It works just fine if I run it in a powershell window (that runs as admin).

What gives? I’m trying to disable auto-startup of Starleaf.

$registryPath = "HKLM:\Software\Microsoft\Windows\CurrentVersion\Explorer\StartupApproved\StartupFolder"
$registryProperty = "StarLeaf.lnk"
$enableValue = ([byte[]](0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00))
$disableValue = ([byte[]](0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00))

Set-ItemProperty -Path $registryPath -Name $registryProperty -Value $disableValue -Type Binary

Figured out the problem with the help of support. OS bitness issue. The solution is to wrap the script in a scriptblock and use sysnative. :slight_smile:

You can read more about it here https://support.automox.com/en/articles/3075113-enforce-windows-registry-settings-worklet

1 Like