我希望有人可以帮助我调试以下代码,因为我对它发生的原因感到困惑。
我有一个相当简单的 VBScript,它在用户登录到服务器/PC 时运行,它将根据他们的活动目录详细信息创建一些签名。我决定将签名创建的每个部分都移到一个函数中,以便在创建新签名时更容易一些。
这是我遇到问题的功能:
'Function to add job title and company
Function AddTitle
objSelection.Font.Name = "Calibri"
objSelection.Font.Bold = False
objSelection.Font.Italic = False
objSelection.Font.Size = "11"
objSelection.Font.Color = RGB(0,0,0)
If(strTitle) Then
objSelection.TypeText strTitle & Chr(11)
End If
objSelection.TypeText strCompany & Chr (11)
End Function
现在,当稍后调用该函数时,使用:
'Add job title and company
AddTitle
它忽略 If 语句中的部分。我知道一些变量需要全局定义才能在函数中工作,而 strTitle 肯定是在我的脚本开头定义的。
我是否遗漏了一些完全明显的东西,因为如果从 if 语句中取出 if 语句中的部分,它会正确运行。同样,如果我将 if 语句添加到我的脚本内联,并将其从函数中取出,它可以正常工作。
仅在从函数运行时。