Delphi µÄ Dll º¯ÊýµÄ µ÷ÓÃ
Ò»¡¢Dll½¨Á¢
£¨Ò»£©DLLÏîÄ¿µÄ½¨Á¢
library mydll;
uses
base in 'base.pas';
exports
Triple name 'Tr';
{$R *.res}
begin
end.
£¨¶þ£©º¯Êýµ¥Ôª
unit base;
interface
uses windows;
function Triple(N:integer):integer;stdcall;
implementation
function Triple(N:integer):integer;stdcall;
begin
result:=n*3;
end;
end.
¶þ¡¢¾²Ì¬µ÷ÓÃ
unit Unit1;
interface
uses
Windows, SysUtils, Controls, Forms,
StdCtrls, Classes;
type
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
const
gdi32='mydll';
function triple(n:integer):integer;stdcall;external gdi32 name 'Tr';
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
edit1.Text:=inttostr(triple(10));
end;
end.
Èý¡¢¶¯Ì¬µ÷ÓÃ
unit Unit2;
interface
uses
Windows, SysUtils, Controls, Forms,
StdCtrls, Classes;
type
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
type
Taddc=function(n:integer):integer;stdcall;//¶¨Ò庯ÊýÖ¸Õë
var
Handle:Thandle;
addc:Taddc;
begin
Handle:=LoadLibrary('mydll.dll');//¼ÓÔØmydll
if Handle>32 then
begin
@addc:=GetProcAddress(Handle,'Tr'); //È¡Trº¯ÊýÈë¿ÚµØÖ·£¬´óСдÃô¸Ð¡£TrΪmydllÖеÄTripleµÄexports µÄnameÃüÃû
if @a
Ïà¹ØÎĵµ£º
¿ª·¢Õß¶¼Ï£Íû×Ô¼ºµÄ³ÌÐòÓÐÒ»¸öÓѺõĽçÃæ£¬´Ëʱ£¬Ò»¸öÉú¶¯»îÆÃ¡¢ÓбíÏÖÁ¦µÄ¹â±ê¾Í±Ø²»¿ÉÉÙÁË¡£Windows ȱʡÌṩ22ÖÖ±ê×¼¹â±ê¹©ÔÚ³ÌÐòÖе÷Ó㬵«¶ÔÒ»¸öÇóÐÂÇó±äµÄ³ÌÐòÔ±À´Ëµ£¬±ê×¼¹â±ê¾Í²»ÄÜÂú×ãÒªÇóÁË£¬ÐèҪʹÓÃ×Ô¼ºµÄ¹â±ê£¬ÄÇô£¬ÔÚ³ÌÐòÖÐÔõÑùʹÓÃ×Ô¼ºµÄ¹â±êÄØ£¿ ¡¡¡¡¡ñ¹â±ê×ÊÔ´µÄ»ñµÃ ¡¡¡¡ÒªÊ¹ÓÃ×Ô¶¨Òå¹â±ê£¬±ØÐëÏȵõ½Õâ ......
Õâ¸ö±¾À´ÎÒÎÒÔÚDELPHIºÐ×Ó¿´µ½µÄ£¬ºóÀ´ÎÒ¶ÔÆä×÷ÁËÒ»µãÐ޸ģ¬ÕâÀïÉÏÈ«²¿´úÂ룬¿ÉÒÔÖ±½ÓÓÃ
Ê×ÏÈÓÐÁ½¸ö×Ô¶¨µÄת»»º¯Êý£º
function myStrToHex(s:string):string; //×Ö´®×ª16½øÖÆ
var
TmpStr:string;
i:integer;
begin
TmpStr:='';
for i:=1 to Length(s)do
TmpStr:=TmpStr+IntToHex(ord(s[i]),2);
Res ......
TStringsÊÇÒ»¸ö³éÏóÀ࣬ÔÚʵ¼Ê¿ª·¢ÖУ¬ÊdzýÁË»ù±¾ÀàÐÍÍ⣬ӦÓõÃ×î¶àµÄ¡£
³£¹æµÄÓ÷¨´ó¼Ò¶¼ÖªµÀ£¬ÏÖÔÚÀ´ÌÖÂÛËüµÄһЩ¸ß¼¶µÄÓ÷¨¡£
ÏȰÑÒªÌÖÂ۵öÊôÐÔÁгöÀ´£º
1¡¢CommaText
2¡¢Delimiter & DelimitedText
3¡¢Names & Values & ValuefromIndex
ÏÈ¿´µÚÒ»¸ö£ºCommaText¡£ÔõôÓÃÄØ£¿ÓôúÂë˵»°£º
const ......
DELPHI Ö¸ÕëʹÓÃÓõÄһƪºÃÎÄ ÊÕ²Ø
DelphiÀï×Ô¼º¹ÜÀíÄÚ´æµÄÁ½¶Ôº¯Êý new(),dispose()ºÍgetmem(),freemem()
´ó¼Ò¶¼ÈÏΪ£¬CÓïÑÔÖ®ËùÒÔÇ¿´ó£¬ÒÔ¼°Æä×ÔÓÉÐÔ£¬ºÜ´ó²¿·ÖÌåÏÖÔÚÆäÁé»îµÄÖ¸ÕëÔËÓÃÉÏ¡£Òò´Ë£¬ËµÖ¸ÕëÊÇCÓïÑÔµÄÁé»ê£¬Ò»µã¶¼²»Îª¹ý¡£Í ......