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
Ïà¹ØÎĵµ£º
1. ÃüÁîµÄ½ÓÊÕÕß
{¡¶HeadFirstÉè¼ÆÄ£Ê½¡·Ö®ÃüÁîģʽ }
{ ±¾µ¥ÔªÖеÄÀàΪÃüÁîµÄ½ÓÊÕÕß }
{ ±àÒ빤¾ß £ºDelphi7.0 }
{ ÁªÏµ·½Ê½ £ºxshlife@163.com }
unit uReceiveObject;
interface
type
TLight = class(TObject)
private
FLocation: String;
public
constru ......
DelphiµÄÔ´Â붨λ·½·¨ÍøÉÏËÑË÷µ½ºÃÏñ²»Ì«¶à¡£
ÕâÀï·ÖÏíÎÒ×Ô¼ºµÄÁ½¸ö·½·¨¡£
ÒýÓÃÒ»¶Î»°
ÒýÓÃÄÚÈÝ
ʲôÊÇ MAP Îļþ£¿
MAP ÎļþÊdzÌÐòµÄÈ«¾Ö·ûºÅ¡¢Ô´ÎļþºÍ´úÂëÐкÅÐÅÏ¢µÄΨһµÄÎı¾±íʾ·½·¨£¬Ëü¿ÉÒÔÔÚÈκεط½¡¢ÈκÎʱºòʹÓ㬲»ÐèÒªÓжîÍâµÄ³ÌÐò½øÐÐÖ§³Ö¡£¶øÇÒ£¬ÕâÊÇΨһÄÜÕÒ³ö³ÌÐò±ÀÀ£µÄµØ·½µÄ¾ÈÐÇ¡£
DEL ......
Ò»¡¢Òý×Ó£º
ÏÖÔÚµÄWindowsÓ¦ÓóÌÐò¼¸ºõ¶¼Ê¹ÓÃͼ±ê¡¢Í¼Æ¬¡¢¹â±ê¡¢ÉùÒôµÈ£¬ÎÒÃdzÆËüÃÇΪ×ÊÔ´£¨Resource£©¡£×î¼òµ¥µÄʹÓÃ×ÊÔ´µÄ°ì·¨ÊǰÑÕâЩ×ÊÔ´µÄÔ´Îļþ´òÈëÈí¼þ°ü£¬ÒÔ·½±ã³ÌÐòÐèÒªµÄʱºòµ÷Óá£×ÊÔ´ÊdzÌÐòµÄÒ»²¿·Ö£¬³ÌÐòÒªÕý³£ÔËÐоÍÀë²»ÁË×ÊÔ´Îļþ¡£µ«ÊÇËüÊDz»¿ÉÖ´ÐдúÂë¡£
ΪÁ˸üºÃµØ¹ÜÀí×ÊÔ´£¬DelphiÖÐÌṩÁËÒ»ÖÖ.RESÀàÐ ......
ʲôÊÇÁ÷£¿Á÷,¼òµ¥À´Ëµ¾ÍÊǽ¨Á¢ÔÚÃæÏò¶ÔÏó»ù´¡ÉϵÄÒ»ÖÖ³éÏóµÄ´¦ÀíÊý¾Ý
µÄ¹¤¾ß¡£ÔÚÁ÷ÖУ¬¶¨ÒåÁËһЩ´¦ÀíÊý¾ÝµÄ»ù±¾²Ù×÷£¬Èç¶ÁÈ¡Êý¾Ý£¬Ð´ÈëÊý¾ÝµÈ£¬
³ÌÐòÔ±ÊǶÔÁ÷½øÐÐËùÓвÙ×÷µÄ£¬¶ø²»ÓùØÐÄÁ÷µÄÁíһͷÊý¾ÝµÄÕæÕýÁ÷Ïò¡£Á÷²»
µ«¿ÉÒÔ´¦ÀíÎļþ£¬»¹¿ÉÒÔ´¦Àí¶¯Ì¬ÄÚ´æ¡¢ÍøÂçÊý¾ÝµÈ¶àÖÖÊý¾ÝÐÎʽ¡£Èç¹ûÄã¶Ô
Á÷µÄ²Ù×÷·Ç³£ÊìÁ·£¬ÔÚ³ ......
¸ñʽ£º²Ù×÷Êý Shl/Shr ÒÆ¶¯Î»Êý
˵Ã÷£º²Ù×÷ÊýÓë·µ»ØÖµ¶¼ÊÇÕûÊý
Àý×Ó£º16(10) = 10000(2)
16(10) Shr 1 = 10000(2) Shr 1 = 1000(2) = 8(10)
16(10) Shr 2 = 10000(2) Shr 2 = 100(2) = 4(10)
˵Ã÷£ºÒ»¸öÕûÊý(I)°´Î»×óÒÆÒ»Î»£¬Ï൱ÓÚ°ÑËü³ËÒÔ2£¬¼´ I * 2
&n ......