Delphi ÀàÓë¶ÔÏóÄÚ´æ½á¹¹Ç³Îö(ÏÂ)
¶ÔÏó¿Õ¼ä
ÄÚ´æ½á¹¹
¶ÔÏóµÄÄÚ´æ½á¹¹Êǹ̶¨µÄ£¬¶ÔÏó´´½¨Íê³Éºó¾ÍÎÞ·¨¸Ä±ä¡£ËüÖ÷Òª´æ´¢Á˶ÔÏóÖ±ÊôÀàµÄµØÖ·£¨µÈ¼ÛÓÚÀàµÄVMT£©£¬¶ÔÏó±¾ÉíµÄ³ÉÔ±Êý¾Ý£¬¶ÔÏóµÄ½Ó¿Ú·½·¨±íµØÖ·¡£½á¹¹ÈçͼËùʾ£º
˵Ã÷£ºÈôÀàδÉùÃ÷½Ó¿Ú£¬Ôò¶ÔÏó¿Õ¼ä²»´æ´¢½Ó¿Ú·½·¨±íµØÖ·¡£
Àà¿Õ¼äÓë¶ÔÏó¿Õ¼äµÄ¹ØÏµ
Àà¿Õ¼äÓë¶ÔÏó¿Õ¼ä£º
ʾÀý£º·ÖÎö¶ÔÏóµÄ»ù±¾ÄÚ´æ½á¹¹
´úÂ룺
type
IMyInterface = interface(IUnknown)
['{06F3EA2C-E9C2-410E-97BE-D88ADF775EC3}']
procedure InterfaceMethod1;
end;
TMyObject = class(TInterfacedObject,IMyInterface)
private
FField1: Integer;
FField2: Boolean;
protected
procedure InterfaceMethod1;
public
procedure DynamicMethod1; dynamic;
procedure DynamicMethod2; dynamic;
procedure VirtualMethod1; virtual;
procedure VirtualMethod2; virtual;
end;
TMyObject2 = class(TMyObject)
private
FField3: Integer;
public
procedure DynamicMethod1; override;
procedure VirtualMethod1; override;
end;
ÄÚ´æ½á¹¹£º
TInterfacedObjectÄÚ´æ½á¹¹Èçͼ£º
TMyObjectÄÚ´æ½á¹¹Èçͼ£º
TmyObject2ÄÚ´æ½á¹¹Èçͼ£º
Èçͼ£¬TMyObject2µÄVirtualMethod1·½·¨¸²¸ÇÁ˸¸ÀàµÄVirtualMethod1·½·¨£¬¹ÊÐé·½·¨±íÖÐVirtualMethod1µÄÖ¸ÕëÖ¸ÏòÁËTMyObject2µÄVirtualMethod1·½·¨¡£TMyObject2µÄDynamicMethod1·½·¨¸²¸ÇÁ˸¸ÀàµÄDynamicMethod1·½·¨£¬ÓÉÓÚ¶¯Ì¬·½·¨±íÖ»±£´æµ±Ç°ÀàµÄ¶¯Ì¬·½·¨±í£¬¹Ê±íÖÐÖ»ÓÐÒ»¸öDynamicM
Ïà¹ØÎĵµ£º
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:='ÕâÊÇä¯ÀÀÎļþ¼ÐµÄ˵Ã÷ÎÄ×Ö£¬¿ÉÒÔ¸ù¾ÝÐèÒª½ ......
//¼Óһϰ´Å¥£¬¼ÓÒ»¸ö¶Ô»°¿ò¾ÍOKÀ²
procedure TForm1.Button1Click(Sender: TObject);
var
S: String;
begin
if OpenDialog1.Execute then
begin
s := OpenDialog1.FileName;
WinExec( PChar(s), SW_NORMAL);
end;
end;
----------------------- ......
Windows API µÄÊý¾ÝÀàÐÍÓë Delphi Êý¾ÝÀàÐͶÔÕÕ±í
×÷Õߣºadmin À´Ô´£ºÎ´Öª ÈÕÆÚ£º2010-1-28 13:10:56 ÈËÆø£º43 ±êÇ©£ºAPI
µ¼¶Á£ºWindowsAPIµÄÊý¾ÝÀàÐÍÓëDelphiÊý¾ÝÀàÐͶÔÕÕ±í
Windows Êý¾ÝÀàÐÍ
Delphi Êý¾ÝÀàÐÍ
ÃèÊö
LPSTR
PAnsiChar
×Ö·û´®Ö¸Õë
LPCSTR
PAnsiChar
×Ö·û´®Ö¸Õë
DWORD
LongWo ......
//ÉùÃ÷:
GetClassName(
hWnd: HWND; {Ö¸¶¨´°¿Ú¾ä±ú}
lpClassName: PChar; {»º³åÇø}
nMaxCount: Integer {»º³åÇø´óС}
): Integer; {·µ»ØÀàÃû´óС; ʧ°Ü·µ»Ø 0}
//²âÊÔ1: н¨Ò»¸ö¹¤³Ì, Ö÷´°¿ÚµÄÀàÃûĬÈÏÊÇ TForm1, ÓóÌÐò»ñȡһÏ¿´¿´
var
ps: array[0..254] of Char;
begin
GetCl ......