1

当用户锁定系统时,我需要更改背景图像。目前,它显示用户桌面,但它已成为一个安全问题(不确定如何,但确实如此)。

所以现在 - 每当用户锁定他们的系统(ctrl-alt-del lock 工作站)时,我需要将背景图像更改为空白(带有合法文本的黑色图像)。

我更改了位于的注册表

HKEY_USERS.DEFAULT\控制面板\桌面\壁纸

这适用于初始登录屏幕,但我正在寻找的是如何更改锁定屏幕上的背景。

谢谢

4

1 回答 1

0

我能够通过电源外壳进行壁纸更换。(我猜它是powershell 2 - “host”返回“2.0”)它可能会让你(或其他人)开始。(在(嘿,脚本专家!)等上找到的片段 - 我以前从未使用过 powershell)

程序应该创建对象

$sysevent = [microsoft.win32.systemevents]

创建将更改墙纸的功能它在锁定和解锁时调用 - 您应该研究如何区分。我只是检查我有哪个 BMP 并将其更改为另一个

Function Global:OnLock{
$wp=Get-ItemProperty -path 'HKCU:\Control Panel\Desktop\' -name wallpaper
Write-Host "Current WP:" $wp.WallPaper
if ($wp.WallPaper -eq "C:\Documents and Settings\username\Local Settings\Application Data\Microsoft\Wallpaper2.bmp")
{Set-ItemProperty -path 'HKCU:\Control Panel\Desktop\' -name wallpaper -value "C:\Documents and Settings\username\Local Settings\Application Data\Microsoft\Wallpaper1.bmp"}
else
{Set-ItemProperty -path 'HKCU:\Control Panel\Desktop\' -name wallpaper -value "C:\Documents and Settings\username\Local Settings\Application Data\Microsoft\Wallpaper2.bmp"}
rundll32.exe user32.dll, UpdatePerUserSystemParameters
}

注册事件

Register-ObjectEvent -InputObject $sysevent -EventName "SessionSwitch" -Action {OnLock} -SourceIdentifier "ExecuteOnLock"

现在,锁定/解锁将调用该函数。当然(?)你必须让powershell运行例如

powershell -NoExit -WindowStyle Hidden C:\pathToPrScript\script.ps1

希望有帮助

于 2014-10-09T08:44:15.437 回答