Windows Spotlight, farklı arka plan görüntülerini görüntüleyen ve bazen kilit ekranında öneriler sunan kilit ekranı arka planı için bir seçenek olarak Windows 10 da sunulan bir özelliktir. Bu özellik tüm Windows 10 masa üstü sürümlerinde yer almaktadır.

Bazı şirketlerin iş ihtiyacı nedeni ile lock screen olarak ifade ettiğim

Kısa cevap: “Force a specific default lock screen and logon image” GPO ilkesi yalnızca Enterprise, Education ve Server sürümlerinde çalışır; Windows Pro’da çalışmaz. Pro makinelerde kurumsal bir kilit ekranı resmi vermek için iki yol var: PersonalizationCSP kayıt defteri değerlerini GPO ile dağıtmak veya bir PowerShell betiğiyle resmi ayarlamak. İkisini de aşağıda anlattım.

Güncelleme (Ekim 2026): Windows 10’un desteği 14 Ekim 2025’te sona erdi. Yazının başlığında Windows 10 geçse de buradaki ilke ve yöntemler Windows 11 için de geçerli. Yazıyı Windows 11 notlarıyla ve PersonalizationCSP yöntemiyle güncelledim.

Windows Spotlight Nedir?

Windows Spotlight, farklı arka plan görüntülerini gösteren ve bazen kilit ekranında öneriler sunan, kilit ekranı arka planı için bir seçenek olarak sunulan bir özelliktir. Bu özellik Windows 10’un ve Windows 11’in tüm masaüstü sürümlerinde yer alır.

Bazı şirketler iş ihtiyacı nedeniyle, işletim sistemi kilitlendiğinde ortaya çıkan bu kilit ekranı (lock screen) görsellerini kurumsal görsellerle değiştirmek isteyebilir. Enterprise ve Education sürümlerinde bu iş Microsoft’un aşağıdaki makalesine göre kolayca yapılabilir:

Windows Spotlight yapılandırması (Microsoft)

Fakat bu yöntem yalnızca Windows Enterprise ve Education sürümleri için çalışır.

GPO ile Kilit Ekranı Resmini Zorlamak (Enterprise ve Education)

Aşağıdaki yolu takip edebilirsiniz:

Computer Configuration\Administrative Templates\Control Panel\Personalization\Force a specific default lock screen and logon image

Force a specific default lock screen and logon image ilkesi: Pro sürümünde desteklenmiyor

Gördüğünüz gibi Pro sürümü için bu basit yöntem işe yaramıyor.

Hatta Microsoft’un aynı makalesinde Pro için yalnızca üçüncü taraf uygulama önerilerinin kapatılması öneriliyor. Makalenin ilgili bölümü şöyle:

For managed devices running Windows 10 Enterprise and Windows 10 Education, enterprise administrators can configure a mobile device management (MDM) or Group Policy setting to prevent users from using the Windows Spotlight background. For managed devices running Windows 10 Pro, version 1607, administrators can disable suggestions for third party apps.

Pro’da üçüncü taraf önerilerini kapatmak için Computer Configuration\Administrative Templates\Windows Components\Cloud Content\Do not suggest third-party content in Windows Spotlight ilkesi kullanılır.

Dikkat: Animasyon Ayarları Kilit Ekranı Resmini Etkileyebilir

Aşağıdaki iki ayardan biri uygulanıyorsa, yani pencere animasyonları kapatılmışsa, kilit ekranında resim görüntülenmeyebilir.

Birinci ayar: This PC > Properties > Advanced system settings > Performance settings > Visual Effects bölümündeki “Animate windows when minimizing and maximizing” kutucuğunun işaretinin kaldırılması.

Visual Effects sekmesinde Animate windows when minimizing and maximizing ayarı

İkinci ayar: Aşağıdaki GPO ayarının etkinleştirilmesi:

Computer Configuration > Administrative Templates > Windows Components > Desktop Window Manager > Do not allow window animations

Do not allow window animations GPO ayarı

Pro Sürümünde Kilit Ekranı Resmini Ayarlamak

Peki bu iki ayarın sorun olmadığını varsayıyoruz ve kullandığımız sürüm Pro ise bu işi GPO ile nasıl yapacağız? İki yöntem var.

Yöntem 1: PersonalizationCSP kayıt defteri değerleri (GPO Preferences ile)

Windows’un kurumsal kilit ekranı resmini okuduğu PersonalizationCSP anahtarını GPO Preferences ile dağıtabilirsiniz. Anahtar: HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\PersonalizationCSP

  • LockScreenImagePath (REG_SZ): makinedeki yerel görsel yolu, örneğin C:\Windows\Web\Screen\kurumsal-kilit.jpg
  • LockScreenImageUrl (REG_SZ): aynı yol
  • LockScreenImageStatus (REG_DWORD): 1

Masaüstü arka planı için aynı mantıkla DesktopImagePath, DesktopImageUrl ve DesktopImageStatus değerleri kullanılır. Görsel dosyasını da Computer Configuration > Preferences > Windows Settings > Files ile makinelere kopyalayabilirsiniz.

Önemli: Microsoft’un Personalization CSP belgesi bu CSP’nin Enterprise ve Education sürümleri için desteklendiğini belirtir (yeni Windows 11 yapılarında düğüm tablolarında Pro da işaretlidir). Kullanıcı raporlarına göre bu değerler Pro’da da çalışıyor, ancak bu Microsoft’un Pro için garanti ettiği bir yöntem değil. Kendi sürümünüzde (Windows 10 veya 11, ilgili derleme) önce bir test makinesinde deneyin.

Yöntem 2: PowerShell betiği

İlk olarak aşağıdaki komutları bir not defterine alıp .ps1 uzantısıyla kaydediyoruz:

# Change this to the path where you keep the desired background image
$imagePath = '(Path to Image, include single quotes)'
$newImagePath = [System.IO.Path]::GetDirectoryName($imagePath) + '\' + (New-Guid).Guid + [System.IO.Path]::GetExtension($imagePath)
Copy-Item $imagePath $newImagePath

[Windows.System.UserProfile.LockScreen,Windows.System.UserProfile,ContentType=WindowsRuntime] | Out-Null
Add-Type -AssemblyName System.Runtime.WindowsRuntime
$asTaskGeneric = ([System.WindowsRuntimeSystemExtensions].GetMethods() | ? { $_.Name -eq 'AsTask' -and $_.GetParameters().Count -eq 1 -and $_.GetParameters()[0].ParameterType.Name -eq 'IAsyncOperation`1' })[0]

Function Await($WinRtTask, $ResultType) {
    $asTask = $asTaskGeneric.MakeGenericMethod($ResultType)
    $netTask = $asTask.Invoke($null, @($WinRtTask))
    $netTask.Wait(-1) | Out-Null
    $netTask.Result
}

Function AwaitAction($WinRtAction) {
    $asTask = ([System.WindowsRuntimeSystemExtensions].GetMethods() | ? { $_.Name -eq 'AsTask' -and $_.GetParameters().Count -eq 1 -and !$_.IsGenericMethod })[0]
    $netTask = $asTask.Invoke($null, @($WinRtAction))
    $netTask.Wait(-1) | Out-Null
}

[Windows.Storage.StorageFile,Windows.Storage,ContentType=WindowsRuntime] | Out-Null
$image = Await ([Windows.Storage.StorageFile]::GetFileFromPathAsync($newImagePath)) ([Windows.Storage.StorageFile])
AwaitAction ([Windows.System.UserProfile.LockScreen]::SetImageFileAsync($image))
Remove-Item $newImagePath

Kullanımı son derece kolay; aşağıdaki gibi bir logon script tanımlamamız yeterli:

.\Set-Screen.ps1 -LockScreenSource "\\SERVER-FS01\LockScreen.jpg" -BackgroundSource "\\SERVER-FS01\BackgroundScreen.jpg" -LogPath "\\SERVER-FS01\Logs"

Log dosyasına ihtiyacınız yoksa:

.\Set-Screen.ps1 -LockScreenSource "\\SERVER-FS01\LockScreen.jpg" -BackgroundSource "\\SERVER-FS01\BackgroundScreen.jpg"

Sadece kilit ekranı için:

.\Set-Screen.ps1 -LockScreenSource "\\SERVER-FS01\LockScreen.jpg" -LogPath "\\SERVER-FS01\Logs"

Sadece masaüstü resmi için:

.\Set-Screen.ps1 -BackgroundSource "\\SERVER-FS01\BackgroundScreen.jpg" -LogPath "\\SERVER-FS01\Logs"

Betiği GPO ile Dağıtmak

Bunu GPO ile nasıl dağıtacağız? Öncelikle yeni veya mevcut bir GPO için bir PowerShell betiği (Startup Script) oluşturmamız gerekiyor. Makine GPO’sunda aşağıdaki alana kadar gelin:

GPO'da Scripts (Startup/Shutdown) altında PowerShell Scripts sekmesi

Buraya bir PowerShell betiği göstereceğiz. Yukarıdaki komut setlerinden istediğinizi bir not defterine alıp sonunu .ps1 olarak kaydedebilirsiniz:

"\\SERVER-FS01\ortak\gpo\Set-Screen.ps1" -LockScreenSource "\\SERVER-FS01\LockScreen.jpg" -BackgroundSource "\\SERVER-FS01\BackgroundScreen.jpg" -LogPath "\\SERVER-FS01\Logs"

Not: İndirdiğiniz PowerShell dosyasını her makinenin erişebileceği bir yere kaydettikten sonra, yukarıdaki gibi bu yolu göstermeniz gerekir. Makinelerin bu paylaşıma okuma yetkisi olmalıdır.

Daha sonra bunu GPO’ya tanımlıyoruz:

PowerShell betiğinin GPO'ya tanımlanması

Burada aklınıza Set-ExecutionPolicy için bir parametre gerekli mi sorusu gelebilir. Makine GPO’su olduğu için buna gerek yoktur.

Bundan sonra yapmanız gereken tek şey, oluşturduğunuz bu GPO’yu bir makine OU’suna bağlamaktır. Sonucu önce küçük bir test OU’sunda doğrulayın, ardından tüm makinelere yayın.

Sık Karşılaşılan Durumlar

  • İlke etkin ama resim değişmiyor: Sürümü kontrol edin. Pro veya Home sürümlerinde “Force a specific default lock screen and logon image” ilkesi uygulanmaz; gpresult /r ilkenin uygulandığını gösterse bile sonuç değişmeyebilir.
  • Resim görüntülenmiyor: Animasyonların kapalı olup olmadığını kontrol edin (yukarıdaki iki ayar).
  • Kullanıcıların kilit ekranını değiştirmesini engellemek: Computer Configuration\Administrative Templates\Control Panel\Personalization\Prevent changing lock screen and logon image ilkesini kullanabilirsiniz; bazı kullanıcı raporlarına göre bu ilke Pro’da da etkili oluyor. Kendi ortamınızda test edin.
  • Değişikliği hemen görmek için: gpupdate /force komutunu çalıştırın ve makineyi yeniden başlatın.

Umarım faydalı bir yazı olmuştur, bir sonraki yazımda görüşmek üzere.

Not: Bu konuda Rıza da güzel bir yazı paylaşmış: Windows Server 2019 Üzerinde GPO ile Screen Lock ve Screen Saver Ayarları (ÇözümPark)

iz işletim sistemi ekranının kilitlendiğinde ortaya çıkan bu görselleri kurumsal görseller ile değiştirmek isteyebilir. Bu durumda aşağıdaki makale ile kolaylıkla yapılabilir;

https://docs.microsoft.com/en-us/windows/configuration/windows-spotlight

Fakat bu yöntem Windows 10 Enterprise ve Windows 10 Education sürümleri için çalışan bir yöntemdir.

Aşağıdaki yolu takip edebilirsiniz;

“Computer Configuration\Administrative Templates\Control Panel\Personalization\Force a specific default lock screen and logon image”

Gördüğünüz gibi Pro sürümü için bu basit yöntem işe yaramıyor.

Hatta aynı makalede 3 parti uygulama önerilmektedir.

For managed devices running Windows 10 Enterprise and Windows 10 Education, enterprise administrators can configure a mobile device management (MDM) or Group Policy setting to prevent users from using the Windows Spotlight background. For managed devices running Windows 10 Pro, version 1607, administrators can disable suggestions for third party apps.

Not: Aşağıdaki iki ayardan birisi açık ise lock screen da resim görüntüleyemezsiniz.

Birinci ayar;

This PC> Properties> Advanced system settings> Performance settings> Visual Effects bölümünde bulunnan “Animate windows when minimizing and maximizing” kutucuğu işaretli olmayacak

Veya ikinci ayar ise aşağıdaki GPO ayarıdır;

Computer Configuration> Administrative Templates> Windows Components> Desktop Windows Manager> Do not allow windows animations.

Peki bu iki ayarın olmadığını düşünüyoruz ve kullandığımız Windows 10 sürümü Pro ise bu işi GPO ile nasıl yapacağız?

İlk olarak aşağıdaki komutu bir note defterine alıp ps1 uzantılı kayıt ediyoruz.

# Change this to the path where you keep the desired background image

$imagePath = ‘(Path to Image, include single quotes)’

$newImagePath = [System.IO.Path]::GetDirectoryName($imagePath) + ‘\’ + (New-Guid).Guid + [System.IO.Path]::GetExtension($imagePath)

Copy-Item $imagePath $newImagePath

[Windows.System.UserProfile.LockScreen,Windows.System.UserProfile,ContentType=WindowsRuntime] | Out-Null

Add-Type -AssemblyName System.Runtime.WindowsRuntime

$asTaskGeneric = ([System.WindowsRuntimeSystemExtensions].GetMethods() | ? { $_.Name -eq ‘AsTask’ -and $_.GetParameters().Count -eq 1 -and $_.GetParameters()[0].ParameterType.Name -eq ‘IAsyncOperation`1’ })[0]

Function Await($WinRtTask, $ResultType) {

    $asTask = $asTaskGeneric.MakeGenericMethod($ResultType)

    $netTask = $asTask.Invoke($null, @($WinRtTask))

    $netTask.Wait(-1) | Out-Null

    $netTask.Result

}

Function AwaitAction($WinRtAction) {

    $asTask = ([System.WindowsRuntimeSystemExtensions].GetMethods() | ? { $_.Name -eq ‘AsTask’ -and $_.GetParameters().Count -eq 1 -and !$_.IsGenericMethod })[0]

    $netTask = $asTask.Invoke($null, @($WinRtAction))

    $netTask.Wait(-1) | Out-Null

}

[Windows.Storage.StorageFile,Windows.Storage,ContentType=WindowsRuntime] | Out-Null

$image = Await ([Windows.Storage.StorageFile]::GetFileFromPathAsync($newImagePath)) ([Windows.Storage.StorageFile])

AwaitAction ([Windows.System.UserProfile.LockScreen]::SetImageFileAsync($image))

Remove-Item $newImagePath

Kullanımı son derece kolay, aşağıdaki gibi bir logon script tanımlamamız yeterli;

.\Set-Screen.ps1 -LockScreenSource “\\SERVER-FS01\LockScreen.jpg” -BackgroundSource “\\SERVER-FS01\BackgroundScreen.jpg” -LogPath “\\SERVER-FS01\Logs”

Eğer log dosyasına ihtiyacınız yok ise aşağıdaki komutu kullanabilirsiniz;

.\Set-Screen.ps1 -LockScreenSource “\\SERVER-FS01\LockScreen.jpg” -BackgroundSource \\SERVER-FS01\BackgroundScreen.jpg

Sadece lock screen için

.\Set-Screen.ps1 -LockScreenSource “\\SERVER-FS01\LockScreen.jpg” -LogPath \\SERVER-FS01\Logs

Sadece masa üstü resmi için

.\Set-Screen.ps1 -BackgroundSource “\\SERVER-FS01\BackgroundScreen.jpg” -LogPath “\\SERVER-FS01\Logs”

Peki gelelim bunu GPO ile nasıl dağıtacağız?

Öncelikle yeni veya mevcut bir GPO için Startup Script oluşturmamız gerekli;

Makine GPO üzerinden aşağıdaki alana kadar gelin;

Buraya bir ps göstereceğiz, yukarıdaki komut setlerinden istediğinizi bir not defterine alıp sonunu ps1. Olarak kayıt edebilirsiniz;

“\\SERVER-FS01\ortak\gpo\.\Set-Screen.ps1” -LockScreenSource “\\SERVER-FS01\LockScreen.jpg” -BackgroundSource “\\SERVER-FS01\BackgroundScreen.jpg” -LogPath “\\SERVER-FS01\Logs”

Not: indirdiğiniz ps dosyasını her makinenin erişebileceği bir yere kayıt ettikten sonra yukarıdaki gibi bu parth’ i göstermeniz gerekli.

Daha sonra bunu GPO ya tanımlıyoruz

Burada aklınıza Set-ExecutionPolicy için bir parametre gerekli mi sorusu gelebilir. Makine GPO olduğu için buna gerek yoktur.

Bundan sonra tek şey oluşturduğunuz bu GPO’ yu bir makine OU suna bağlamak kalıyor.

Umarım faydalı bir yazı olmuştur, bir sonraki yazımda görüşmek üzere.

Not: Bu konuda Rıza da güzel bir yazı paylaşmış.

Windows Server 2019 Üzerinde Gpo ile Screen Lock ve Screen Saver Ayarları – ÇözümPark (cozumpark.com)

Published On: 12 Temmuz 2019 / Categories: Windows Server / 10,5 min read /

Bilgiyi Paylaşın!