当前位置:编程学习 > VB >>

无法引用一个用Power Builder写的DLL

这是我调试时写的代码:
*****************************************
Private ClsHZK As New HZK.Class_noerng

Private Sub Command1_Click()
    If ClsHZK.open = "1" Then
        Call MsgBox("OK", vbOKOnly, "OK")
    End If
End Sub
*****************************************
1、该DLL是Power Builder写的,详细代码没有
2、该DLL无法用regedt32注册,说“指定文件不是注册脚本”,用的是DLL附带的reg文件注册的
3、我在工程中引用了这个HZK.DLL,可以在对象浏览器中查到DLL里的方法
4、编译成功,但当运行到   If ClsHZK.open = "1" Then   是就说
实时错误'-2147024770 (8007007e)':
自动化错误


后来我又先后用了其他写法如

Private Declare Function open Lib "hyjk.dll" () As String     会说找不到文件

Set oa = CreateObject("HZK.Class_noerng")   会说“AtciveX 部件不能创建对象”



我自己用VB写的DLL引用就没问题,用这个就不行,已经想不出还有什么其他方法,求教一下大家了~~~~~







--------------------编程问答-------------------- PB 本身的运行库是否安装了? --------------------编程问答-------------------- 没有安装PB的东西,应该不用吧,拿个DLL还要安装这些。我用VB写的DLL可不用装VB啊~~~~~~~ --------------------编程问答-------------------- http://soft6.com/tech/5/59907.html --------------------编程问答-------------------- 看过网站的内容了,在没有办法的情况下不失为一个方向,这两天找个PB来装装看咯。继续期待有其他提议~~~ --------------------编程问答--------------------
引用 2 楼 adamlin2000 的回复:
没有安装PB的东西,应该不用吧,拿个DLL还要安装这些。我用VB写的DLL可不用装VB啊~~~~~~~

XP 自动安装了 VB 的运行库。

类似的:用 Oracle 必须安装客户端,用 Sql Server 就不需要。 --------------------编程问答-------------------- 我直接安装了PB9.0,不过还是不行~~~~~ --------------------编程问答-------------------- 如需要,我可以把该DLL和相关文件发给各位~ --------------------编程问答-------------------- 将DLL放到程序的目录下并且就注册到程序目录下
然后你这个语句就能运行通过了 --------------------编程问答-------------------- 可以运行了。一开始我把DLL放在C盘并注册,而我的代码是在E盘的,后来发现运行不了时也有想过在代码的目录内也放一个DLL,但还是不行。刚我直接把代码复制到C盘DLL的目录就可以了,看来确实只认注册的那个,而且必须在同目录下。结贴了,感谢Tiger_Zhao的关注,分部分点数出来希望hua321154别介意~~~~~~ --------------------编程问答-------------------- 这是搜索外部 dll 的路径问题,见这个帖子。 --------------------编程问答-------------------- 因为 hyjk.dll 本身需要使用其他 dll,所以不能简单地复制到 exe 所在目录。 --------------------编程问答-------------------- 我也遇到一个类似的问题:
dll1是c++写的,cdecl调用约定,该dll使用到其他2个dll2\dll3,使用VB.NET 新建项目,把3个dll全部复制到项目目录下,无法调用,将编译后的exe放到该dll1、2、3 原始目录下,运行正常

这样有个问题,我怎么把这个程序分发? --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- 一个多月了... --------------------编程问答-------------------- 沉的不能再沉的帖子被你们顶上来了。。。 --------------------编程问答-------------------- 也不需要吧

引用 5 楼 tiger_zhao 的回复:
引用 2 楼 adamlin2000 的回复:没有安装PB的东西,应该不用吧,拿个DLL还要安装这些。我用VB写的DLL可不用装VB啊~~~~~~~
XP 自动安装了 VB 的运行库。

类似的:用 Oracle 必须安装客户端,用 Sql Server 就不需要。
补充:VB ,  COM/DCOM/COM+
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,