windows 10 Home 网络驱动器上 vb6 inet 控制出现错误

windows 10 Home 网络驱动器上 vb6 inet 控制出现错误

我多年前用 vb6 编写了一个实用程序,它使用 vb6 inet 控件访问网站进行自我更新。更新功能在数百台运行 XP、win7、win8、win10、svr 2003 和其他系统的机器上运行良好,这些机器安装在本地和网络驱动器上。

但是,有一台新的 Windows 10 家庭版机器,如果程序从网络驱动器运行,它就无法工作(更新,程序本身工作正常)。如果从 c: 驱动器运行,它可以工作,如果复制到网络 f: 驱动器,我收到错误“名称未解析”,指的是更新站点 url。

我关闭了 MacAfee 防火墙,但没有任何效果。该程序经过数字签名,因此应该值得信任。该 URL 有效,可以从机器上的 IE 和 Chrome 导航到。

该程序最初安装在 c: 驱动器上,但 f: 驱动器上驻留着相同的副本,并且该程序在网络驱动器上运行良好,只是无法连接到更新站点。

这是一个安全功能吗?如果是,我该如何禁用它,或者这是 win 10 家庭版(而不是专业版)的限制。

我知道 home 有一些限制,比如它不支持远程桌面(在我看来这很愚蠢)。

我该如何解决这个问题?

更多信息:

因此,我从 c: 卸载了该程序,打算在联网的 f: 上重新安装,看看是否有效果。但是,在明智的安装程序中,我无法选择联网驱动器进行安装...仅列出了 c: 和 cdrom d:。为什么它看不到映射的驱动器号?

更多的:

重新启动后,wise 安装程序可以看到联网驱动器。在网络上安装无法解决问题。除了 vb6 inet 控件之外,网络上的 exe 对 wininet 的 API 调用失败,但本地 c: 驱动器上的 exe 对 wininet 的 API 调用成功。

简单问题重述:

some.exe(32 位)使用 wininet.dll 连接到互联网并发布一些数据http://myurl.com.some.exe 安装在 c:\path\some.exe 以及网络共享 f:\path\some.exe 上。

从 cmd 提示符:

c:\path> some.exe (有效)

c:\path> f:\path\some.exe(失败,错误 12007 名称未解析)

f:\path> some.exe(失败,错误 12007 名称未解析)

f:\path> c:\path\some.exe (有效)

结论:如果some.exe驻留在网络共享上,互联网访问就会被阻止。

McAfee 已卸载。防火墙已关闭。Internet 安全区域设置为最小值。目标 URL 已添加为受信任站点。

答案1

答案似乎是 Windows 10 版本 1803 更新(Windows 10 2018 年 4 月更新)阻止使用 SMB1x 托管在网络驱动器上的程序访问互联网。SMB 版本必须为 2.0 或更高版本。SMB 2.0 是在 Server 2008 中引入的。感谢 EBGreen 提供的 SMB 线索。

编辑:决议

2018 年 6 月 26 日 KB4284848 适用于:Windows 10,版本 1803 修复了此问题。

相关内容