none
在DLL工程里添加码源目录下的源文件并生成可用的DLL RRS feed

  • 问题

  • NS3网络仿真开发环境搭建。账户没被验证发不了链接。想搭建的是在csdn上的lights_joy大神搭建的在visual studio里的NS3网络仿真开发环境。可是我不知道要怎么在DLL工程里添加NS3目录下的源文件然后生成可用的DLL。求大神帮助!拜谢!如果我的问题很愚蠢请原谅我这个菜鸟
    2016年1月21日 0:41

答案

  • NS3网络仿真开发环境搭建。账户没被验证发不了链接。想搭建的是在csdn上的lights_joy大神搭建的在visual studio里的NS3网络仿真开发环境。可是我不知道要怎么在DLL工程里添加NS3目录下的源文件然后生成可用的DLL。求大神帮助!拜谢!如果我的问题很愚蠢请原谅我这个菜鸟

       你是想把源码编成可用的DLL文件吗?如果是可以参考下面的思路:

    1. vs 创建一个新的工程,工程可以选择基于win32的或者其他,我选择是win32 控制台
    2. 点击下一步,选择DLL,然后点击完成。
    3. 我在我的工程里面创建了一个类,和一个全局函数(功能实现加法运算),代码如下:
    #include "stdafx.h"
    #include "d.h"
    #include <stdio.h>
    using namespace std;
    
    
    d::d()
    {
    	printf("hello dll ");
    }
    
    
    d::~d()
    {
    	printf(" !!! hello dll ");
    }
    
    extern "C" __declspec(dllexport) int __stdcall Add_new(int a, int b)
    
    {
    
    	return a + b;
    
    }
    class d
    {
    public:
    	d();
    	~d();
    
    };
    
    extern "C" __declspec(dllexport) int __stdcall Add_new(int a, int b);
    

    工程会生成dll文件和lib文件,你现在需要把dll 文件和lib文件都拷贝到你要用它的工程里面去,关于lib dll文件的区别,可以参考这个链接:http://zhidao.baidu.com/link?url=xgefYXPpLFAuDOPBAh1Yki4UJ9t-DvA5pJqq1oF_sFsNarfq8_nEWYRsNWW_EfrUNQ7M32XygJ4DcfZnI46jTI4kQgBuTAzwR3n5cWrC71C

    如何使用dll:

                    在新的工程里面添加dll里面的头文件和如下代码 :

                    #pragma comment(lib,"DllTest.lib")

    extern "C" _declspec(dllimport) int _stdcall Add_new(int a, int b);//声明导入函数

    这样就可以使用DLL文件了,以上代码我测试过是ok,希望对你有所帮助。你也可以参考MSDN上面的文档,链接是:https://msdn.microsoft.com/en-us/library/ms235636.aspx?f=255&MSPPError=-2147217396


    2016年1月21日 7:05
    版主
  • 用VS创建一个DLL工程,然后再Solution Explorer上项目上右键添加已存在的文件...,将需要的源文件和头文件添加到现有的工程中去。
    然后自己修改,自己添加需要导出的函数。__declspec(dllexport)或者用def定义导出的函数。

    Visual C++ enthusiast, like network programming and driver development. At present is being engaged in the WinCE/Windows Mobile platform embedded development.

    2016年1月21日 10:21
    版主

全部回复

  • NS3网络仿真开发环境搭建。账户没被验证发不了链接。想搭建的是在csdn上的lights_joy大神搭建的在visual studio里的NS3网络仿真开发环境。可是我不知道要怎么在DLL工程里添加NS3目录下的源文件然后生成可用的DLL。求大神帮助!拜谢!如果我的问题很愚蠢请原谅我这个菜鸟

       你是想把源码编成可用的DLL文件吗?如果是可以参考下面的思路:

    1. vs 创建一个新的工程,工程可以选择基于win32的或者其他,我选择是win32 控制台
    2. 点击下一步,选择DLL,然后点击完成。
    3. 我在我的工程里面创建了一个类,和一个全局函数(功能实现加法运算),代码如下:
    #include "stdafx.h"
    #include "d.h"
    #include <stdio.h>
    using namespace std;
    
    
    d::d()
    {
    	printf("hello dll ");
    }
    
    
    d::~d()
    {
    	printf(" !!! hello dll ");
    }
    
    extern "C" __declspec(dllexport) int __stdcall Add_new(int a, int b)
    
    {
    
    	return a + b;
    
    }
    class d
    {
    public:
    	d();
    	~d();
    
    };
    
    extern "C" __declspec(dllexport) int __stdcall Add_new(int a, int b);
    

    工程会生成dll文件和lib文件,你现在需要把dll 文件和lib文件都拷贝到你要用它的工程里面去,关于lib dll文件的区别,可以参考这个链接:http://zhidao.baidu.com/link?url=xgefYXPpLFAuDOPBAh1Yki4UJ9t-DvA5pJqq1oF_sFsNarfq8_nEWYRsNWW_EfrUNQ7M32XygJ4DcfZnI46jTI4kQgBuTAzwR3n5cWrC71C

    如何使用dll:

                    在新的工程里面添加dll里面的头文件和如下代码 :

                    #pragma comment(lib,"DllTest.lib")

    extern "C" _declspec(dllimport) int _stdcall Add_new(int a, int b);//声明导入函数

    这样就可以使用DLL文件了,以上代码我测试过是ok,希望对你有所帮助。你也可以参考MSDN上面的文档,链接是:https://msdn.microsoft.com/en-us/library/ms235636.aspx?f=255&MSPPError=-2147217396


    2016年1月21日 7:05
    版主
  • 用VS创建一个DLL工程,然后再Solution Explorer上项目上右键添加已存在的文件...,将需要的源文件和头文件添加到现有的工程中去。
    然后自己修改,自己添加需要导出的函数。__declspec(dllexport)或者用def定义导出的函数。

    Visual C++ enthusiast, like network programming and driver development. At present is being engaged in the WinCE/Windows Mobile platform embedded development.

    2016年1月21日 10:21
    版主