刚下好的用友安装包解压出来全是0字节,我的处理办法

用友下载 ·
刚下好的用友安装包解压出来全是0字节,我的处理办法

刚下好的用友安装包解压出来全是0字节,我的处理办法

事情是这样的,上个月我帮朋友公司装用友T3,从官网找了半天没找到直接下载的入口,最后摸到一个用友下载站。点本页下载按钮,一个压缩包哗啦哗啦下了两分多钟,大小显示1.2G,看着还挺正常。我心想这次运气不错,毕竟用友这东西经常得找半天才能下到对的东西。结果解压一打开,心里直接凉了半截——里面的文件夹列表倒是全的,Setup.exe、补丁文件、授权文件一个不少,但所有文件大小全显示0字节。双击Setup,系统弹出窗口说文件损坏或不是有效Win32应用程序。我试了好几个解压软件,7zip报头撕裂,WinRAR说格式无法识别,连杀毒软件都挨个关了再来一遍,还是没用。这事折腾了我一个下午加一个晚上,最后总算摸清了门道。

全平台支持Win·Mac·手机持续更新紧跟官方新版本免费使用无需付费解锁

问题出在哪,不是下载断了是安装包本身有问题

一开始我以为是下载中途断了网或者迅雷抽风没下完整,毕竟用友的安装包动辄一两G,出差错也不算稀奇。我特意去下载站看了一眼文件哈希值,结果页面根本没贴MD5。我又换了个浏览器重新下,谷歌和Edge各来一次,还特意用IDM接管下载,就怕断点续传出猫腻。但离谱的是,每次下载完的样子都一样:压缩包里文件列表完整,大小全为0,文件图标上连个正常的解压预览都没有。后来我试着不压包直接点浏览器保存,结果显示下载的是一个几KB的网页文件。说白了,那个下载站给的链接根本不是直链,搞了个跳转,跳来跳去最后给的其实是个什么登陆验证窗口或者非标准格式的流数据。真正的安装包得先注册或者转发到另外一个页面,才能拿到有完整体积的真实文件。许多小下载站就是靠这种手段刷点击量的,你没留意的话,下载到的压缩包就是个空壳子。

手动找对源头,拿真正的安装包

既然那个页面靠不住,就得自己顺着链接追。我右键点本页下载按钮,选了复制链接地址。打开浏览器新标签页,直接在地址栏粘贴进去,先别急着回车,先看看链接里有没有参数。我看到的链接里带了个redirect和token,明显是临时密钥类的东西,过期就不让用。这种链接一般只能直接从那个下载站弹出新窗口用,复制出来反而失效。后来我换了个思路,干脆在下载页的源代码里翻。按F12进开发者工具的网络选项卡,清空记录后重新点下载按钮,观察出现的请求列表,很快发现一个以.rar或者.zip结尾的请求,里面有个类似/upload/files/2023/abc.rar这样的路径。把这个地址在地址栏里输完整,按下回车,这次浏览器直接弹出文件保存对话框,文件大小显示1.21G,这才对了。解压后所有文件都正常,Setup.exe图标都带上了用友的logo,安装顺利走完。

解压工具别乱选,用好压或者bandizip

以前我总用老版本的WinRAR,觉得顺手,但这次发现WinRAR对待某些压缩包的兼容性确实有问题。下载到的用友安装包有些是深度压缩或者用了某些特殊固实压缩参数做的,WinRAR在自动检测格式时可能会误判。我试了试free版的7zip,进度条走得很慢,最后解出来的文件还是0字节,后来换成Bandizip的免费版,选择“强制解压”模式,勾掉校验全部错误之后继续执行的选项,居然解出了完整文件。不过这样风险也不小,解压时不校验CRC很容易混进数据错误的文件,安装到一半卡住。保险的做法是:解压前先把压缩包的属性打开,看看压缩包自己记录的原始大小。如果压缩包总大小才几十K,但写着的原始大小是1.2G,那八成就是空壳子,不用浪费时间解压了。要是原始大小和实际压缩包文件大小差距合理,比如1.2G的压缩包,实际文件大小有800M左右,那大概率是正常的,这时候就换个解压软件试试。

安装文件解出来别急着双击,先检查系统环境

真的把Setup.exe成功解压到文件夹后,我直接双击,结果弹出提示说缺少MSVBVM50.DLL。这个文件是用友的老版本软件经常依赖的VB5运行库,而Win10和Win11默认是不带这个的。千万别随便去什么dll修复站下单个文件,那种站往往给你一个被下载站稍微改过的版本,塞个病毒进去你根本不知道。正确做法是去微软官网下载Visual Basic 5.0运行时库完整安装包,或者如果有用友自带的环境检测工具,一般安装包根目录下有个叫“环境检测.exe”或者“CheckEnv.exe”的文件,先运行它,缺什么它会自动扫描并提示。我当时跑了一遍,系统直接列了几项缺失:VB运行库、MDAC组件、还有SQL Server的客户端工具。前两个还好搞,SQL那个要大一些,因为用友T3强依赖SQL Server或者MSDE。如果你的电脑没装过数据库,Setup过程会卡在选择数据库那一步,让你填服务器名和密码,要么报错连不到。我朋友那台机子本来有个Access的Office组件,但SQL Server一点没装,最后老老实实下了个MSDE 2000简体中文版,先装好数据库,再装用友主体,流程才算顺畅跑通。

安装中常见的数据库连接报错和授权问题

走完环境检查,重新双击Setup,前面的界面都很顺,到配置数据库服务器那一步,弹了个窗口提示“连接数据库失败,请检查服务器名称或实例名”。这个问题我在装用友时遇到不下十次了,很多朋友在这就放弃了。其实原因特简单:用友默认装的数据库实例名和你在安装界面填的不一致。我在安装界面选的“本地服务器”,实例名留空,但MSDE装完后默认实例名是computerName或者一个随机字符串。你需要在SQL Server配置管理器里查看当前正在运行的实例名称,或者在CMD里开osql -L查一下列表。确认了之后,回到用友安装界面,手动填上正确的实例名,比如我填的是“WIN10-PC\SQLEXPRESS”,点测试连接,通了。还有一点,用友的加密狗或者授权文件在安装过程中也要注意。我朋友用的是老版本的物理加密狗,USB插上去系统没任何反应,差点以为狗坏了。后来打开用友的“加密服务”管理工具,发现服务根本没启动。去服务管理里找到UFNet 加密服务,设为自动启动,再重启一次电脑,加密狗就认出来了。如果是软件授权,那你需要在装完后登录用友系统管理的授权页面,把网站或邮件发给你的授权码手工填进去,不然只能当演示版跑,数据量有三个月的强制限制,超过直接不能操作。

防火墙和杀毒软件别全盘信任,适当加白名单

在用友下载站拿安装包时就容易中招,很多下载站会在包外面打包一个广告插件,甚至把用友原版程序替换成他们编译过的带外链版本。我这次也踩了雷:下载时杀毒软件一直在报“Win32/Adware.Downloader”,当时我图省事,直接关了杀毒软件继续下载解压。装完用友后第二天,用户的电脑多了两个浏览器工具栏,IE首页也被改成hao123。后来用卡巴斯基一扫描,安装目录下多了个ssloader64.dll,藏在用友的程序文件夹里,明显是下载站的捆绑货。所以我现在养成了一个习惯:不管在哪里下的用友安装包,解压后先右键查属性里的数字签名。正常用友的签名是以“UF”开头,或者有“Yonyou”字样的公司名称。如果签名信息是None或者Unknown Author,那基本上这包被动过手脚。之后安装的时候,把杀毒软件和防火墙打开,但将用友的安装文件夹比如D:\UF\UFT3设置为排除项,防止误杀关键的激活或加密服务文件。这比直接关掉防御系统安全多了。