2010-10-27 36 views
3

我在vbscript中使用一个函数,它返回一个字符串的变体数组。如何将字符串数组转换为VBscript中的变量数组?

JobIDs = objDoc.ConnectedSubmit(objServer) 

问题是我无法从该数组中获取作业ID值,因为vbscript不处理类型化变量。当我试图用JobIDs数组做任何事时,它只是给出了一个类型不匹配。我发现了一些有前途的信息here,但是当我使用的转换功能:

Set objConverter = CreateObject("ADS.ArrayConvert") 
ConvertedJobIDs = objConverter.CStrArray(JobIDs()) 

这是给我同样的类型不匹配错误。我在这里错过了很明显的东西吗显然,这是一个官方的微软解决方案,所以我不确定它为什么似乎有同样的问题,即首先无法真正对字符串数组做任何事情。我已经看到我的问题的第一部分在许多地方得到了回答,都指向了MS解决方案,但我还没有看到有人成功使用该解决方案的任何后续报告。

回答

1

我不确定我是否理解为什么它不起作用,所以这个答案可能不是很有帮助。我会认为,这样的事情可能会起作用(继上一个问题,我假设你想取消工作):

For Each id In JobIDs 
    WScript.Echo id 
    YourJob = YourOutgoingFaxQueue.GetJob(id) 
    YourJob.Cancel() 
Next 
+0

感谢您的答复。你的建议是我最初尝试过的,在寻找替代品之前。它会在“For Each ...”行中出现类型不匹配错误。基本上,任何试图检查该JobIDs对象的内容或提取其值的任何尝试都会遇到类型不匹配错误。 – 2010-10-28 12:39:38

+1

@Joe:'Submit'工作是否正在发送传真?所以这不是失败,并返回一个'Nothing'或类似的东西?我建议在JobIDs变量上调用'IsArray','IsNull','IsEmpty'和/或'VarType'来找出它到底是什么。你可以在这里找到关于这些调用的更多信息+'VarType'返回值的查找:http://support.technetex.ca/devguide/vbscript_functions.aspx – 2010-10-28 13:20:54

+0

是的,再次感谢。提交将传真正确投入传真控制台的发件箱。我已经在JobIDs上试过了VarType,它返回了8200,这是一个字符串数组。 – 2010-10-28 13:59:02

相关问题