我有一个脚本旨在询问电子邮件地址的主题,然后使用该主题发送电子邮件,整个脚本工作正常,除了某种原因,它发送变量名称(即%subject%)而不是什么我在脚本的前面将其设置为。我知道变量成功保存,因为我让它在用户输入后显示变量。当我收到电子邮件时,它会提供 %subject% 作为主题名称,即使我将其设置为其他名称,我认为问题出在脚本引号内的变量中
pmsg.Subject := "%subject%"
主题必须在引号内,脚本才能正常工作。
我有一个脚本旨在询问电子邮件地址的主题,然后使用该主题发送电子邮件,整个脚本工作正常,除了某种原因,它发送变量名称(即%subject%)而不是什么我在脚本的前面将其设置为。我知道变量成功保存,因为我让它在用户输入后显示变量。当我收到电子邮件时,它会提供 %subject% 作为主题名称,即使我将其设置为其他名称,我认为问题出在脚本引号内的变量中
pmsg.Subject := "%subject%"
主题必须在引号内,脚本才能正常工作。
也许你可以像这样尝试
pmsg.Subject := subject
或者如果你需要报价
像这样试试
pmsg.Subject := """ . subject . """
希望能帮助到你
啊,我也遇到过这个问题。所以我做了这个函数并将它保存在我的 ahk 库中:
;simply enclose the text in double-quotes
;if you set mode, the string is surrounded by doubled double quotes
enc(whattext, mode=0){
global a_doublequote
if(mode){
quotedvar = "%a_doublequote%%whattext%%a_doublequote%"
}else{
quotedvar := a_doublequote . whattext . a_doublequote
}
return quotedvar
}
这是输出:
testphrase = george
msgbox % enc(testphrase)
;==> "george"
msgbox % enc(testphrase, true)
;==> ""george""
您对:=
作业所做的是创建一个值为%subject
pmsg.Subject := "%subject%"的字符串
但是,如果您这样做,它将起作用:
pmsg.Subject = "%subject%"
您会看到,当您使用:=
分配时,变量的分配方式与其他编码语言(如 Javascript)中的分配方式相同。当您仅使用时=
,该变量以文字模式分配,除了%
表示该模式下的变量分配。