Delphi ¸ø×Ö·ûÖ¸Õë·ÖÅäÄÚ´æ
ÎÄÕÂÀ´×Ô£ºhttp://www.cnblogs.com/del/archive/2009/05/15/archive/2008/11/08/1329543.html
GetMem
AllocMem
ReallocMem
FreeMem
GetMemory
ReallocMemory
FreeMemory
New
Dispose
NewStr
DisposeStr
StrNew
StrAlloc
StrDispose
GlobalAllocPtr
GlobalFreePtr
WideStrAlloc
AnsiStrAlloc
StrDispose
Move
MoveMemory
CopyMemory
ZeroMemory
FillMemory
FillChar
StrBufSize
¸ø×Ö·ûÖ¸Õë(PChar¡¢PWideChar¡¢PAnsiChar)·ÖÅäÄÚ´æ, ×î¼ÑÑ¡ÔñÊÇ: StrAlloc.
StrAlloc ËäÈ»×îÖÕÒ²Êǵ÷ÓÃÁË GetMem, µ« StrAlloc »áÔÚÖ¸ÕëÇ°ÃæÌí¼Ó Delphi ÐèÒªµÄ 4 ¸ö¹ÜÀí×Ö½Ú(¼Ç¼³¤¶È).
StrAlloc ·ÖÅäµÄÄÚ´æ, Óà StrDispose ÊÍ·Å, Óà StrBufSize »ñÈ¡´óС.
Óà FreeMem ÊÍ·Å¿ÉÒÔÂð? ÕâÑù»áÉÙÊÍ·Å 4 ¸ö×Ö½Ú.
ÕâÖÖÀàÐ͵ÄÖ¸ÕëÒ»°ãÓÃÓÚ API º¯ÊýµÄ²ÎÊý, Æ©Èç»ñÈ¡´°¿Ú±êÌâ:
var
p: PChar;
begin
p := StrAlloc(256);
GetWindowText(Handle, p, StrBufSize(p));
ShowMessage(p); {Form1}
StrDispose(p);
end;
StrAlloc ¸ù¾Ý²»Í¬µÄ²ÎÊý(PWideChar¡¢PAnsiChar)·Ö±ðÖØÔØµ÷ÓÃÁË WideStrAlloc¡¢AnsiStrAlloc, ËùÒÔÎÒÃÇÒ²¿ÉÒÔÖ±½ÓʹÓÃÕâÁ½¸öº¯Êý(ÕâÒ²ÐèÒªÓà StrDispose ÊÍ·Å), ²»¹ýʹÓÃËüÃǵıØÒªÐÔ²»´ó; Óà StrAlloc Ö¸¶¨ºÃ²ÎÊýÀàÐͼ´¿É.
¸ø×Ö·ûÖ¸Õë·ÖÅäÄÚ´æÆäËû·½·¨Ò²Í¦·½±ã, Æ©Èç:
//»ñÈ¡ WINDOWS ËùÔÚĿ¼
var
buf: array[0..MAX_PATH] of Char;
begin
GetWindowsDirectory(buf, Length(buf));
ShowMessage(buf); {C:\WINDOWS}
end;
Êý×éµÄÄÚ´æ²»ÊÇÎÒÃÇ×Ô¼ºÉêÇëµÄ, ϵͳ»á×Ô¶¯ÊÍ·Å; ¼Çס: Ö»ÒªÊÇÊÖ¶¯ÉêÇëµÄÄÚ´æÒ»¶¨ÒªÊÖ¶¯ÊÍ·Å.
ÎÒÃǸø×Ö·ûÖ¸ÕëÉêÇëÄÚ´æÖ÷ÒªÊÇΪÁËÔÚ API ÖнÓÊÜÊý¾Ý, Èç¹ûÎÒÃÇÒªÖ±½Ó¸³¸ø³£Á¿Öµ, ϵͳ»á×Ô¶¯·ÖÅäÄÚ´æµÄ, Æ©Èç:
var
p: PChar;
begin
p := 'ÍòÒ»µÄ Delphi ²©¿Í';
ShowMessage(p); {ÍòÒ»µÄ Delphi ²©¿Í}
end;
µ±È»ÎÒÃÇÒ²¿ÉÒÔÓÃÕâÖÖ°ì·¨ÉêÇëÄÚ´æ, ¾ÍÊDZ¿Á˵ã, Æ©Èç:
//»ñȡϵͳĿ¼
var
p: PChar;
begin
p := PChar(StringOfChar(Char(0), 256)); {·´¸´Ò»¸ö¿Õ×Ö·û 256 ´Î³ÉÒ»¸ö×Ö·û´®, È»ºóתΪ PChar}
GetSystemDirectory(p, StrBufSize(p));
ShowMessage(p); {C:\WINDOWS\system32}
end;
Èç¹ûÔÚ API º¯ÊýÐèÒªµÄ×Ö·ûÖ¸ÕëÊÇΪÁËÊäÈë, µ±È»Ò²²»ÐèÒªÉêÇëÄÚ´æ, Æ©Èç:
//ÉèÖô°¿Ú±êÌâ
var
p: PChar;
begin
p := '´°¿ÚбêÌâ';
SetWindowText(Ha
Ïà¹ØÎĵµ£º
¡¶DelphiͼÏñ´¦Àí -- Êý¾ÝÀàÐͼ°ÄÚ²¿¹ý³Ì¡·Ò»ÎÄÖж¨ÒåÁË»ù±¾µÄͼÏñÊý¾ÝÀàÐͼ°Ò»Ð©ÄÚ²¿¹ý³Ì£¬±¾ÎĽøÒ»²½½«Delphi³£ÓõÄͼÏñÀàÐÍת»»ÎªÍ¼Ïñ´¦ÀíËùÐèµÄÊý¾Ý½á¹¹£¬Îª¾ßÌåµÄDelphiͼÏñ´¦Àí¹ý³Ì×÷×¼±¸£¬Í¬Ê±Ò²Òª½«´¦ÀíºÃµÄͼÏñÊý¾Ýת»»ÎªDelphiµÄ³£ÓÃͼÏñÀàÐÍ¡£¡¶DelphiͼÏñ´¦Àí¡·ÏµÁгýͼÏñÊý¾Ýת»»¹ý³ÌÍâ£¬Æ ......
delphi»ñÈ¡WindowsϵͳµÄ½ø³ÌÔËÐÐÐÅÏ¢
×Ô´Ó³öÏÖwindowsϵͳÒÔÀ´£¬¸÷ÖÖ¸÷ÑùµÄÈí¼þ²ã³ö²»Çî¡£¹ºÂò»òÕßÃâ·ÑÏÂÔØÒÔºó£¬ÇáÇáµã»÷Install»òÕßSetupÒÔºó£¬ÉÔ×÷ЩÐí¼òµ¥ÅäÖþÍÍê³É°²×°µÄÕû¸ö¹ý³Ì¡£ÏÔÈ»Õâ¸øÓû§´øÀ´ÁËÐí¶à·½±ã£¬µ«¶ÔÓû§À´ËµÕâЩÈí¼þËÆºõÊǸö"ºÚÏ»×Ó"£¬Õ¹ÏÖÔÚÓû§ÃæÇ°µÄ½ö½öÊÇ»ªÀöµÄÍâ±íºÍ¼ò½àµÄ²Ù×÷£¬ÖÁÓÚÈí ......
н¨Ò»¸öActive Library
2. н¨Ò»¸öCOM Object£¬ÔÚClass NameÌîÒ»¸öÃû×Ö£¬ÈçTest¡£
µãÒ»ÏÂImplemented InterfaceºóÃæµÄList°´Å¥¡£ÔÙµãһ϶Ի°¿òÖеÄAdd Library°´Å¥£¬
Ñ¡Ôñ“Program Files\Common Files\Designer”Ŀ¼ÏµÄmsaddndr.dllÎļþ¡£
È»ºóÔÚÁбíÖÐÕÒµ½msaddndr.dllÀïÃæµÄ_IDTExtensibility2½Ó¿Úµã ......
delphiÖÐWebbrowserÎÊÌâÊÕ¼¯
»ñµÃÍøÒ³ÖбäÁ¿Öµ htmÖÐ<script> var currID=123</script> ³ÌÐòÖпÉÒÔÕâôµ÷Óà id := Form1.WebBrowser1.OleObject.Document.script.currID ÖµµÃ˵Ã÷µÄÊÇ,±äÁ¿¿ÉÒÔÊÇjavascript¶¨ÒåµÄ,Ò²¿ÉÒÔÊÇvbs ......
DelphiµÄTCanvasÒÔ¼°ÅÉÉúÀàÌṩÁËÏÔʾTGraphicͼÏñµÄ·½·¨Draw£¬ÆäʵÕâ¸ö·½·¨±¾Éí²¢Ã»ÓÐÏÔʾͼÏñµÄ¹¦ÄÜ£¬Ö»ÊÇ·´¹ýÀ´µ÷ÓÃÁËÒ»ÏÂTGraphicµÄDraw·½·¨¡£TGraphic±¾ÉíÊǸö³éÏóÀ࣬ÆäDraw·½·¨Ò²ÊǸö´¿Ðé·½·¨£¬ËùÒÔTGraphicµÄËùÓÐÅÉÉúÀà±ØÐëÌṩһ¸ö¾ßÌåµÄDraw·½·¨¡£TGraphicµÄÖ÷ÒªÅÉÉúÀàTBitmapÒ²ÓÐÒ»¸öDraw·½· ......