知识大全 关于VB.NET动态连接库使用四点总结

Posted 函数

篇首语:学习如赶路,不能慢一步。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 关于VB.NET动态连接库使用四点总结相关的知识,希望对你有一定的参考价值。

关于VB.NET动态连接库使用四点总结  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  VB NET动态连接库还是比较常用的 于是我研究了一下 在这里拿出来和大家分享一下 希望对大家有用 Windows动态连接库是包含数据和函数的模块 可以被其它可执行文件(EXE DLL OCX 等)调用 动态连接库包含两种函数 输出(exported)函数和内部(internal)函数 输出函数可以被其它模块调用 而内部函数则只能在动态连接库内部使用

  尽管VB NET动态连接库也能输出 数据 但实际上它的数据通常是只在内部使用的 使用动态连接库的优点是显而易见的 将应用程序的一部分功能提取出来做成动态连接库 不但减小了主应用程序的大小 提高了程序 运行效率 还使它更加易于升级 多个应用程序共享一个动态连接库还能有效地节省系统资源 正因为如此 在Windows系统中 动态连接库得到了大量的使用

  一般来说 动态连接库都是以DLL为扩展名的文件 如Kernel dll mdlg dll等 但也有例外 如 位Windows的核心部件之一GDI exe其实也是一个动态库 编写动态连接库的工具很多 如VisualC++ BorlandC++ Delphi等 具体方法可以参见相关文档 下面只以Visual C++ 为例 介绍一下开发应用于VisualBasic 的动态连接库时应注意的问题(本文中所有涉及C/C++语言或编译环境的地方 都以VC为例 所有涉及Visual Basic的地方都以VB 为例)

  作为一种 位Windows应用程序的开发工具 VB生成的exe文件自然也都是 位的 通常情况下也只能调用 位的动态连接库 但是 并不是所有的 位动态库都能被VB生成的exe 文件正确地识别 一般来说 自己编写用于VB NET动态连接库时 应注意以下几个方面的

  问题

   生成动态库时要使用__stdcall调用约定 而不能使用缺省的__cdecl调用约定 __stdcall 约定通常用于 位API函数的调用

   在VC中的定义文件( def)中 必须列出输出函数的函数名 以强制VC系统将输出函数的装饰名(decoratedname)改成普通函数名 所谓装饰名是VC的编译器在编译过程中生成的输出函数名 它包含了用户定义的函数名 函数参数及函数所在的类等多方面的信息 由于在VC中定义文件不是必需的 因此工程不包含定义文件时VC就按自己的约定将用户定义的输出函数名修改成装饰名后放到输出函数列表中 这样的输出函数在VB生成的应用程序中是不能正确调用的(除非声明时使用Alias子句) 因此需要增加一个 def文件 其中列出用户需要的函数名 以强制VC不按装饰名进行输出

   VC中的编译选项 结构成员对齐方式(structure member alignment) 应设成 字节 其原因将在后文详细介绍

cha138/Article/program/ASP/201311/21696

相关参考

知识大全 VB.NET连接Access数据库

VB.NET连接Access数据库  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Access数

知识大全 概括VB.NET Access数据库连接

概括VB.NETAccess数据库连接  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!    在向大

知识大全 VB.NET连接数据库的几种方法

VB.NET连接数据库的几种方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Microsof

知识大全 VB.Net连接各种数据库的几种方法

VB.Net连接各种数据库的几种方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!Microsof

知识大全 VB.NET关于加密算法

VB.NET关于加密算法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  前几天由于需要去研究了一

知识大全 c#(或vb.net)程序改进,可以提高性能

  使用值类型的ToString方法  在连接字符串时经常使用+号直接将数字添加到字符串中这种方法虽然简单也可以得到正确结果但是由于涉及到不同的数据类型数字需要通过装箱操作转化为引用类型才可以添加到字

知识大全 连接oracle的总结(关于tnsname和监听)

该文是我连接oracle的总结特别适合于程序开发人员与oracle菜鸟  如何配置才能使客户端连到数据库要使一个客户端机器能连接oracle数据库需要在客户端机器上安装oracle

知识大全 从VB 6迁移到VB.NET的进展至今仍旧缓慢

从VB6迁移到VB.NET的进展至今仍旧缓慢  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!在发布V

知识大全 VB.NET中声音的播放

VB.NET中声音的播放  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 由VB升级为NET后有些人

知识大全 与VB .NET一起使用.NET Framework

与VB.NET一起使用.NETFramework  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!