Dll

Posted butchert

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Dll相关的知识,希望对你有一定的参考价值。

// dll.cpp : Defines the entry point for the DLL application.
//

#include "stdafx.h"
#include "iostream.h"
_declspec(dllexport) int add(int a,int b)
{
    return a+b;    
}

_declspec(dllexport) int sub(int a,int b)
{
    return a-b;    
}

_declspec(dllexport) int mul(int a,int b)
{
    return a*b;    
}

_declspec(dllexport) void print(int a,int b)
{
    cout<<"Fuck,XXXXX"<<endl;
}

BOOL APIENTRY DllMain( HANDLE hModule, 
                       DWORD  ul_reason_for_call, 
                       LPVOID lpReserved
                     )
{
    return TRUE;
}







// main.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include "iostream.h"
#pragma comment(lib,"dll.lib")

extern int add(int a,int b);
extern int sub(int a,int b);
extern int mul(int a,int b);
extern void print(int a,int b);
int main(int argc, char* argv[])
{
    cout<<add(1,2)<<endl;
    cout<<sub(1,2)<<endl;
    cout<<mul(1,2)<<endl;
    print(1,2);
    printf("Hello World!
");
    return 0;
}




//在动态链接库编译执行完成以后,把生成的dll文件和lib文件拷贝到main函数的目录的Debug前一级目录中,否则会出现无法打开lib文件的情况

 

以上是关于Dll的主要内容,如果未能解决你的问题,请参考以下文章

我可以将 std::string 传递给 DLL 吗?

解决未能加载文件或程序集“Newtonsoft.Json ...."或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。 (异常来自 HRESULT:0x80131040)(代码片段

在Visual Studio 2010中将Native / C ++ DLL链接到托管C ++ / CLI包装器

c++中的纯虚函数机制如何从DLL中暴露函数

地址的奇怪错误

谁能告诉我我在片段中犯了错误