DelphiÏÂÉú³ÉMapÎļþ·½·¨£¬Ãâɱ»òµ÷ÊÔÓõÄ
ÒÔǰ¿´ÁË Í¨¹ý±ÀÀ£µØÖ·ÕÒ´íÎóÐÐÊýÖ®VC°æ ÄÇʱºò»¹Ã»ÓÃDELPHI
×òÍí¸ÕºÃÓÖ¿´µ½ÁË ËùÒÔ¾ÍÊÔÁËÒ»ÏÂDELPHIµÄ£¬Óë´ó¼Ò¹²Ïí ^_^
ʲôÊÇ MAP Îļþ£¿¼òµ¥µØ½²£¬ MAP ÎļþÊdzÌÐòµÄÈ«¾Ö·ûºÅ¡¢Ô´ÎļþºÍ´úÂëÐкÅÐÅÏ¢µÄΨһµÄÎı¾±íʾ·½·¨£¬Ëü¿ÉÒÔÔÚÈκεط½¡¢ÈκÎʱºòʹÓ㬲»ÐèÒªÓжîÍâµÄ³ÌÐò½øÐÐÖ§³Ö¡£¶øÇÒ£¬ÕâÊÇΨһÄÜÕÒ³ö³ÌÐò±ÀÀ£µÄµØ·½µÄ¾ÈÐÇ¡£
DELPHIÏÂÉú³ÉMAPÎļþµÄ·½·¨:żֻ֪µÀÏÂÃæÁ½ÖÖ£¬Èç¹ûËÖªµÀÆäËûµÄ·½·¨ ¾´Çë¸æÖª ¶àл
Éú³ÉÏêϸµÄMAPÐÅÏ¢µÄ·½·¨
1. project -> options -> Linker -> Map file Ñ¡Ôñdetailed.
2. D:\Fred\Code\DELPHI\MyPas\ErrLineByAddr2>dcc32 -GD project1.dpr
ÎÒÃǵĴúÂëΪ£º
unit Unit1;
//{$D+,L+}
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
I, J: Integer;
p: PChar;
begin
I := 10;
J := 0;
//I := I div J; // 32
//ShowMessage(IntToStr(I));
p := nil;
p^ := 'A'; // 38
end;
end.
// Ïë±Ø´ó¼Ò¿´µ½ÁË »áÓзµ»Ø0µØÖ·´íÎó....ÎÒÃÇÕâÀï¾ÍÊÇÒªÈÃËü±ÀÀ££¬ÈÃÎÒÈÃÄã±ÀÀ£ ^_^
È»ºóÖ´ÐÐ µã»÷ È»ºó³ö´í ÎҵĻúÆ÷ÉÏ ±ÀÀ£µØÖ·Îª0044d946
Èç¹ûÒª²éÕÒ´úÂëÐкţ¬ÐèҪʹÓÃÏÂÃæµÄ¹«Ê½×öһЩʮÁù½øÖƵļõ·¨ÔËË㣺
±ÀÀ£ÐÐÆ«ÒÆ = ±ÀÀ£µØÖ·£¨Crash Address£© - »ùµØÖ·£¨ImageBase Address£© - 0x1000
¼õÈ¥ºóµÃµ½ 0004c946 È»ºó²éÕÒ 0004c946
0044d946 - 00400000 = 0004d946 - 00001000 = 0004c946 <= ºóÃæÁгöµÄ
0004C946 ¾ÍÊÇËüÁË ÎÒÃÇÓÃultraedit32Ö®ÀàµÄ¹¤¾ß´ò¿ª .mapÎļþ ËÑË÷ 0004C94,ÕÒµ½ÁË£¬È»ºó¾ÍÕÒ
<= 0004c946µÄÄǸöµØÖ· È»ºó¿´µ½ÁË
Line numbers for Unit1(Unit1.pas) segment .text
37 0001:0004C944 38 0001:0004C946 39 0001:0004C949 41 0001:0004C97C
&nbs
Ïà¹ØÎĵµ£º
´ó¼Ò¶¼ÈÏΪ£¬CÓïÑÔÖ®ËùÒÔÇ¿´ó£¬ÒÔ¼°Æä×ÔÓÉÐÔ£¬ºÜ´ó²¿·ÖÌåÏÖÔÚÆäÁé»îµÄÖ¸ÕëÔËÓÃÉÏ¡£Òò´Ë£¬ËµÖ¸ÕëÊÇCÓïÑÔµÄÁé»ê£¬Ò»µã¶¼²»Îª¹ý¡£Í¬Ê±£¬ÕâÖÖ˵·¨Ò²ÈúܶàÈ˲úÉúÎó½â£¬ËƺõÖ»ÓÐCÓïÑÔµÄÖ¸Õë²ÅÄÜËãÖ¸Õë¡£Basic²»Ö§³ÖÖ¸Õ룬Ôڴ˲»ÂÛ¡£Æäʵ£¬PascalÓïÑÔ±¾ÉíÒ²ÊÇÖ§³ÖÖ¸ÕëµÄ¡£´Ó×î³õµÄPascal·¢Õ¹ÖÁ½ñµÄObject Pascal£¬¿ÉÒÔ˵ÔÚÖ¸ÕëÔËÓ ......
ÔÚDelphiÖÐʹÓÃRASʵÏÖ¶Ôϵͳ²¦ºÅµÄ¿ØÖÆ
ÔÚÆóÒµÓ¦ÓÃÖÐÓÐʱºòÏ£ÍûÄÜÔÚ³ÌÐòÖÐʵÏÖ¶Ô²¦ºÅÍøÂçµÄ¿ØÖÆ£¬ÒÔʵÏÖ×Ô¶¯²¦ºÅ¡¢×Ô¶¯¶Ï¿ªÍøÂç¡£ÔÚ³¢ÊÔÁ˶àÖÖ·½Ê½Ö®ºó£¬ÈÏΪRASÊÇÒ»ÖֱȽÏÎȶ¨µÄ·½Ê½¡£ÔÚgoogleÁËÍøÉÏһЩ×ÊÁϺó£¬ÏÖÕûÀíÈçÏ£º
Ò»¡¢Ê×ÏÈÐèÒªÓиöÕë¶ÔRASµÄÍ·Îļþ¶¨Ò壬Ras.pas´úÂëÈçÏÂ
{* Cop ......
»ñµÃÍø¿¨µÄMACµØÖ·ÔÚºÜ¶àµØ·½¶¼ÓкܴóµÄÓô¦,ÏÂÃæµÄº¯ÊýÒÔXX-XX-XX-XX-XX-XX µÄ¸ñʽ·µ»ØÔ¶³Ì»ò±¾µØ»úÆ÷µÄMACµØÖ·¡£
Function to return the MAC address of a remote or local machine in the format XX-XX-XX-XX-XX-XX
·µ»ØµÄMACµØÖ·ÊÇÒ»¸öÄÜÓÃÔÚ¶à¸ö·½ÃæµÄΨһ±êʶ¡£Ê¹Ó÷½·¨£º
ShowMessage(GetMacAddress( ......
ʲôÊÇÁ÷£¿Á÷,¼òµ¥À´Ëµ¾ÍÊǽ¨Á¢ÔÚÃæÏò¶ÔÏó»ù´¡ÉϵÄÒ»ÖÖ³éÏóµÄ´¦ÀíÊý¾Ý
µÄ¹¤¾ß¡£ÔÚÁ÷ÖУ¬¶¨ÒåÁËһЩ´¦ÀíÊý¾ÝµÄ»ù±¾²Ù×÷£¬Èç¶ÁÈ¡Êý¾Ý£¬Ð´ÈëÊý¾ÝµÈ£¬
³ÌÐòÔ±ÊǶÔÁ÷½øÐÐËùÓвÙ×÷µÄ£¬¶ø²»ÓùØÐÄÁ÷µÄÁíһͷÊý¾ÝµÄÕæÕýÁ÷Ïò¡£Á÷²»
µ«¿ÉÒÔ´¦ÀíÎļþ£¬»¹¿ÉÒÔ´¦Àí¶¯Ì¬ÄÚ´æ¡¢ÍøÂçÊý¾ÝµÈ¶àÖÖÊý¾ÝÐÎʽ¡£Èç¹ûÄã¶Ô
Á÷µÄ²Ù×÷·Ç³£ÊìÁ·£¬ÔÚ³ ......
Ãû³Æ ÀàÐÍ ËµÃ÷
abort º¯Êý ÒýÆð·ÅÆúµÄÒâÍâ´¦Àí
abs º¯Êý ¾ø¶ÔÖµº¯Êý
addexitproc º¯Êý ½«Ò»¹ý³ÌÌí¼Óµ½ÔËÐÐʱ¿âµÄ½áÊø¹ý³Ì±íÖÐ
addr º¯Êý ·µ»ØÖ¸¶¨¶ÔÏóµÄµØÖ·
adjustlinebreaks º¯Êý ½«¸ø¶¨×Ö·û´®µÄÐзָô·ûµ÷ÕûΪcr/lfÐòÁÐ
align ÊôÐÔ Ê¹¿Ø¼þλÓÚ´°¿Úij²¿·Ö
alignment ÊôÐÔ ¿ ......