VBS文件中,'800a01b6' 对象不支持此属性或方法,求高手解答

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VBS文件中,'800a01b6' 对象不支持此属性或方法,求高手解答相关的知识,希望对你有一定的参考价值。

在我机器上执行没问题,放到另一台机器上有问题。
在If ie.Visible Then这里出错。
2台电脑系统一样,也有开启了iis服务,且都是5.1版本的。

代码如下:
Set Shell=CreateObject("Shell.Application")
ZIPfile=Shell.NameSpace(ZIPfile).Self.Path
Shell.ShellExecute ZIPfile,,,,0
Do
For Each ie In Shell.Windows()
If ie.Visible Then
ElseIf InStr(TypeName(ie.Document),"IShellFolderViewDual") Then
If ie.Document.Folder.Self.Path=ZIPfile Then Exit Do
End If
Next
WScript.Sleep 100
Loop
现在发现一个问题,shell.windows()的结果集对象有例外的情况,所以才导致ie.Visible无效。我就奇怪了。。。

参考技术A 会不会和环境有关,两边总有不一样的地方。比如Framework追问

应该是Shell.Windows()的结果有对象是null。目前发现时文件的打开方式有关系,文件关联要指定系统默认Compressed,并且将VBScript改成javascript才不出错。。。
目前发现是程序的打开方式如果是WinRAR,Shell.Windows()的集合找不到压缩文件对象;如果打开方式是系统默认Compressed,Shell.Windows()的集合就能找到压缩文件对象。

本回答被提问者采纳

以上是关于VBS文件中,'800a01b6' 对象不支持此属性或方法,求高手解答的主要内容,如果未能解决你的问题,请参考以下文章

Microsoft VBScript 编译器错误 错误 '800a03ea'

Microsoft VBScript 编译器错误 错误 '800a03fb'

Microsoft VBScript 编译器错误 错误 '800a03ee' 缺少 ')' 这个出错,SQL代码如下,请问怎么解决?

'Rem EverythingAutoSetup.VBS 安装Everything的VBS脚本 2019年11月25日写

在C++里执行VBS 如何执行VBS命令啊 比如Wscript.Sleep 5000 '

vbs操作excel宏求帮助!