gpt4 book ai didi

windows - 如何使用 SendKeys 使类型转换的变量显示为键而不是值

转载 作者:可可西里 更新时间:2023-11-01 10:19:20 24 4
gpt4 key购买 nike

$a = [char]65
$w1 = New-Object -ComObject wscript.shell;
$w1.AppActivate('Untitled - Notepad')
Sleep 1
Write-Host $a
$w1.SendKeys($a);

在 PowerShell 脚本中,我尝试使用 SendKeys 命令通过类型转换变量 $a 使字母 A 出现在记事本中作为值为 65[char]。当我运行这条线时,这给了我预期的结果:

Write-Host $a

(A 出现在 PowerShell 中)

但是每当运行以下行时:

$w1.SendKeys($a);

数字 65 被放入记事本而不是 A

为什么这两行在给定相同参数时产生不同的输出,我该怎么做才能使变量 $a 在两种情况下都输出字符 A

最佳答案

因为 char 是整数类型,SendKeys$a 视为整数。您可以通过直接传入 65 来获得相同的行为:

$w1.SendKeys(65); # Sends "65" to Notepad

要解决这个问题,您需要明确地为 SendKeys 提供一个字符串参数。最简单的方法是将 $a 括在引号中:

$w1.SendKeys("$a");

关于windows - 如何使用 SendKeys 使类型转换的变量显示为键而不是值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33191776/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com