更新日期 2010.04.06 19:31
2323
更新日期 2010.04.06 19:31
2323
手机游戏resco bubbles
游戏共50关 个人记录如下
-------------------------------
(2009-01-27)
1 1.5
2 2.6
3 3.3
4 5.9
5 10.2
6 3.2
7 6.0
8 0.6
9 14.3
10 15.5
11 1.6
12 14.4
13 1.3
14 3.8
15 4.4
16 3.5
17 1.2
18 24.3
19 28.1
20 24.7
21 5.9
22 15.2
23 16.9
24 11.5
25 28.9
26 21.6
27 15.2
28 12.2
29 5.4
30 7.3
31 1:38.2
32 12.8
33 50.0
34 12.1
35 8.2
36 2.3(bug??) --------此处是因软件bug而导致成绩出错
37 1:01.2
38 5.4
39 37.4
40 8.6
41 5.1
42 8.3
43 13.4
44 11.8
45 10.6
46 1.9
47 1:32.0
48 (未通关)
49 (未通关)
50 (未通关)
-----------------------------------------
第二次更新成绩 (20090719)
11.5
22.6
33.3
44.8
58.9
62.8
74.8
80.5
914.1
1014.3
111.6
1211.1
131.3
141.9
154.2
163.5
171.1
1824.3
1927.6
2016.2
215.2
2210.0
2316.9
2411.2
2513.9
2621.6
2715.2
2812.2
295.4
307.3
311:38.2
3212.8
3350.0
3410.1
357.0
3616.9
3749.2
385.2
3937.4
408.6
415.1
428.3
4313.4
4411.8
4510.6
461.9
471:32.0
48--
49--
50--
(这篇文章是从blog.csdn.net/seavers导入的, 最新版本见: http://seavers.iteye.com/blog/1416013, )
反编译所使用的工具是jad.exe,笔者的测试版本是1.5.8e,压缩与解压缩使用的是WinRAR
jad.exe 可反编译一个class文件为java文件,笔者的BAT可通过此工具将一个jar包反编译成一个完整的源码jar包,同时生成的目录也可以在eclipse中使用
jad.exe 官方网站 : http://www.kpdus.com/jad.html (英文的)
BAT脚本见后
安装方法如下:
复制粘贴后面的文本为一个BAT,然后与jad.exe放在同一个目录即可(WinRAR需正确安装)
使用方法如下: (有3种使用方法, 使用其中任意一种均可,结果是相同的)
1. 双击BAT,提示输入需反编译的jar包,请输入完整的jar路径
2. 直接将 jar 包拖放在bat上
3.右键点击jar包,选择打开方式,然后选择使用该BAT来执行
运行后的结果如下:
在jar包的同一目录下, 将会生成一个目录,一个jar,目录下有两个子目录,一个目录存放解压缩后的所有class,一个目录存放反编译后的java文件,jar包是用源码压缩生成的
几点说明:
1. 工具中使用的WinRAR是自动识别安装路径的,请正确安装WinRAR
2. 工具使用的jad.exe,须与BAT放在同一目录,或者放在PATH可搜索到的位置
3. jar包中非class文件,也会完整拷贝在源码目录下,方便生成源码工程
4. 生成的目录名与原 jar 包同名, 生成的源码 jar 包的文件名是在原名称中加入-src而生成, 如原 jar 包为 jdbc.jar, 则生成的目录名为 jdbc, 而生成的源码jar 包名则为 jdbc-src.jar
5. eclipse使用方法1, 将BAT生成的目录放在workspace中,然后创建同名工程
6. eclipse使用方法2,在 eclipse 中创建同名工程,使用src为源文件目录,bin为class文件目录,然后将BAT生成的目录拷贝在eclipse的workspace中
该BAT为 blog.csdn.net/seavers 原创, BAT源码仅供个人学习,使用,研究,未经本人同意,不可用于商业用途
BAT源码如下: (请直接拷贝在BAT文件中)
摘自c3p0.jar,方便查看
//c3p0.properties
//c3p0-config.xml
//解析properties
//解析xml
贴一小段自己写的小程序
//MS VC++ 6.0 Console lhj
#include <windows.h>
void main()
{
//保留原来的返回地址
DWORD *pBackAddress = (DWORD *)&pBackAddress + 2;
DWORD BackAddress = *pBackAddress;
//获取自己的执行代码地址
HMODULE hModule = LoadLibrary("User32.dll");
DWORD Address = (DWORD)GetProcAddress(hModule, "MessageBoxA");
//缓冲区溢出
DWORD Buffer[100];
Buffer[0] = 0x5050C033;// xoreax, eaxpush eaxpush eax
Buffer[1] = 0xE8905050;// pusheax pusheax
Buffer[2] = Address - (DWORD)&Buffer[3];// call MessageBoxA
Buffer[3] = 0xE9909090;// jmpBackAddress
Buffer[4] = BackAddress - (DWORD)&Buffer[5];
//更改返回地址
*pBackAddress = (DWORD)Buffer;
}
举例:
void MyRecv(char buffer)
{
char TempBuf[1024];
memset(TempBuf, 0, 1024);
int len = recv(TempBuf);
memcpy(buffer, TempBuf, len);
}
如果在我们的程序中调用过这样一段程序, 那么我们的程序将面临着溢出的危险!