以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 高级功能研发区 (http://weistock.com/bbs/list.asp?boardid=5) ---- 自定义dll文件的加载问题 (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=148073) |
-- 作者:李润Rex -- 发布时间:2017/2/22 15:31:13 -- 自定义dll文件的加载问题 老师,你好。我在后台VBA程序中使用了自定义的DynamicActive控件(名称为UserWrap),并在控件中使用了UserWrap.register方法注册了一个自定义的dll文件,但是会报错说无法加载该dll,请问应该将dll文件放在金字塔目录的什么位置可以解决这个问题? |
-- 作者:王锋 -- 发布时间:2017/2/22 16:11:38 -- 建议您把vba代码贴过来我们这边运行看一下哦,不然不好猜测问题的 |
-- 作者:王锋 -- 发布时间:2017/2/22 16:17:10 -- 您大概的意思是不是你自己做了个DLL控件,然后想在VBA代码中调用你自己的做的DLL控件? |
-- 作者:李润Rex -- 发布时间:2017/2/22 16:18:34 -- 我们建立控件的格式是这样的。其中user32.dll文件应该放在金字塔目录下的什么地方,才可以保证正常读取?(放在金字塔根目录或者fml目录下会显示报错为“1025:cound not find or load the dll”) Set Wrap = CreateObject("DynamicWrapper") Wrap.Register "user32.dll","Showstr","i=s","f=s", "r=f" |
-- 作者:王锋 -- 发布时间:2017/2/22 16:20:24 -- user32.dll是系统的DLL文件,这个是不需要你去做特别处理的。 参考范例
Set Wrap = CreateObject("DynamicWrapper") |
-- 作者:李润Rex -- 发布时间:2017/2/22 16:27:01 -- 我们上述描述的dll是自己编写的,不是系统自定义的dll(上述描述中使用user32的名字只是为了方便),为了避免误解,我们不妨叫它name1.dll,如果有这样的dll文件,上述问题怎么解决。 |
-- 作者:王锋 -- 发布时间:2017/2/22 16:29:51 -- 这个系统dll模式你自己写的话,我们有更简单便捷的调用方式,参考
利用金字塔的VBA与C++的混合编程来实现复杂的二次开发及交易功能 http://www.weistock.com/bbs/dispbbs.asp?boardid=5&Id=11505 |
-- 作者:李润Rex -- 发布时间:2017/2/22 16:35:43 -- 好的,我们可能在dll本地注册段出了一些问题,感谢您的帮助。 |