欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件高级功能研发区 → 金字塔VBA调用外部DLL出错如何处理?

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有4797人关注过本帖树形打印复制链接

主题:金字塔VBA调用外部DLL出错如何处理?

帅哥哟,离线,有人找我吗?
长征万里
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:4 积分:0 威望:0 精华:0 注册:2015/9/3 21:16:46
金字塔VBA调用外部DLL出错如何处理?  发帖心情 Post By:2015/9/3 21:37:05 [只看该作者]

我做了一个DLL文件,主要功能是将在金字塔VBA里的一些变量数据传到DLL文件,经过DLL文件内部的计算,然后再将结果传回VBA。金字塔代码如下:
Sub APPLICATION_VBAStart()
            Set Wrap = CreateObject("ABC.HX")
End Sub
其中:DLL文件原来是用VB6.0写的,文件名是ABC.DLL,类名是HX。
以前在金字塔3.53版本运行没有任何问题,非常的顺畅。但是到了现在升级到了3.63版本,就不行了,金字塔最后直接崩溃了。
经过咨询客服人员,说贵公司的软件采用新的平台重新编译了,分了32位和64位,DLL文件也需要用新平台编译分32位和64位。
我将原来的文件全部移植到了VB.NET 2010,分了32位和64位。而且经过测试也通过了。
但是到了金字塔后,提示:
编译器错误‘429’,ActiveX部件不能创建对象“ABC.HX”。
请问:如何处理这种问题,毛病可能出现在哪里?
其他同学有无类似情况,不会金字塔有BUG吧?

 回到顶部
帅哥哟,离线,有人找我吗?
马良
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:1516 积分:229 威望:0 精华:0 注册:2012/3/30 12:40:56
  发帖心情 Post By:2015/9/4 10:03:29 [只看该作者]

首先你要确定金字塔平台是否是你升级到64位后出现的问题

 回到顶部
帅哥哟,离线,有人找我吗?
长征万里
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:4 积分:0 威望:0 精华:0 注册:2015/9/3 21:16:46
  发帖心情 Post By:2015/9/4 10:15:34 [只看该作者]

金字塔由3.53自动升级到3.63,以及安装的32位3.63版本、64位3.63版本全部不行。
即3.53能够支持,现在到了3.63不管是32位或者64位都不行。
我用VB2010写了最简单的DLL文件,在金字塔里用Set Wrap = CreateObject("ABC.HX")调用也是不行。
有谁用过VBA调用DLL文件吗?如何解决的。请指点!

 回到顶部
帅哥哟,离线,有人找我吗?
马良
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:1516 积分:229 威望:0 精华:0 注册:2012/3/30 12:40:56
  发帖心情 Post By:2015/9/4 10:32:24 [只看该作者]

你可以试试在32位下的Excel的vba环境下调用你的这个32位的dll看能否成功

 回到顶部
帅哥哟,离线,有人找我吗?
长征万里
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:4 积分:0 威望:0 精华:0 注册:2015/9/3 21:16:46
  发帖心情 Post By:2015/9/4 11:14:08 [只看该作者]

有谁用过Set Wrap = CreateObject("***.**")这条语句,现在还能用吗?

 回到顶部
帅哥哟,离线,有人找我吗?
王锋
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:11808 积分:20695 威望:0 精华:10 注册:2009/8/18 8:15:13
  发帖心情 Post By:2015/9/4 12:39:43 [只看该作者]

Set Wrap = CreateObject("***.** 都不成功的话,是跟金字塔平台没关系的,你好好检查一下你的DLL是否是有问题,或者是没有注册,或者注册的路径有变化了


金字塔—专业程序化软件提供商

金字塔-技术部

-----------------------------------------------------------------------------------------------------

工作时间:周一至周五 08:30 - 17:30   周末及法定节假日休息

Email:service@weistock.com
 回到顶部
帅哥哟,离线,有人找我吗?
长征万里
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:4 积分:0 威望:0 精华:0 注册:2015/9/3 21:16:46
  发帖心情 Post By:2015/9/5 9:36:17 [只看该作者]

问题已经解决了,谢谢两位老师。Set Wrap = CreateObject没有问题,非常好!
祝愿金字塔越做越好!越来越强大!

 回到顶部