使用VC脚本编译本地dll调用

1. 激活环境变量,path,lib,include等
运行C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin>vcvars32.bat
VC脚本
Path,lib,include
注意观察Path, LIB,INCLUDE这几个环境变量,若这里出现异常,后面编译链接会报错
2.编写本地源程序(本文使用C语言)Math.c和Math.h

//Math.c
#define MYDLL __declspec(dllexport)

MYDLL double Add(double a, double b)
{
    return a + b;
}

MYDLL double Sub(double a, double b)
{
    return a - b;
}

MYDLL double Mul(double a, double b)
{
    return a * b;
}
//Math.h
extern double Add(double a, double b);
extern double Sub(double a, double b);
extern double Mul(double a, double b);

3.编译DLL

cl /c Math.c //generate .obj 

这里写图片描述

link  -out:Math.dll /dll Math.obj //generate .dll

这里写图片描述

dumpbin -exports Math.dll //view dll content

这里写图片描述
4 编写本地调用DLL的源程序UseMathDll.c

//UseMathDll.c
#include "Math.h"
#include <stdio.h>
// int _tmain(int argc, _TCHAR* argv[]) //c++ feature
int main()
{
	double result =  Mul(1.0f, 5.5f);
	printf ("result = %f\n",result);
	return 0;
}

5 编译并链接本地DLL调用程序

//call the dll
"C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\cl.exe" /c UseMathDll.c
"C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\link.exe"  -out:a.exe UseMathDll.obj  Math.lib

这里写图片描述
这里写图片描述
从上可以看到从UseMath.c中调用Math.dll的Add函数, 并返回结果输出。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值