首页 相关文章 DELPHI中动态调用dll

DELPHI中动态调用dll

显式例子:

?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

unit Main;

interface

[ 查看全文 ]

2016-02-19 标签:

DELPHI中动态调用dll的相关文章

  • 在以前用 Delphi 开发的项目中,会经常用到TChart这个画图控件,它本身很强大,支持各类图,如点线图,柏拉图,柱状图等等,加上可以输出成BMP,JPEG,JPG,SVG,GIF等各种格式图片,很好用,当时也封装成比较独立的 DLL文件 。这次开发.NET程序正好派上用场。 几个关键技术点: 1 C#要以非托管方式调用DLL 2 C#把整理好的画图数据生成事先定义好格式的XML文件,传给DLL 3 DLL解析...[ 查看全文 ]
  • 标签:Delphi
        一.DLL 库内存共享机制   从使用效果看,DLL和unit 很像,它们都可以被别的工程模块所调用,但二者在内部的实现机制上确存在着差别。如果一个程序模块中用uses语句引用了某个unit,编译程序在编译该模块时,便会连同unit一起编译,并把编译后的可执行代码链接到本程序模块中,这就是一个程序模块能够调用所引用unit中过程和函数的原因。   当同一个unit被多个工程所引用时,则每个...[ 查看全文 ]
  • 在 C++ 中我们能够通过 LoadLibrary, GetProcAddress 来动态调用 dll 的导出函数. 在 C# 中也能够用这样的方式吗? 在 DotNet 2.0 里面这样是可以的, 这完全得益于 2.0新增的一个函数,Marshal.GetDelegateForFunctionPointer 方法。此方法在 .NET Framework 2.0 版中是新增的。 将非托管函数指针转换为委托。 实例代码如下: public delegate int MsgBox(int hwnd,string msg,strin...[ 查看全文 ]
  • 具体的DLL封装对象请看刘艺的《Delphi中的DLL封装和调用对象技术》及配书源码。 本人在使用DELPHI编制DLL过程中碰到了些奇怪的问题,现在将其列出来,仅供参考: 1、DELPHI生成的DLL工程中写到:ShareMem must be the first unit in your library's USES clause AND your project's。这里提到的是DLL工程和使用该DLL的工程都需要引用ShareMem单元。     ShareMem单元...[ 查看全文 ]
  • 我在编写一个系统时遇到了一个问题,无法在C#中调用Delphi6写的DLL,只因为DLL的参数是string类型的。然后在网上找相关的资料,还是没有结果。经过我的再三琢磨,现在已经解决,特写此文章与大家分享我的喜愉! Dellphi DLL文件: /////////////////////////////////////////////////////////////////// library mydll; uses SysUtils, Classes; {$R *.res} function Out_Char(str1:PChar;str2:PChar):Pch...[ 查看全文 ]
  •   作者:e梦缘 好久发表文章了!!! 调用DLL文件中的FORM,具体实现过程如下: library Project1;uses SysUtils, Classes,Forms,windows,dialogs, Unit1 in 'Unit1.pas' {Form1};{$R *.res}function showform(formname:string):boolean;stdcall;var TheClass: TPersistentClass; aForm: TForm;begin result:=false; {如果您的Dll中有很多FORM,请在这儿注册哦 ...[ 查看全文 ]
  • 标签:ASP
           在ASP文件中调用DLL   作者:陈敏杰    动态联接库(DLL)是加快应用程序关键部分的执行速度的重要方法,但有一点恐怕大部分人都不知道,那就是在ASP文件也能通过调用DLL来加快服务器的执行速度,下面我简单的介绍一下在ASP文件调用DLL的步骤。    首先,必须得有DLL文件,本例是通过VB5.0创建ActiveX DLL文件,这个文件模拟...[ 查看全文 ]
  • 标签:Delphi
      Delphi作为一种面向对象的可视化开发工具,以其开发程序的高速度和编译代码的高效率越来越受到广大编程人员的喜爱。尽管Delphi已经提供了非常强大的开发组件(VCL),但灵活使用API函数一定可以使你的程序增色不少。 状态键的检查 当今不少流行软件的编辑窗口(包括Delphi的代码编辑窗口)的底部都有一个状态条用来显示一些状态信息,比如当前光标的位置等。通常键盘的状态键...[ 查看全文 ]
  • 标签:Delphi
      根据Delphi提供的有关 DLL编写和调用的帮助信息,你可以很快完成一般的 DLL编写和调用的 应用程序。本文介绍的主题是如何编写和调用能够传递各种参数(包括对象实例)的 DLL。例如, 主叫程序传递给 DLL一个ADOConnection 对象示例作为参数, DLL中的函数和过程调用通过该对象 实例访问数据库。 需要明确一些基本概念。对于 DLL,需要在主程序中包含 exports子句,用于向外界提供...[ 查看全文 ]
  • 标签:Delphi
      在用Delphi 3.0开发软件时,出现了硬件驱动程序(DLL)中的函数和过程不能正常调用的问题,该硬件由英国Schlumberger公司生产,驱动程序用汇编语言编写的。其《编程指南》给出的Microsoft C的示范程序均能正常运行。但运行此软件时现出的错误提示为: Access violation at address ×××××××× in module…… 经仔细分析,才发现问题出现在函数调用模式上。 Delphi 3.0支持五种调用...[ 查看全文 ]
  • 在Delphi中,要调用Chm文件可以通过引用HHctrl.ocx文件的函数HtmlHelpA实现。 不过在这里,我们也可以使用API函数ShellExecute来打开Chm帮助文件。 在网上找到的资料,通常以 ShellExecute(self.Handle,'open','help.chm','', '',SW_SHOW);? 的方式来实现。 但有个不足,就是不能打开指定的帮助页面,所显示的是帮助文档的起始页面。 想到Chm文件被关联到hh.exe程序,...[ 查看全文 ]
  • 标签:Delphi
      所谓动态选单是指选单项随着程序的操作变化而变化。现在,我们用Delphi来实现这一功能,具体步骤如下: 1.首先,确定动态选单的数据来源,即要确定动态选单标题是来自Windows的系统注册表,还是来自一个数据库,或者是来自一个子目录,主要由程序的功能而定。这里假设主窗口名为MainForm,上面已有主选单,其动态选单的数据源是一个String类型的变量,名称为SubMenuItemSource。 ...[ 查看全文 ]
  • 标签:Delphi
      在用Delphi30开发软件时,出现了硬件驱动程序 (DLL)中的函数和过程不能正常调用的问题,该硬件由英国Schlumberger公司生产,驱动程序用汇编语言编写的。其《编程指南》给出的 Microsoft C的示范程序均能正常运行。但运行此软件时现出的错误提示为: Access violation at address ×××××××× in module…… 经仔细分析,才发现问题出现在函数调用模式上。 Delphi30支持五种调...[ 查看全文 ]
  •   需求 :由于最近接到这样的项目,甲方他们要求我们开发的功能加入他们原先已经存在的一个PB开发的应用程序中。唯一的目的是不想有两个exe应用程序。 方案 :把Delphi的应用程序用dll的形式打包,然后在PB里调用。 设计 :         一、 PB部分                ...[ 查看全文 ]
  • 一 Dll的制作一般分为以下几步: 1 在一个DLL工程里写一个过程或函数 2 写一个Exports关键字,在其下写过程的名称。不用写参数和调用后缀。 二 参数传递 1 参数类型最好与window C++的参数类型一致。不要用DELPHI的数据类型。 2 最好有返回值[即使是一个过程],来报出调用成功或失败,或状态。成功或失败的返回值最好为1[成功]或0[失败].一句话,与windows c++兼容。 3 用stdca...[ 查看全文 ]
  • 下截JNative组件 jnative.sourceforge.net/ 到这里下载JNative开源项目,我下载的是1.3.2 解压JNative-st1:chsdate isrocdate="False" islunardate="False" day="30" month="12" year="1899"1.3.2/st1:chsdate.zip 获得三个文件,分别是:JNativeCpp.dll,libJNativeCpp.so,JNative.jar 。 JNativeCpp.dll Windows下用的,拷贝到windows / system32目录下; libJNativeCpp.so Linux下的,拷贝到系统目...[ 查看全文 ]
  • 标签:Delphi
      在写程序的时候,有时我们为了省力,或者为了别的目的,我们常常想借用系统的对话框,那么,如何才能调用系统对话框呢?一位朋友是VB中是这样调用“打开方式”对话框的:   winexec(PChar('rundll32 shell32,OpenAs_RunDLL '+FilePath),SW_SHOWDEFAULT);   这句代码是运行rundll32.exe,让它调用shell32.dll中的资源来实现的。方法可行,但是有许多像我一样的菜鸟并不明白如何调用shel...[ 查看全文 ]
  • str:=Table1.Tablename; Query1.Close; Query1.SQL.Clear; Query1.SQL.Add(format('select * from %s',[Str])); Query1.Open; [ 查看全文 ]
  • 标签:Delphi
      Delphi以其优秀的界面和简单的用法深受广大程序员的喜爱.笔者经过摸索,自做了一个具有动态显示特性的控件。只柙谥鞒绦蛑械饔酶每丶囊桓龇椒纯墒迪侄允尽T诙允镜耐?为了不影响主程序做其他的事情,笔者采用了比较流行的线程技术。  一. 方案  自做一个父类为TEdit的控件,应该有一个Text属性,能自由地输入要动态显示的内容; 并且有一个MoveShow方法,使的Text的...[ 查看全文 ]
  • 数据结构如下:  CREATE TABLE [tbTree] (  [ID] [varchar] (4) COLLATE  NOT NULL ,  [Context] [nvarchar] (50)  NULL ,  [ParentID] [varchar] (4)  NULL ,  CONSTRAINT [PK_tbTree] PRIMARY KEY  CLUSTERED  (   [ID]  )  ON [PRIMARY] ) ON [PRIMARY] 代码如下: lprocedure TFor...[ 查看全文 ]
手机页面 收藏网站 回到头部