VB VC混合编程第一步

前端之家收集整理的这篇文章主要介绍了VB VC混合编程第一步前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

大家都知道 C++是在很多地方能够取代汇编语言的半低级语言,

C++开发的代码具有很高的运行效率.

VB是基于控件的程序开发,将程序开发的难度和复杂程度降到最低,

但是会受到控件功能本身的限制,自身代码运行也不高,然而API函数

实现可以使VB能够调用高效的动态链接代码,下面就简单举个例子:

VC++6.0开发动态链接

新建工程,选择 Win32 Dynamic Link Library,取名叫yxMath //游侠数学,呵呵

选择 A Simple Dll //一个简单的DLL 系统会帮你写好入口,其实也就3行代码

然后在 yxMath.cpp 写下这些:

#include "stdafx.h"//包含标准afx头文件 stdafx.h

#define CUSTOM_API __declspec(dllexport) //定义接口类型
CUSTOM_API int __stdcall MyFun(int a,int b);//声明API接口
int __stdcall GetSum(int intX,int intY)//声明一个函数,求两个数的和
{
return intX+intY;
}

//下面的是 Dll 主入口函数,系统自动给的,如果选择 A empty dll 则需要自己添加.

BOOL APIENTRY DllMain( HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
return TRUE;//管他什么连接一律返回 true
}

新建文件,选择C++ Source File (即源文件) 取名 APIXports.def

在里面输入以下内容:

EXPORTS
GetSum //输出这个函数,可以分行写多个

然后保存直接构建 yxMath.Dll 0 error(s) 0 warning(s)

运行 Visual Basic 6.0

创建一个标准 exe工程

两个TextBox 再一个CommandButton 再一个TextBox

开始写代码:

'API函数声明

Private Declare Function GetSum Lib "yxMath.dll" (ByVal intX As Integer,ByVal intY As Integer) As Integer

'按钮的事件

Private Sub Command1_Click()
Text3.Text = Str(GetSum(Val(Text1.Text),Val(Text2.Text)))
End Sub

生成 工程1.exe 将程序和yxMath.Dll 放在同一个目录下(别再问我目录是什么)

运行程序,输入1 2 点一下按钮 看结果是什么 Oh Yeah

今天能算1+1 明天超过计算机

今天能用VBC 明天统治全领域

猜你在找的VB相关文章