易截截图软件、单文件、免安装、纯绿色、仅160KB

Delphi下生成Map文件方法,免杀或调试用的

 以前看了 通过崩溃地址找错误行数之VC版 那时候还没用DELPHI
昨晚刚好又看到了 所以就试了一下DELPHI的,与大家共享 ^_^
什么是 MAP 文件?简单地讲, MAP 文件是程序的全局符号、源文件和代码行号信息的唯一的文本表示方法,它可以在任何地方、任何时候使用,不需要有额外的程序进行支持。而且,这是唯一能找出程序崩溃的地方的救星。
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


相关文档:

Delphi 设计模式:《HeadFirst设计模式》Delphi7代码

1. 命令的接收者
{《HeadFirst设计模式》之命令模式 }
{ 本单元中的类为命令的接收者 }
{ 编译工具 :Delphi7.0 }
{ 联系方式 :xshlife@163.com }

unit uReceiveObject;

interface

type
TLight = class(TObject)
private
FLocation: String;
public
constru ......

Delphi连接SQL Server 2000

一、在Delphi7中连接MS SQL Server 2000的方法。
刚开始时界面如下:添加4个控件。
设置控件属性过程:
1、ADOConnection1设置
1)双击ADOConnection1,进行设置连接字符串(作用是:选取连接驱动方式和连接的数据库设置)。过程如下图所示:
2、ADOQuery1设置: 
1)ADOQuery1.connection属性为ADOConnection1; ......

Delphi源码免杀定位MAP的方法

 Delphi的源码定位方法网上搜索到好像不太多。
这里分享我自己的两个方法。
引用一段话
 引用内容
什么是 MAP 文件?
MAP 文件是程序的全局符号、源文件和代码行号信息的唯一的文本表示方法,它可以在任何地方、任何时候使用,不需要有额外的程序进行支持。而且,这是唯一能找出程序崩溃的地方的救星。
DEL ......

Delphi 数据类型

 一、整数类型
类型 所占字节数 取值范围
byte 1 0-255
word 2 0-65535
shortint 1 -128-127
smallint 2 -32768-32767
integer 4 -214748648-214748467
longint 4 -214748648-214748467
cordinal 4 0-2147483647
二、实数类型
类型 所点字节数 取值范围
Real 6 ±2.9×10的负39次方到1.7× ......

简单的Delphi三层程序开发

 一年前开发了一个MIDAS的程序,最近修改服务端,可是这个服务无法注册,最后终于找到了解决办法,这个相关文章如下:(算是备份吧)
(一)MIDAS是什么?
Delphi中MIDAS到底是什么呢?和他相关组件是什么呢? 
MIDAS(Multitiered Distributed Application Services)多层分布式应用服务。
   Delphi所提出 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号