如何使用 PowerShell 设置本地用户帐户照片?

如何使用 PowerShell 设置本地用户帐户照片?

我想使用 PowerShell 和保存在特定位置的图像来设置本地帐户照片(登录时在开始菜单中和密码提示上方显示的图像)。

操作方法如下:设置 >> 帐户 >> 您的信息 >> 创建图片 >> 浏览图片 >> 转到“C:\custom-folder\img.jpg”>> 选择“确定”

这是我开始编写的脚本:


<#     
    .SYNOPSIS
    Sets the specified image as the user's user photo
    
    .PARAMETER Image
    (Mandatory) Provide the exact path to the image 
    
    .EXAMPLE
    setAccountPhoto.ps1 -Image "C:\custom-folder\img.jpg"   
#>

param (
    [parameter(Mandatory=$True)]
    # Provide path to image
    [string]$Image
)

$user = "$env:UserName"
Set-UserPhoto -Identity $user -PictureData ([System.IO.File]::ReadAllBytes($Image))

# is the below needed?
rundll32.exe user32.dll, UpdatePerUserSystemParameters

现在我正在尝试这个:

<#     
    .SYNOPSIS
    Sets the specified image as the user's user photo
    
    .PARAMETER Image
    (Mandatory) Provide the exact path to the image 
    
    .EXAMPLE
    setAccountPhoto.ps1 -Image "C:\custom-folder\img.jpg"   
#>

param (
    [parameter(Mandatory=$True)]
    # Provide path to image
    [string]$Image
)

$registryPath = "HKCU:\ ? "
$nameAttr = " ? "

Set-ItemProperty -Path $registryPath -Name $nameAttr -Value $Image

# is the below needed?
rundll32.exe user32.dll, UpdatePerUserSystemParameters

我认为第二种方法可能更好,但我还太新,不知道。

需要帮助,我应该在代码中用什么来表示问号?或者是否有更好的方法。我愿意听取建议...

相关内容