Powershell Sendkeys[char]定义

Powershell Sendkeys[char]定义,powershell,char,sendkeys,Powershell,Char,Sendkeys,关于使用powershell使用以下方法控制Windows设置(如扬声器音量控制),已经给出了答案: $obj = new-object -com wscript.shell $obj.SendKeys([char]173) 参考文献1: 参考文献2: 但是,我找不到关于这些数字(如上面的173或链接中的174/175)来自何处的任何信息,这些数字是如何定义的,以及其他数字定义是什么和可以做什么 你能告诉我这些数字是在哪里定义的吗?例如,我怎么知道172会做什么?还是200?等等 谢

关于使用powershell使用以下方法控制Windows设置(如扬声器音量控制),已经给出了答案:

$obj = new-object -com wscript.shell 
$obj.SendKeys([char]173)
  • 参考文献1:
  • 参考文献2:
但是,我找不到关于这些数字(如上面的173或链接中的174/175)来自何处的任何信息,这些数字是如何定义的,以及其他数字定义是什么和可以做什么

你能告诉我这些数字是在哪里定义的吗?例如,我怎么知道172会做什么?还是200?等等

谢谢,Lawrence

尽管从技术上讲,从PowerShell的角度来看,您传递的是一个特定的Unicode字符-代码点
173
=
0xAD
==软连字符,-
.SendKeys()
似乎将该字符的代码点(底层数字)解释为Windows虚拟密钥代码,表示键盘上的一个键,即本例中的
VK\u VOLUME\u MUTE
键(
0xAD

所有虚拟密钥代码的列表是,尽管我不清楚它们中的哪些子集实际上可用于
.SendKeys()

重述链接问题中的问题:

  • [char]173
    VK\u VOLUME\u MUTE
    0xAD
  • [char]174
    VK\u音量
    0xAE
  • [char]175
    VK\u VOLUME\u UP
    0xAF
顺便说一句:在Windows PowerShell中(但不再在PowerShell[Core]v6+中),似乎需要对
[string]
进行额外的强制转换;e、 g.(静音/取消静音卷):

即使从技术上讲,从PowerShell的角度来看,您传递的是一个特定的Unicode字符-代码点为
173
=
0xAD
==软连字符,-
.SendKeys()
似乎将该字符的代码点(底层数字)解释为Windows虚拟键代码,表示键盘上的一个键,即本例中的
VK\u VOLUME\u MUTE
键(
0xAD

所有虚拟密钥代码的列表是,尽管我不清楚它们中的哪些子集实际上可用于
.SendKeys()

重述链接问题中的问题:

  • [char]173
    VK\u VOLUME\u MUTE
    0xAD
  • [char]174
    VK\u音量
    0xAE
  • [char]175
    VK\u VOLUME\u UP
    0xAF
顺便说一句:在Windows PowerShell中(但不再在PowerShell[Core]v6+中),似乎需要对
[string]
进行额外的强制转换;e、 g.(静音/取消静音卷):


173是连字符
-
。只需在PowerShell中键入
[char]number
terminal@NekoMusume,请注意,OP对PowerShell端的
[char]173
含义不感兴趣,但在特殊意义上,这些字符具有Windows虚拟键代码(
173
=
0xAD
=
VK\u VOLUME\u MUTE
)当使用
.SendKeys()
方法进行解释时。173是连字符
-
。只需在PowerShell中键入
[char]number
terminal@NekoMusume,请注意,OP对PowerShell端的
[char]173
含义不感兴趣,但在特殊意义上,这些字符具有Windows虚拟键代码(
173
=
0xAD
=
VK\u VOLUME\u MUTE
)当使用
.SendKeys()
方法进行解释时。非常感谢您快速、准确和详细的回答!这就是我一直在寻找的,还有更多。很高兴听到这个消息,劳伦斯;不客气。非常感谢您快速、准确和详细的回答!这就是我一直在寻找的,还有更多。很高兴听到这个消息,劳伦斯;我的荣幸。
# Extra [string] cast is *not* necessary anymore in PowerShell [Core], v6+
(New-Object -ComObject Wscript.Shell).SendKeys([string] [char] 173)