C语言创建动态dll和调用dll(visual studio 2013环境下)

 更新时间:2017年11月10日 09:51:42   作者:天南韩立  
本篇文章主要介绍了C语言创建动态dll和调用dll(visual studio 2013环境下),非常具有实用价值,需要的朋友可以参考下

第一部分:创建动态dll库。

1、打开visual studio 创建一个控制台应用程序。

2、选择DLL,空项目。


3、点击源文件,创建一个main.c文件

4、在main.c中写入一个简单的函数,内容如下:

__declspec(dllexport) 
 int mymax(int a,int b){ 
  return a + b; 
 } 

5、编译生成。

6、在项目的目录有dll和lib两个生成好的文件。

第二部分:在新建项目中使用dll。

7、新建一个c的控制台应用程序UseDll,把Dll.dll放入Debug目录下。

8、把Dll.lib放入UserDll目录下。

9、在UseDll项目中新建一个源文件use.c,代码如下:

#include<stdio.h> 
 
#pragma comment(lib,"Dll.lib") 
 
int mymax(int a,int b); 
 
int main(){ 
 printf("调用动态dll函数的结果:%d",mymax(5,6)); 
 getchar(); 
 return 0; 
} 

10、运行结果如下

PS:vs2013调试程序时出现“计算机丢失.dll文件”

在VS环境下能够编译成功,但是在运行.exe文件时,出现“计算机丢失xxx.dll文件”的提示的解决方式。

发生这种问题的根本原因在于环境变量的设置上,计算机只会在path下包含的目录里去寻找程序所要运行的.dll文件,若我们所要使用到的.dll文件没有包含在环境变量path中,则会发生错误:计算机丢失xxx.dll文件。

工具/原料

  1. VS2013或者其他版本
  2. VTK库或者其他库

方法/步骤

这里以丢失vtkIOPLY-7.0-gd.dll文件为例(主要是关于PCL1.8.0),找到VTK的安装目录下的bin文件夹(包含vtkIOPLY-7.0-gd.dll),我的bin文件夹是在C:\Program Files (x86)\PCL 1.8.0\3rdParty\VTK\bin

将上述目录添加到环境变量Path中,如下图所示

重新开启项目,重新生成解决方案,则问题就会解决

注意事项

这里不仅仅是针对vtkIOPLY-7.0-gd.dll文件,任何丢失.dll文件都可以使用此方式解决

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • C语言中有哪些字符处理函数你知道吗

    C语言中有哪些字符处理函数你知道吗

    这篇文章主要为大家详细介绍了C语言字符处理函数,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-03-03
  • Qt6.0开发环境搭建步骤(图文)

    Qt6.0开发环境搭建步骤(图文)

    这篇文章主要介绍了Qt6.0开发环境搭建步骤(图文),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • C++模板基础之函数模板与类模板实例详解

    C++模板基础之函数模板与类模板实例详解

    C++ 除了支持函数模板,还支持类模板(Class Template),所以下面这篇文章主要给大家介绍了关于C++模板基础之函数模板与类模板的相关资料,需要的朋友可以参考下
    2021-06-06
  • wxWidgets实现无标题栏窗口拖动效果

    wxWidgets实现无标题栏窗口拖动效果

    这篇文章主要为大家详细介绍了wxWidgets实现无标题栏窗口拖动效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-02-02
  • OpenCV 圆与矩形识别的方法

    OpenCV 圆与矩形识别的方法

    这篇文章主要介绍了OpenCV 圆与矩形识别的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • 浅谈C++反向迭代器的设计

    浅谈C++反向迭代器的设计

    本文主要介绍了浅谈C++反向迭代器的设计,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • C语言获取程序名称的四种方法

    C语言获取程序名称的四种方法

    这篇文章主要为大家详细介绍了C语言中获取程序名称的四种方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-11-11
  • C语言创建动态dll和调用dll(visual studio 2013环境下)

    C语言创建动态dll和调用dll(visual studio 2013环境下)

    本篇文章主要介绍了C语言创建动态dll和调用dll(visual studio 2013环境下),非常具有实用价值,需要的朋友可以参考下
    2017-11-11
  • C语言摄氏度互相转换华氏

    C语言摄氏度互相转换华氏

    这篇文章主要介绍了C语言摄氏度互相转换华氏,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • C++ 中placement new 操作符使用方法

    C++ 中placement new 操作符使用方法

    这篇文章主要介绍了C++ 中placement new 操作符使用方法的相关资料,需要的朋友可以参考下
    2017-05-05

最新评论