【问题标题】:PowerShell: Toggle "Num Lock" on and off.PowerShell:打开和关闭“Num Lock”。
【发布时间】:2012-04-05 09:32:42
【问题描述】:

我希望能够打开和关闭键盘上的“Num Lock”键。我在网上和这里尝试了多个示例,但没有成功。这是我最接近解决方案的事情:

[void] [System.Reflection.Assembly]::LoadWithPartialName("'System.Windows.Forms")
[System.Windows.Forms.SendKeys]::SendWait("{NUMLOCK}")

上面的代码看起来可能有效,我看到键盘上的“Num Lock”指示灯闪烁了一秒钟,但它没有“粘住”。

【问题讨论】:

    标签: powershell keyboard keypress


    【解决方案1】:

    我遇到了和你一样的开/关闪烁。

    这对我来说很好,试一试:

    $wsh = New-Object -ComObject WScript.Shell
    $wsh.SendKeys('{NUMLOCK}')
    

    【讨论】:

    • (这让我想知道安迪没有遇到过哪些 Powershell 问题!)
    • 似乎“大师”对安迪来说是轻描淡写的。 PowerShell霸主?
    • @Vippy 的戒指不错.. 呵呵 ;-)
    • 另外你可以使用[console]::NumberLock来检查它是否启用。
    • 恢复一个非常老的线程,我知道。这在登录之前有效吗?我想在登录之前在启动时设置一个计划任务,这样我就可以使用数字键盘设置登录。在我的 PC (win10) 上,我尝试设置一个计划任务,以我或 SYSTEM 用户身份运行,但如果我尝试启动它,任务会挂起,处于“正在执行”状态。在启动时设置数字锁定的任何(其他)简单方法?我的 PC BIOS 没有它的选项
    【解决方案2】:

    对于它的价值,从键盘的角度来看,操作系统在使用[System.Windows.Forms.SendKeys]::SendWait("{CAPSLOCK}") 时发送一个设置然后重置切换键(大写字母、滚动锁定、数字锁定),但只发送一个事件使用WScript.Shell.

    【讨论】:

      【解决方案3】:

      在这里偶然发现了一种让Num Lock 永远保持开启状态的方法(显然“锁定”这个词并不意味着什么?‍♂️)。此脚本每 2 秒检查一次 Num Lock 状态,如果已关闭,则将其重新打开:

      $wsh = New-Object -ComObject WScript.Shell
      while($true){
      if ([console]::NumberLock -eq $false) {
      $wsh.SendKeys('{NUMLOCK}')
      }
      Start-Sleep 2
      }
      

      我认为使用 PS2EXE 转换为独立的微型 .exe 将是一个不错的选择。

      【讨论】:

        【解决方案4】:
        intTime=0
        strInputVal=InputBox("Enter the time","Enter Hours in Int")
        intTime=strInputVal * 60 * 60
        
        set WshShell = WScript.CreateObject("WScript.Shell")
        For i = 1 to intTime
            WScript.Sleep 500
            WshShell.SendKeys "{NUMLOCK}"
            WScript.Sleep 500
        Next
        WScript.Quit
        Set WshShell = Nothing 
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2016-12-26
          • 2016-12-18
          • 2011-08-17
          • 2021-11-08
          • 1970-01-01
          • 2012-02-22
          • 1970-01-01
          相关资源
          最近更新 更多