
VB6调用VC++6.0生成的DLL出错,在线等求高手解决困难,急............
最近做了一个VB掉用DLL动态库实验的程序,发生两个错误:一、在VC++6.0编译器写了几行代码,编译连接后生成dll_1.dll文件放在VB工程文件目录下,发生第一个错...
最近做了一个VB掉用DLL动态库实验的程序,发生两个错误:
一、在VC++6.0编译器写了几行代码,编译连接后 生成dll_1.dll文件放在VB工程文件目录下,发生第一个错误,找不到dll_1.dll文件。
二、在VC++6.0那边编译连接好后直接执行绑定了VB生成的程序,找不到文件错误消失,但调试时发现:一点add按钮就提示运行时发生错误:453, 在dll_1.dll文件里面找不到动态链接库入口点adder
【原文:Run-time error'453':Cannot find DLL entry point adder in dll_1.dll】
下图是在VB中的控件名称
下面是在VB中的代码:
Private Declare Function adder Lib "dll_1.dll" (ByVal hWnd As Long, ByVal v1 As Integer, ByVal v2 As Integer) As Integer
Private Sub add_Click() Dim result As Long val1.Text = Val(val1.Text) val2.Text = Val(val2.Text) result = adder(Me.hWnd, val1.Text, val2.Text) res.Caption = val1.Text & "+" & val2.Text & "=" & result End Sub
Private Sub exit_Click()
Unload Me End
End Sub下面是在VC++中的代码:
#include "stdafx.h"
int APIENTRY DllMain(HWND hWnd, int v1, int v2){ int sum = v1 + v2; return sum;}
VC++6.0提示DLL动态链接库编译链接都无错,但运行时发生错误:
求高手解释,在线等,急、、、
问题本人已解决,在VC编译动态库之时声明导出函数后重新编译链接完成 展开
一、在VC++6.0编译器写了几行代码,编译连接后 生成dll_1.dll文件放在VB工程文件目录下,发生第一个错误,找不到dll_1.dll文件。
二、在VC++6.0那边编译连接好后直接执行绑定了VB生成的程序,找不到文件错误消失,但调试时发现:一点add按钮就提示运行时发生错误:453, 在dll_1.dll文件里面找不到动态链接库入口点adder
【原文:Run-time error'453':Cannot find DLL entry point adder in dll_1.dll】
下图是在VB中的控件名称
下面是在VB中的代码:
Private Declare Function adder Lib "dll_1.dll" (ByVal hWnd As Long, ByVal v1 As Integer, ByVal v2 As Integer) As Integer
Private Sub add_Click() Dim result As Long val1.Text = Val(val1.Text) val2.Text = Val(val2.Text) result = adder(Me.hWnd, val1.Text, val2.Text) res.Caption = val1.Text & "+" & val2.Text & "=" & result End Sub
Private Sub exit_Click()
Unload Me End
End Sub下面是在VC++中的代码:
#include "stdafx.h"
int APIENTRY DllMain(HWND hWnd, int v1, int v2){ int sum = v1 + v2; return sum;}
VC++6.0提示DLL动态链接库编译链接都无错,但运行时发生错误:
求高手解释,在线等,急、、、
问题本人已解决,在VC编译动态库之时声明导出函数后重新编译链接完成 展开
1个回答
展开全部
问题一 dll放在你的程序旁边也就是说dll和程序要在相同目录下 或者 adder Lib "dll的绝对路径"
问题二 dll中的函数是要dllexport导出后才可以用的
问题二 dll中的函数是要dllexport导出后才可以用的
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询