VB6作的DLL在excell2003中加载为什么有的可以运行有的无法运行

VB6做的DLL在excell2003中加载为什么有的可以运行有的无法运行?我用VB6做了一个简单的从SQL 2008中取数据

VB6做的DLL在excell2003中加载为什么有的可以运行有的无法运行?
我用VB6做了一个简单的从SQL 2008中取数据的DLL,加载到excell2003的菜单中。经过测试,在我的本机(win2003+sp2)和三台测试机上效果都不一样。本机和三台测试机中一台(xp+SP2)运行正常。另两台上只能运行首次登陆的程序(也就是讲用户名和密码与数据库数据进行核对的程序),当进行正式的数据查询时就会没有反应。我估计应该是系统配置问题,但是找不到原因。
[解决办法]
DLL插件最麻烦。
excel2003是否精简版?估计不是这个问题,有问题会报错。
对方机器是否启用宏安全,是否允许加载DLL插件。这个问题可能性最大。
问题很多,我也经常遇到!
最好的办法还是把DLL加载宏写进OFFICE注册表!省却N多烦恼。

[解决办法]

引用:
DLL插件最麻烦。
excel2003是否精简版?估计不是这个问题,有问题会报错。
对方机器是否启用宏安全,是否允许加载DLL插件。这个问题可能性最大。
问题很多,我也经常遇到!
最好的办法还是把DLL加载宏写进OFFICE注册表!省却N多烦恼。

多谢指教。
我又测试了两台,发现其中一台的装了excell2003后在用360的自动更新加了些补丁就可以用了。而另外一台装的是精简版,重新安装完整版后还是不可以。
其实我最大的疑惑是我这个程序在本机执行前要先手动将桌面刷新一次,然后执行就没问题。之前我查到这个应该是创建active对象时的一个bug.如果这个问题能找到原因估计其他的问题也能解决。
最后问一下你说的把DLL加载宏写进注册表要怎么实现?
[解决办法]
最终的方法是将VB装在客户机上解决的,估计是客户机系统上某些环境不全导致的。猜想是不是VSS库的更新问题