记得在学校学习C++时基本都不用DLL,也就是搞图形学用了用第三方的DLL。现在开始搞公司的一个大项目, 粗粗一看50几个DLL。所以我就仔细研究了下,转载一篇我觉得写的不错的文章 DLL的优点 简单的说,dll有以下几个优点: 1) 节省内存。同一个软件模块,若是以源代码的形式重用...
转载 2010-10-23 22:57:00
222阅读
2评论
半年不能上网,最近网络终于通了,终于可以更新博客了,写点什么呢?决定最近写一个编程技术系列,其内容是一些通用的编程技术。例如DLL,COM,Socket,多线程等等。这些技术的特点就是使用广泛,但是误解很多;网上教程很多,但是几乎没有什么优质良品。我以近几个月来的编程经验发现,很有必要好好的总结一下这些编程技术了。一来对自己是总结提高,二来可以方便光顾我博客的朋友。 好了,废话少说,言归正传。第
转载 精选 2012-11-07 22:14:49
497阅读
显式调用和隐式调用何时使用显式调用?何时使用隐式调用?我认为,只有一个时候使用显式调用是合理的,就是当客户端不是C/C++的时候。这时是无法隐式调用的。例如用VB调用C++写的dll。(VB我不会,所以没有例子) Def和__declspec(dllexport)其实def的功能相当于extern “C” __declspec(dllexport),所以它也仅能处理C函数,而不能处理重载函数。而__declspec(dllexport)和__declspec(dllimport)配合使用能够适应任何情况,因此__declspec(dllexport)是更为先进的方法。所以,目前普遍的看法是不使用def文件,我也同意这个看法。   从其它语言调用DLL从其它编程语言中调用DLL,有两个最大的问题,第一个就是函数符号的问题,前面已经多次提过了。这里有个两难选择,若使用extern “C”,则函数名称保持不变,调用较方便,但是不支持函数重载等一系列c++功能;若不使用extern “C”,则调用前要查看编译后的符号,非常不方便。
转载 2009-11-03 20:07:35
503阅读
半年不能上网,最近网络终于通了,终于可以更新博客了,写点什么呢?决定最近写一个编程技术系列,其内容是一些通用的编程技术。例如DLL,COM,Socket,多线程等等。这些技术的特点就是使用广泛,但是误解很多;网上教程很多,但是几乎没有什么优质良品。我以近几个月来的编程...
转载 2013-12-12 11:05:00
157阅读
2评论
记得在学校学习C++时基本都不用DLL,也就是搞图形学用了用第三方的DLL。现在开始搞公司的一个大项目, 粗粗一看50几个DLL。所以我就仔细研究了下,转载一篇我觉得写的不错的文章 DLL的优点 简单的说,dll有以下几个优点: 1) 节省内存。同一个软件模块,若是以源代码的形式重用...
转载 2010-10-23 22:57:00
131阅读
2评论
# 使用 C 语言编写 Python DLL 的基本指南 在现代编程中,Python 以其简洁易用的语法和强大的库生态系统而受到广泛欢迎。但在某些情况下,开发者可能需要利用 C 语言的高效性和性能优势。这时,通过编写 C 语言的动态链接库(DLL)并在 Python 中调用它们,便成了一种有效的解决方案。本文将介绍如何使用 C 语言创建 DLL,并让 Python 调用它们。 ## 步骤 1:
原创 2024-11-01 09:16:53
46阅读
c++builder动态调用dll // 定义 typedef int __stdcall MyFunction (int x, char *str); int rtn = 0; String dllName = "XXXX.dll"; HINSTANCE hInstance = LoadLibrary(dllName.c_str()); MyFunction * pMyFunction =
转载 2015-11-17 09:43:00
508阅读
DLL编写教程半年不能上网,最近网络终于通了,终于可以更新博客了,写点什么呢?决定最近写一个编程技术系列,其内容是一些通用的编程技术。例如DLL,,Socket,多线程等等。这些技术的特点就是使用广泛,但是误解很多;网上教程很多,但是几乎没有什么优质良品。我以近几个月来的编程经验发现,很有必要好好的总结一下这些编程技术了。一来对自己是总结提高,二来可以方便光顾我博客的朋友。好了,废话少说,言
转载 2023-12-14 14:35:45
3440阅读
1点赞
2评论
经过网上查,发现两者的dll应该能共用的,就试了一下,好一会儿才成功,不多说,直接上示例。IDE为vs2008。VB.net中编写类库,设置项目名称(同时默认为解决方案名称)后开始编写,代码如下:Namespace test1    Public Class Cls1        Public F
转载 2023-05-24 11:48:41
604阅读
导出函数:需要在函数前面写入:#define REAL_VIDEO_API extern "C"__declspec(dllexport)如果是C+库动态加载C++库的话还需要新建def文件,声明如下:EXPORTS CreateDevice @1Init @2UnInit @3C#不需要上述声明文件示...
C++
C
原创 2021-07-13 11:04:37
236阅读
最近一段时间,经常遇到这些问题,前一阵子研究了一下,没有记下来,没想到最近研究又有些不记得了,今天把它写下来以备忘。一般我们提供给其他语言调用的DLL,都是用C或者C++编写,然后封装。我这边也是采用的C++。首先有几个注意点:1、如果功能很简单,或者不使用第三方库(如MFC自带的库),建立一个win32的控制台程序就可以了,然后把项目生成改为DLL。值得一提的是,代码生成里面
转载 2022-04-22 10:22:37
881阅读
1 把DLL放在C#工程的Debug文件夹跟Release文件夹,我这里是使用X86编译的就放在了这两文件
转载 2021-12-29 16:46:42
197阅读
有个需求,C#调用C++编写dll,探索一番,方法如下:本例中,需要调用dll中的GetDistance方法:1. 根据C++头文件(.h)中的定义,找到要调用的方法:double GetDistance(double lon1, double lat1, double lon2, double lat2);2.C#中的写法://1. 引用方法并定义 [DllImpor...
原创 2021-06-01 16:21:26
356阅读
​ 1 把DLL放在C#工程的Debug文件夹跟Release文件夹,我这里是使用X86编译的就放在了这两文件夹 2 用DLL查看器 Viewdll.exe 查看DLL导出的函数如下图 3 调用代码如下: using System.Runtime.InteropServices; //包含DllImport的using指令namespace TB { public partial cla
转载 2020-04-01 09:22:00
457阅读
2评论
Delphi中高级DLL编写和调用(1) 根据Delphi提供的有关 DLL编写和调用的帮助信息,你可以很快完成一般的 DLL编写和调用的 应用程序。本文介绍的主题是如何编写和调用能够传递各种参数(包括对象实例)的 DLL。例如, 主叫程序传递给 DLL一个ADOConnection 对象示例作为参数, DLL中的函数和过程调用通过该对象 实例访问数据库。  需要明确一些基本概念。对于 DLL
转载 2024-05-17 09:51:47
493阅读
Delphi中高级DLL编写和调用技巧 根据Delphi提供的有关 DLL编写和调用的帮助信息,你可以很快完成一般的 DLL编写和调用的 应用程序。本文介绍的主题是如何编写和调用能够传递各种参数(包括对象实例)的 DLL。例如, 主叫程序传递给 DLL一个ADOConnection 对象示例作为参数, DLL中的函数和 根据Delphi提供的有关 DLL编写和调用的帮助信息,你可以很快完成一般的
转载 2024-06-05 12:15:33
1450阅读
dll
原创 2022-08-27 00:50:52
331阅读
准备:首先打开vc++ 6.0新建工程,选择Win32 Dynamic Link-Library,命名为stdLibrary新建library.cpp文件,内容如下#include <stdio.h>#include <windows.h>BOOL APIENTRY DllMain( HMODULE hModule, DWORD
原创 2022-08-17 14:22:41
305阅读
C#调用C++编写的COM DLL封装库时会出现两个问题: 1. 数据类型转换问题 2. 指针或地址参数传送问题 首先是数据类型转换问题。因为C#是.NET语言,利用的是.NET...
原创 2021-07-30 14:02:09
824阅读
这里全是显示加载(把生成的dll放到要调用他的项目下与exe一起)这里全是创建的空项目有俩种第一种不写dllmain函数也就是只写一些导出函数dll//allen.hextern"C"_declspec(dllexport)intSum(inta,intb);//加法函数。extern"C"_declspec(dllexport)intMax(inta,intb);//取较大值函数extern"C
原创 2018-04-26 09:18:14
447阅读
  • 1
  • 2
  • 3
  • 4
  • 5