Изменить экран блокировки и значок - обойти ошибку разрешения SetItemPropertyCommand - PullRequest
0 голосов
/ 13 февраля 2019

Я пытаюсь создать файл, который можно дважды щелкнуть, который выполняет следующие действия:

  1. Изменить фоновое изображение рабочего стола (эта часть уже выполнена)
  2. Изменить фоновое изображение экрана блокировки
  3. Изменить значок пользователя экрана блокировки

Сейчас я нахожусь на части 2 и терплю неудачу, поэтому я обращаюсь кпомогите здесь ...
Это мое текущее решение:
Чтобы сделать это без каких-либо командных строк или без всплывающего сообщения Powershell-ISE, я дважды щелкаю файл .cmd с таким содержимым:

Powershell.exe -File <Path_to_Powershell_Script>.ps1 -WindowStyle Hidden -noProfile -noInteractive

Мой файл .ps1 в настоящее время выглядит следующим образом:

#To make powershell scripts work in general type 
#"set-executionpolicy remotesigned" 
#into the PS-Console firstly

$newImage = "<Path_to_new_Image>.jpg"

#Change wallpaper WORKING!
#Proudly found at SO: https://stackoverflow.com/questions/43187787/change-wallpaper-powershell
$setwallpapersrc = @"
using System.Runtime.InteropServices;
public class wallpaper
{
public const int SetDesktopWallpaper = 20;
public const int UpdateIniFile = 0x01;
public const int SendWinIniChange = 0x02;
[DllImport("user32.dll", SetLastError = true, CharSet = CharSet.Auto)]
private static extern int SystemParametersInfo (int uAction, int uParam, string lpvParam, int fuWinIni);
public static void SetWallpaper ( string path )
{
SystemParametersInfo( SetDesktopWallpaper, 0, path, UpdateIniFile | SendWinIniChange );
}
}
"@
Add-Type -TypeDefinition $setwallpapersrc
[wallpaper]::SetWallpaper($newImage)

#TODO change lockscreen icon AND background - not working
$path = "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Personalization" 
Set-ItemProperty -Path $path -Name LockScreenImage -value $newImage

Иногда я сталкиваюсь с ошибками прав доступа, но при тестировании в PowerShell ISE после открытия его с правами администратора я не получаюэти ошибки.Тем не менее изображение на экране блокировки не меняется, и я даже не представляю, как сменить значок блокировки экрана.

Я ценю любой комментарий или ответ, который может помочь мне продвинуться в выполнении этого квеста или упростить его:D

...