首页 / 浏览问题 / 组件GIS / 问题详情
外部组件发生异常
20EXP 2020年09月10日
使用产品: iObject.net 10i

操作系统: win10 x64

数据类型: mysql

问题详情描述:客户机上运行报这个错,但开发的本机调试和在开发机上安装运行都不会报这个错,是什么原因,估计是环境配置的问题,猜测dll缺失,但我是完整将整个超图的bin拷贝到了运行目录下的。

问题重现步骤:应该是做更新,查找操作的时候发生,但奇怪的是,程序这是做一系列的新增是没问题,一些更新也没问题,但在做最后一个更新的时候报这个问题。
问题关闭原因: 自己解决了

1个回答

1、开发机上和客户机上用的是同一份数据吗?先排除一下是否是某个数据存在问题,因为根据你的描述只有更新最后一个的时候报错。

2、你部署是如何部署的,是直接将dll拷贝到exe的同级目录下面的?将工程利用私有部署去部署后拷贝到客户机上面运行看看是否会出现这样的情况。

私有部署的流程:

1、将组件的完整bin包拷贝到exe的统计目录;

2、将程序的引用dll替换为拷贝过去路径下的dll,并且将属性中的复制到本地改为false;

3、在工程的config配置文件加上下面的配置,关键是privatePath,设置的就是dll的路径,这里是相对路径

  1. <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
    <probing privatePath="Bin"/>
    </assemblyBinding>
    

4,620EXP 2020年09月10日
1、数据是用的同一份数据,但导的数据库不是同一个数据库(这会有问题吗)

2、我的部署是私有部署,是按照你给的流程这样的
目前无法确定是否是因为库的问题,如果你能定位到是那一部分功能出现的问题,你可以将这部分功能单独提出来写一个测试代码查看是否会出现这样的现象
调用DatasetVector的GetRecordset(bool isEmptyRecordset, CursorType cursorType);方法的时候报的问题
现在发现是不一样的数据,当我本地用客户给的新数据的时候,要报这个错,报错点上一个已经写出了,而这个函数只是传一个bool和enum,为什么会报外部组件异常呢?
请问能远程帮忙看一下吗
我将CursorType 从dynamic改为static就对了
...