最近公司处理数据,原来的小工具依赖的是ArcGis10.1类库,其它版本的ArcGis无法正常使用,被迫卸载新装的10.5重装安装10.1,但是安装过程中一直报Error1904.Module "C:\Program Files (x86)\Common Files\Tom Sawyer Software\8.0.0\tsx9service80udep32.ocx"faild toregist.重装、重启、删注册表、超级管理员方式运行等多种方式都试了一遍,问题依旧。

arcgis10.6启动许可不成功(安装ArcGis10.1报1904错误及解决办法)(1)

Error 1904错误

网上的解决办法都试了一遍,没有找到有效的解决办法,于是耐心分析一下问题出在哪里吧。安装过程中忽略错误继续安装,同时记录了一下,总共是有4个OCX注册时报错,根据报错找到对应的OCX文件,手动注册一下,发现还是报错,这个错误有些眼熟,应该是缺少类库,但是提示并不明确,提示中提到的sxstrace.exe工具试了一下不太会用。

arcgis10.6启动许可不成功(安装ArcGis10.1报1904错误及解决办法)(2)

手动注册OCX文件依旧报错

想起来前段时间同事推荐的一款工具Depends(貌似是微软出的一款小工具),可以将OCX或DLL文件拖到该工具下,查看类库依赖。

arcgis10.6启动许可不成功(安装ArcGis10.1报1904错误及解决办法)(3)

利用depends工具进行类库依赖检查

根据下方看到的黄色问号的dll文件,判断应该是缺少该类库,在电脑中或者网络搜索该文件进行下载,简单粗暴放到OCX文件同级目录或者System32文件夹下。

关键步骤:

还是报错,继续找原因,查看程序事件日志,找到最近执行注册的OCX事件对应的错误日志,分析一下,使用的类库和MAINFEST文件中定义的版本不一致,然后修改MAINFEST中对应的版本号,重新注册OCX,成功。

arcgis10.6启动许可不成功(安装ArcGis10.1报1904错误及解决办法)(4)

修改MAINFEST引用的版本号,注册成功

哈哈,搞定,应用程序正常打开。

arcgis10.6启动许可不成功(安装ArcGis10.1报1904错误及解决办法)(5)

搞定,程序正常打开

,