我在尝试使用 Windows 11 上的 PowerShell 脚本更改鼠标光标时遇到了一些困难。 我有一个名为 WDD 脚本的应用程序,它具有 PowerShell 脚本的功能,具体取决于一天中的时间/深色或浅色系统操作系统主题。
我很难使用 powershell 脚本编写脚本来更改鼠标光标。这是我到目前为止所做的(检查主题是否使用浅色/深色主题)。现在缺少的部分是如何更改鼠标光标。
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
}
我见过很多解决这个问题的应用程序,比如Auto Dark Mode,但没有人分享他们是如何做到的。我正在尝试更改鼠标方案,如下图所示:
和暗模式时的 Windows 黑色方案。我尝试在这里将每个注册表更改为暗模式,设置已更新但不是光标本身。
这个问题在使用PowerShell更改鼠标指针方案一文中有深入研究 。
作者得出结论,仅更改注册表设置是不够的,还需要使用 Windows API 调用才能
SystemParametersInfo
使它们生效。这需要转义为另一种编程语言,在本例中为 C#。这是帖子中的解决方案:
正如 DavidPostill 所回避的那样,当您启动
explorer.exe
. 您可以通过以下方式强制执行此过程:End Task
File
>Run New Task
explorer.exe
在提示中输入