Freeze Wallpaper

BY IN Tips & Trik Comments Off on Freeze Wallpaper

Selain mendisable Set as Desktop Background dari Browser Mozilla, kita dapat juga mendisable Context Menu dari Internet Explorer lewat registry berikut:

HKEY_CURRENT_USER, “Software\Policies\Microsoft\Internet Explorer\Restrictions”, “NoBrowserContextMenu”, 1
HKEY_CURRENT_USER, “Software\Policies\Microsoft\Internet Explorer\Restrictions”, “NoBrowserSaveAs”, 1
HKEY_LOCAL_MACHINE, “Software\Policies\Microsoft\Internet Explorer\Restrictions”, “NoBrowserContextMenu”, 1
HKEY_LOCAL_MACHINE, “Software\Policies\Microsoft\Internet Explorer\Restrictions”, “NoBrowserSaveAs”, 1

beberapa program seperti Paint juga mempunyai fasilitas Set Wallpaper, jadi harus diuninstall juga. Kemudian terpikir juga untuk mendisable Windows Picture Viewer, ternyata dapat didisable dengan perintah seperti ini:

REGSVR32 /U SHIMGVW.DLL

folder My Pictures juga mempunyai kemampuan untuk set wallpaper, oleh karena itu bisa juga di hapus.

agak kurang sip kalo kita ngeblok semua program, cara lain yang terpikir adalah buat program sendiri yang aktif di background, dan mengganti wallpaper secara berkala.

Untuk persiapannya pertama2, kita harus masukkan fungsi untuk mengganti wallpaper secara langsung dari program, bisa dilakukan dengan memanfaatkan fungsi API, berikut adalah deklarasi konstanta publik dan fungsi API-nya:

Public Const SPIF_UPDATEINIFILE = &H1
Public Const SPI_SETDESKWALLPAPER = 20
Public Const SPIF_SENDWININICHANGE = &H2

Private Declare Function SystemParametersInfo Lib “user32? Alias _
“SystemParametersInfoA” _
(ByVal uAction As Long, ByVal uParam As Long, ByVal lpvParam As String, _
ByVal fuWinIni As Long) As Long

lalu berikut adalah Sub publiknya:

Public Sub SetWallpaper(ByVal pFileName As String)
Dim Ret As Long
Ret = SystemParametersInfo(SPI_SETDESKWALLPAPER, 0&, pFileName, _
SPIF_UPDATEINIFILE Or SPIF_SENDWININICHANGE)
End Sub

Jadi kapanpun kita ingin mengganti wallpaper, kita tinggal memberikan perintah Call SetWallpaper(”c:\windows\wallpaperku.bmp”), dimana ekstensinya harus BMP. Karena harus berjalan di background, maka program ini harus diload pertama kali pada saat komputer dijalankan, gampang saja tinggal dimasukkan di registry berikut:

HKEY_LOCAL_MACHINE, “SOFTWARE\Microsoft\Windows\CurrentVersion\Run”, REG_SZ, “Wallpaper”, “c:\windows\system\wallpaperku.exe”

agar tidak tampak di task manager, kita perlu tambahkan perintah berikut di Form_Load-nya:
App.TaskVisible = False

agar program dapat mengupdate wallpaper berkala, kita dapat memanfaatkan object Timer yang dapat kita set interval waktunya.




Comments are closed.