zoukankan      html  css  js  c++  java
  • 如何创建dll以及使用

     使用dll的好处: 隐藏了代码,公开了功能。

     在VS2017中,创建一个DLL工程项目,将你的代码写入.cpp文件中,然后比如  这样:

    ////////////   test.cpp
    
    
    #include "stdafx.h"
    #include "first.h"
    #include <Windows.h>
    #include <iostream>
    using namespace std;
    void show(void)
    {
        SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_RED);
        cout << "";
        SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_RED | FOREGROUND_GREEN);
        cout << "";
        SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_GREEN | FOREGROUND_BLUE);
        cout << ",";
        SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_RED | FOREGROUND_BLUE);
        cout << "";
        SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_GREEN);
        cout << "";
        SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_BLUE);
        cout << "";
    }

    再创建一个.h文件 此时要用到VS的专用关键字  __declspec(dllexport) 

    /////    test.h
    #pragma once
    
    
    __declspec(dllexport) void show(void);

    除此之外 ,打开项目的属性页,将【预编译头】设置为【不使用预编译头】,将【代码生成】中的【运行库】设置为【多线程调试(/MTd)】,然后生成解决方案,就可以了,生成以后,我们可以在项目的debug文件中找到 对应的 dll 、lib文件。

    动态链接库的使用:

    将生成的lib和dll文件拷贝到要使用它们的项目文件中,在使用了他们的代码上面写上

    #pragma comment(lib,"Dll1.lib")  //  双引号里写的是 要使用的动态链接库的名字
    
    __declspec(dllimport) void show(void);

    就可以了。

    注意事项:   在项目生成.exe文件后,必须将使用过的库放入同一目录下,.exe文件才能正常运行,否则会报错。

     

    如果说,我们想要把这个应用程序发送给一个没有安装vs2017环境的电脑中运行,我们还要添加这些个dll

  • 相关阅读:
    9、SpringMVC:Ajax技术(扩展:百度搜索框提示应用)
    8、SpringMVC:整合SSM
    SpringMVC:多视图解析器配置以及问题
    7、SpringMVC:JSON讲解
    IDEA中lombok的插件配置及使用
    C语言编程练习23:美丽数
    C语言编程练习45:ACM CLUB晚会
    C语言编程练习22:2^x mod n = 1
    C语言编程练习21:找规律填数字
    C语言编程练习20:计算合并
  • 原文地址:https://www.cnblogs.com/ll-10/p/9361510.html
Copyright © 2011-2022 走看看