调用 sysWOW64 中注册的 32 位 COM 组件方法失败并显示错误消息:
“方法 OleVarToLsVal 中的类型不匹配,发现未知,预期未知”
它的 win7 64 位,但 Notes 客户端默认安装为 32 位应用程序。代码如下所示:
dim c as Variant
dim n as Variant
set c = createobject("MSWC.counters")
n = c.Get("xx")
调试调用时,对象已设置并可使用“isObject(c)”进行测试(尽管您无法在 LotusScript 调试中详细检查每个方法/属性)。
该方法应该返回一个原始长。我尝试将 n 设置为 long,clng-ing 值,cstr-ing 值,参数,strconv 参数,使用变量作为参数,都无济于事。
WScript VBS 主机(在 syswow64 中)运行的完全相同的代码按预期运行代码。
那么,有没有人知道:
- Notes 9 COM 值编组是否适用于任何组件?
- Notes 9 COM 是否设置为识别“wow64”备用 32 位注册表
- 我可以检查注册表中某处的一些与 COM 相关的编组设置(如果有的话/它们在哪里)?
- 是否有一些设置告诉 Notes 使用 32 位组件(如 IIS 32 位兼容性选项)
- 在主操作系统中我需要做什么或可以做什么来“重定向或配置”COM
- 还是 Notes 又坏了,没人在乎?
任何帮助表示赞赏 - 谢谢。