如何传递变量?

时间:2015-09-08 11:04:02

标签: vbscript

我创建如下代码。我想在

中传递变量randrandd
iret = iim2.iimPlay("rand")
iret = iim1.iimPlay("randd")

怎么做?

Set iim1= CreateObject ("imacros")
Set iim2= CreateObject ("imacros")

Dim max,min,rand,randd,maxx,minn
max=2
min=15
Randomize
rand = Int((max-min+1)*Rnd+min)
WScript.Echo rand

maxx=2
minn=15
Randomize
randd = Int((maxx-minn+1)*Rnd+minn)
WScript.Echo randd

For m = 1 to 1
  iim1.iimInit("-fx -fxProfile t2")
  iim2.iimInit("-cr")

  iret = iim2.iimPlay("rand")
  iret = iim1.iimPlay("randd")

  iret = iim2.iimExit()
  iret = iim1.iimExit()
Next

2 个答案:

答案 0 :(得分:2)

删除引号:

List(Interval(0,1), Interval(1,2), Interval(2,4), Interval(4,6))
List(Interval(7,9), Interval(9,10))
List(Interval(11,14))
List(Interval(15,20), Interval(20,24))

VBScript不会在引号中扩展变量,因此intervals.foldLeft(Seq[Seq[Interval]]()){ case (Seq(Seq()), i) => Seq(Seq(i)) case (h :: tail, i) if h.head.b == i.a => (i +: h) +: tail case (acc, i) => Seq(i) +: acc }.map(_.reverse).reverse.foreach(println) 将作为文字字符串“rand”而不是变量iret = iim2.iimPlay(rand) iret = iim1.iimPlay(randd) 的值传递。

答案 1 :(得分:0)

简短回答:删除这样的引号:

iret = iim2.iimPlay(rand)

iret = iim1.iimPlay(randd)

您正在传递名为“rand”和“randd”的字符串。变量不包含在引号中。 另外,你正在构建同一个对象(iret)两次,我不知道为什么。 您可能还有其他问题,但这是一个良好的开端。