Estou tendo dificuldades para tentar alterar o cursor do mouse usando o script PowerShell no Windows 11. Eu tenho esse aplicativo chamado WDD scripts , que tem o poder dos scripts PowerShell, dependendo da hora do dia/tema do sistema operacional escuro ou claro.
Estou tendo dificuldade em escrever um script para alterar o cursor do mouse usando o script powershell. foi o que fiz até agora (verifiquei se o tema usa tema claro/escuro). Agora a parte que falta é como mudar o cursor do mouse.
param (
[Parameter(Mandatory=$true)][int]$daySegment2, # 0 = Day, 1 = Night
[Parameter(Mandatory=$true)][int]$daySegment4, # -1 = N/A, 0 = Sunrise, 1 = Day, 2 = Sunset, 3 = Night
[Parameter(Mandatory=$true)][bool]$nightMode, # True if night mode is enabled
[Parameter(Mandatory=$false)][string]$imagePath # Path to current wallpaper image
)
$NightValue = If ($nightMode) {1} Else {$daySegment2}
if ( $NightValue -eq 0)
{
//change mouse cursor to light
}
else
{
//change mouse cursor to dark
}
Já vi muitos aplicativos que resolvem esse problema, como o Auto Dark Mode , mas ninguém está compartilhando como eles fizeram isso. Estou tentando alterar o esquema do mouse conforme a imagem abaixo:
e o esquema Windows Black quando está no modo escuro. Tentei alterar todos os registros para o modo escuro aqui, as configurações são atualizadas, mas não o próprio cursor.
Essa questão foi profundamente estudada no artigo Usar o PowerShell para alterar o esquema do ponteiro do mouse .
O autor concluiu que não basta alterar as configurações do registro, mas também é necessário usar uma chamada de API do Windows para
SystemParametersInfo
colocá-las em vigor. Isso requer escapar para outra linguagem de programação, neste caso, C#.Aqui está a solução do post:
Como DavidPostill escapou, as chaves de registro são recarregadas quando você inicia o
explorer.exe
. Você pode forçar esse processo:End Task
File
>Run New Task
explorer.exe
no prompt