无法打开zip文件

无法打开zip文件

问题描述:

这似乎是一个简单的解决方案的问题,但我搜索的网站(和网络)的解决方案,我没有找到任何。无法打开zip文件

为了打开一个zip文件我使用以下代码:

Set zipApp = CreateObject("Shell.Application") 
    zip_file_count = zipApp.NameSpace("c:\1.zip").Items.Count 
    MsgBox zip_file_count 

当c:\ 1.zip是现有zip文件(具有一个文件中)。 因此,我期望在哪里看到一个带有“1”的味精盒,而不是我的“系统找不到指定的文件”,即使该文件存在(如果我尝试在Windows中运行运行> c:\ 1.zip它作品)

我也使用这段代码来打开我刚刚创建的zip文件,但仍然得到相同的错误。

有什么我失踪?

btw,我使用的是Windows XP操作系统是某种相关的。

对于我来说,它的工作原理IF了以下更改

set zip_file_count = zipApp.NameSpace("c:\1.zip").Items.Count 
^^^ 

你所检索的文件的数量,而不是一个对象的引用,因此,这set是不正确的,应予删除。

,但我没有得到一个“系统找不到指定的文件”错误,但的“所需的对象”。

编辑假设.zip文件入店,而不是腐败下,我已经找到了获得报告的错误的唯一方法已注销的zip文件夹支持。并且问题被纠正重新注册它。所以,你需要zipfldr.dll文件出现在您的%systemroot%\system32文件夹中,并与

regsvr32 "%systemroot%\system32\zipfldr.dll" 
+0

我已经删除了设置,仍然得到“系统找不到指定的文件”错误 – Shperb 2014-10-05 10:36:49

+0

@Shperb,回答更新,请测试。 – 2014-10-05 11:32:34

+0

+1愿意妥协你的跑步系统来帮助他人。 – 2014-10-05 11:39:04

注册它,你不会看到一个消息框,“1”,而是一个“对象需要”错误,因为zip_file_count应持有数,而不是一个对象,所以

set zip_file_count = zipApp.NameSpace("c:\1.zip").Items.Count 

应该

zip_file_count = zipApp.NameSpace("c:\1.zip").Items.Count 

当你没有报告这个错误,你运行该代码是不是你发布的代码。

没有设置并给出可访问的.zip文件,您发布的代码是'works'。因此请仔细检查“c:\ 1.zip”及其属性/权限。

+0

我已经删除了设置,仍然得到“系统找不到指定的文件”的错误,我仔细检查了zip文件,它在那里。 – Shperb 2014-10-05 10:37:29

+0

您的脚本在*下运行的用户帐户的访问权限*如何? IIS?在MapPath? – 2014-10-05 10:46:52

+0

我不太清楚你是什么意思,我使用管理员访问权限在本地运行脚本,就像我说的,如果我从不在脚本中的相同位置打开它,我可以打开并修改该文件。 – Shperb 2014-10-05 10:51:19