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
Ïà¹ØÎĵµ£º
DirectoryExists('C:\WINDOWS'):Boolean;¼ì²âÎļþ¼ÐÊÇ·ñ´æÔÚ£¡
FileExists('c:\Dir.txt'):Boolean;¼ì²âÎļþÊÇ·ñ´æÔÚ£¡
EDIT×é¼þ
OnChange µ±±à¼¿òÖеÄÄÚÈÝ·¢Éú±ä»¯Ê±´¥·¢¸Ãʼþ
OnKeyPress µ±°´ÏÂÒ»¸ö°´¼üʱ£¬´¥·¢¸Ãʼþ
OnEnter ±à¼¿ò»ñµÃÊäÈë½¹µãʱ£¬´¥·¢¸Ãʼþ
MEMO×éºÏ
WordWrap ÓÃÓÚÉ趨Momo×é¼þÊÇ·ñ¾ßÓÐ×Ô¶ ......
Delphiͨ¹ýÏòµ¼¿ÉÒԷdz£Ñ¸Ëٺͷ½±ãµÄÖ±½Ó½¨Á¢ÊµÏÖCOM¶ÔÏóµÄ´úÂ룬µ«ÊÇÕû¸öCOMʵÏֵĹý³Ì±»ÍêÈ«µÄ·â×°£¬ÉõÖÁûÓÐVCLÄÇô½á¹¹ÇåÎú¿É¼û¡£Ò»¸öûÓÐC++ÏÂCOM¿ª·¢¾ÑéÉõÖÁûÓнӴ¥¹ýCOM¿ª·¢µÄDelphi³ÌÐòÔ±£¬Ò²Äܹ»ºÜÈÝÒ׵İ´Õս̳ÌÉè¼ÆÒ»¸ö½Ó¿Ú£¬µ«ÊÇ£¬¿ÖÅÂÉîÈëÒ»Ï룬Á¬Éú³ÉµÄ´úÂë´ú±íºÎÖÖÒâÒ壬ÄÄЩÄܹ»¶¨Öƶ¼²»Çå³þ¡£Ç°¼¸ÆÚ &ld ......
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, DB, ADODB, StdCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
Button1: TButton;
Button ......
µÚÒ»ÖÖ·½·¨,ʹÓÃSelectDirectory º¯Êý ,ÔÚShellApiÖÐ
procedure TForm2.BtSelectPathClick(Sender: TObject);
var
strCaption,strDirectory:String;
wstrRoot:WideString;
begin
strCaption:='ÕâÊÇä¯ÀÀÎļþ¼ÐµÄ˵Ã÷ÎÄ×Ö£¬¿ÉÒÔ¸ù¾ÝÐèÒª½ ......