arkadaşlar selam. Kendim bir script yazdım fakat düzgün çalışmıyor yani verdiğim emri yerine getirmiyor.

emrim bu şekilde

regedit dosyasında
Bilgisayar > HKEY_CURRENT_USER > ilk sırada 9 karakterli bir sayı içeren dosya varsa silsin yoksa diğer adıma geçsin
sonra
Bilgisayar > HKEY_CURRENT_USER > Software > Microsoft > ilk sırada 5 karakterli bir sayı içeren dosya varsa silsin yoksa diğer adıma geçsin
Daha sonra
Bilgisayar > HKEY_LOCAL_MACHINE > SOFTWARE > Microsoft > Cryptography dosyasına bassın.
İçerisinde bulunan Machine Guid adlı dosyayı silsin. Yoksa programı sonlandırsın.

Kendim buna uygun bi script yazdım bakın o da bu şekilde;


# Dosyayı silme fonksiyonu
function SilDosya($registryPath) {
if (Test-Path $registryPath) {
Remove-Item -Path $registryPath -Force -Confirm:$false
Write-Host "$registryPath dosyası silindi."
} else {
Write-Host "$registryPath dosyası bulunamadı."
}
}

# HKCU anahtarındaki tüm dosyaları kontrol et ve işlemi gerçekleştir
$dosyaListesiHKCU = Get-Item -LiteralPath 'HKCU:' | Get-ItemProperty | ForEach-Object { $_.PSChildName }
$ilkDosyaHKCU = $dosyaListesiHKCU | Select-Object -First 1
SilDosya "HKCU:$ilkDosyaHKCU"

# HKCUSoftwareMicrosoft anahtarındaki tüm dosyaları kontrol et ve işlemi gerçekleştir
$dosyaListesiMicrosoft = Get-Item -LiteralPath 'HKCU:SoftwareMicrosoft' | Get-ItemProperty | ForEach-Object { $_.PSChildName }
$ilkDosyaMicrosoft = $dosyaListesiMicrosoft | Select-Object -First 1
SilDosya "HKCU:SoftwareMicrosoft$ilkDosyaMicrosoft"

# HKCUSOFTWAREMicrosoftCryptography anahtarındaki MachineGuid dosyasını sil
SilDosya "HKCU:SOFTWAREMicrosoftCryptographyMachineGuid "

yazdığım kodu powershellde ps1 uzantılı dosya olarak . açtığımda çalışıyor ancak hata veriyor.
Zahmet olmazsa yapabilen var mı?