如何在 VBScript StartConnection 方法中使用变量
How to use variables in VBScript StartConnection method
我尝试使用 VBScript 作为脚本语言开发 HTA 应用程序。下面是代码:
Sub SysStart()
Dim Mgr
Dim autECLPSObj
Dim autECLConnList
Set Mgr = CreateObject("PCOMM.autECLConnMgr")
Set Obj = CreateObject("PCOMM.autECLOIA")
Obj.SetConnectionByName (dsession)
If Obj.Started = "False" Then
MsgBox(dtext)
MsgBox(dsession)
Mgr.StartConnection("profile=dtext connname=dsession WINSTATE=MAX")
Else
Mgr.StopConnection dsession, "saveprofile=no"
Mgr.StartConnection("profile= dtext connname=dsession WINSTATE=MAX")
End If
End Sub
变量dsession、dtext 已经在同一程序的另一个函数中定义。
这里 dsession
是会话名称,dtext
是配置文件名称。 StartConnection
和StopConnection
是PCOMM.autECLConnMgr
的方法,用于与IBM PCOMM建立连接。
对于个人通信,配置字符串的格式如下:
PROFILE=[']['] [CONNNAME=] [WINSTATE=]
没有变量的相同代码:
Dim Mgr
Dim autECLPSObj
Dim autECLConnList
Set Mgr = CreateObject("PCOMM.autECLConnMgr")
Set Obj = CreateObject("PCOMM.autECLOIA")
Obj.SetConnectionByName ("B")
If Obj.Started = "False" Then
Mgr.StartConnection("profile=test1.WS connname=B WINSTATE=MAX")
Else
Mgr.StopConnection "B", "saveprofile=no"
Mgr.StartConnection("profile=test1.WS connname=B WINSTATE=MAX")
End If
当我尝试 运行 没有变量的代码时它可以工作但是当我尝试使用变量时出现以下错误:
ECL37240: Invalid WS profile name. Invalid data
我的问题是:我们可以在StartConnection
方法中使用变量吗?如果是那么怎么办?
注意:我检查了变量的值,都是正确的。
据我了解您的问题,您需要将变量值传递给 startManager 方法。您需要使用如下变量
If Obj.Started = "False" Then
Msgbox(dtext)
Msgbox(dsession)
Mgr.StartConnection("profile=" & dtext & " connname=" & dsession &" WINSTATE=MAX")
End if
'This is an untested code. Also, I am not HTA expert.'
我尝试使用 VBScript 作为脚本语言开发 HTA 应用程序。下面是代码:
Sub SysStart()
Dim Mgr
Dim autECLPSObj
Dim autECLConnList
Set Mgr = CreateObject("PCOMM.autECLConnMgr")
Set Obj = CreateObject("PCOMM.autECLOIA")
Obj.SetConnectionByName (dsession)
If Obj.Started = "False" Then
MsgBox(dtext)
MsgBox(dsession)
Mgr.StartConnection("profile=dtext connname=dsession WINSTATE=MAX")
Else
Mgr.StopConnection dsession, "saveprofile=no"
Mgr.StartConnection("profile= dtext connname=dsession WINSTATE=MAX")
End If
End Sub
变量dsession、dtext 已经在同一程序的另一个函数中定义。
这里 dsession
是会话名称,dtext
是配置文件名称。 StartConnection
和StopConnection
是PCOMM.autECLConnMgr
的方法,用于与IBM PCOMM建立连接。
对于个人通信,配置字符串的格式如下:
PROFILE=[']['] [CONNNAME=] [WINSTATE=]
没有变量的相同代码:
Dim Mgr
Dim autECLPSObj
Dim autECLConnList
Set Mgr = CreateObject("PCOMM.autECLConnMgr")
Set Obj = CreateObject("PCOMM.autECLOIA")
Obj.SetConnectionByName ("B")
If Obj.Started = "False" Then
Mgr.StartConnection("profile=test1.WS connname=B WINSTATE=MAX")
Else
Mgr.StopConnection "B", "saveprofile=no"
Mgr.StartConnection("profile=test1.WS connname=B WINSTATE=MAX")
End If
当我尝试 运行 没有变量的代码时它可以工作但是当我尝试使用变量时出现以下错误:
ECL37240: Invalid WS profile name. Invalid data
我的问题是:我们可以在StartConnection
方法中使用变量吗?如果是那么怎么办?
注意:我检查了变量的值,都是正确的。
据我了解您的问题,您需要将变量值传递给 startManager 方法。您需要使用如下变量
If Obj.Started = "False" Then
Msgbox(dtext)
Msgbox(dsession)
Mgr.StartConnection("profile=" & dtext & " connname=" & dsession &" WINSTATE=MAX")
End if
'This is an untested code. Also, I am not HTA expert.'