Resource Hacker最新版是一款十分出色专业的java反编译工具。Resource Hacker最新版的功能非常的强大,可以帮助大家进行资源查看,编译和反编译,能够轻松快捷的反汇编和取代 Windows 32 位可执行程序中的资源,不仅如此,Resource Hacker官方版还支持 Delphi 5 和 C++ Builder。
功能介绍
1. Resource Hacker支持查看 Win32 可执行和相关文件的资源 (*.exe, *.dll, *.cpl, *.ocx),在已编译和反编译的格式下都可以。
2. Resource Hacker支持提取 (保存) 资源到文件 (*.res) 格式,作为二进制,或作为反编过的译资源脚本或图像。图标,位图,指针,菜单,对话,字符串表,消息表,加速器,Borland 窗体和版本信息资源都可以被完整地反编译为他们各自的格式,不论是作为图像或 *.rc 文本文件。
3.Resource Hacker支持修改 (替换) 可执行文件的资源。图像资源 (图标,指针和位图) 可以被相应的图像文件 (*.ico, *.cur, *.bmp),*.res 文件,甚至另一个 *.exe 文件所替换。对话,菜单,字符串表,加速器和消息表资源脚本 (以及 Borland 窗体) 可以通过使用内部资源脚本编辑器被编辑和重新编译。资源也可以被一个 *.res 文件所替换,只要替换的资源与它是同一类型并且有相同的名称。
4. Resource Hacker支持添加新的资源到可执行文件。允许一个程序支持多种语言,或者添加一个自定义图标或位图 (公司的标识等) 到程序的对话中。
5. Resource Hacker支持删除资源。大多数编译器添加了应用程序永远不会用到的资源到应用程序中。删除这些不使用的资源可以减小一个应用程序的大。
软件特色
#INCLUDE指令(用于访问头文件中的定义语句等)可以嵌套到多个级别,#IF和#IFDEF指令也可以嵌套。
支持#DEFINE,#ENDE,#IF,#ELIF,#ELSE,#IFDEF,#IFNDEF,#INCLUDE和#PRAGMA指令。
双引号(“)字符之间的字符串可能包含典型的'C'样式反斜杠'转义'字符 - t, n,,”, x, u和 377(八进制)。
字符串中的双引号必须使用前面的反斜杠或其他双引号进行“转义”。
脚本注释以双正斜杠(//)或分号(;)开头。允许使用具有相对路径的文件名。
包含空格的文件名必须包含在双引号字符中。
常见问题
一:ResHacker如何替换图标?
1. 首先先下载ResHacker,然后打开"ResHacker.exe"(程序)
2. 点击菜单栏上的"文件(F)", 选择第一项"打开(O)" 然后就显示,选择你要编辑的dll文件(此教程dtu就以 imageres.dll 来做示范)
3. 选中你要编辑的dll文件,然后点击"打开(O)"
4. 然后开始对你选中的dll文件进行编辑了
5. 点击对应"图标组"的那个小小的 "+" 符号,就会拉开子目录,里面有几个图标就会显示几个文件夹
6. 接着点击对应文件夹“3”的那个小"+"符号拉开,选中"1033"后 右边的预览框就会显示出图标的样式。 (注意:此时会弹出一个错误的提示框,我们确定掉即可。后面才解释)
7. 替换图标,在选中了"1033"后,右键"1033",就会出现右键菜单
8. 点击(上数第4个选项) "替换资源..."
9. 弹出了个对话框(替换图标与.........),让你选择你要替换的图标(ico文件),点击左上角的"打开新图标文件(0)..."
10. 你选择图标文件,找到你要替换的图标文件后(ico)选中,点击对话框右下角的 "打开(0)"
11. 接着点击右下角的 "替换(R)"
12. 出现错误提示框,点击确定即可
13. “3”号图标我们替换好了,下一步就是保存文件了。点击ResHacker菜单栏上的"文件(F)"选择 "保存为(A)..."
好了,如何把ico文件封到dll文件里面现在大家都知道了
二:使用ResHacker如何替换avi?
ResHacker提取并保存avi,第一到第四步即可完成提取 。(第四步重点说明提取avi步骤)
1,启动 ResHacker 并打开你所要编辑的文件,在此过程中使用 srchadmin.dll 文件示范 。
2,选择左边资源树的 AVI(文件夹)点击拉开,再次点击拉开 1301(文件夹)直到看到目标编号为1033 avi并选中 。
3,游览窗口显示 1033的avi动画, 确定你选中了 资源树中的 1301-1033 。
4,右键 资源树的 1033,( 附加:此时选择 保存(S)[ AVI:1301:1033..... ] 即可提取并保存 1301 avi动画) 选择 替换资源.... ,出现对话框, 点击 打开新资源文件(O)... , 现在请你找出已经准备好的 avi文件并选中打开 。
5,此时在刚才那个 替换一个资源... 的对话框中,出现了3个选项 。
资源类型(T):
资源名称(N):
资源语言(L):
6,第一项(资源类型)填写:AVI ,第二项(资源名称)填写:1301 ,第三项(资源语言)填写:1033 ,然后点击 替换 。此时你将看到替换好的 avi 效果,接着 文件 — 另存为 ,保存好修改后的文件完成 。
软件相关
增加时所用到的控件的示例:
1,插入横线:
CONTROL "", -1, STATIC, SS_ETCHEDHORZ | WS_CHILD | WS_VISIBLE, 0, 217, 349, 1
2,插入BMP:
CONTROL 102, 109, STATIC, SS_BITMAP | WS_CHILD | WS_VISIBLE, 75, 9, 264, 151
(其中102为BMP图片在“位图”的ID)
3,插入AVI:
CONTROL "#117", 0, "SysAnimate32", ACS_CENTER | ACS_AUTOPLAY | WS_CHILD | WS_VISIBLE, 0, 0, 213, 154
(其中117为AVI资源的ID)
4,插入图标(32X32):
CONTROL 15, -1, STATIC, SS_ICON | WS_CHILD | WS_VISIBLE, 7, 7, 20, 20
(其中15为ICO的ID)
5,插入图标(最大):
与上面的添加方法一样,只是需要用eXeScope为其增加“实际大小图象”属性即可。这样就会显示对图标中最大的图标(有一点例外:该图标的ID必须在前)。
6,插入框体:
CONTROL "WinRAR 寒夜孤星版", -1, BUTTON, BS_GROUPBOX | WS_CHILD | WS_VISIBLE, 4, 50, 175, 134
7,插入文字:
CONTROL "WinRAR 寒夜孤星版", -1, STATIC, SS_LEFT | WS_CHILD | WS_VISIBLE | WS_GROUP, 224, 5, 126, 50
8,插入文字,文字可复制,窗口为白色:
CONTROL "WinRAR 寒夜孤星版", -1, EDIT, ES_LEFT | ES_AUTOHSCROLL | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP, 43, 92, 130, 14
9,插入文字,文字可复制,窗口为透明:
CONTROL "WinRAR 寒夜孤星版", -1, EDIT, ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 221, 85, 161, 8
10,在插入文字串中,使用“ n ”来换行。
以上所说的AVI、WAV、BMP等资源,必须未压缩,或者使用行程压缩 ,其他的压缩方式都将使资源无法使用!
顺便说一下:ResHacker 文件下的 Dialogs.txt 与其他文本不同,他为 ResHacker 提供控件解释。如果将其删除,会导致 ResHacker 无法直接添加修改控件!
②菜单:
APPMENU MENU
LANGUAGE LANG_CHINESE, 0x2
{
POPUP "文件(&F)"
{
MENUITEM "新建(&N)", 1000
MENUITEM "打开(&O)...", 12
MENUITEM "保存(&S)", 13
MENUITEM "另存为(&A)...", 14
MENUITEM "还原(&R)...", 15
MENUITEM "属性(&P)", 100
MENUITEM SEPARATOR
MENUITEM "退出(&X)", 16
}
}
以上是一个最简单的菜单示例,其中,
APPMENU为菜单的ID。
LANGUAGE LANG_CHINESE为该菜单的语言属性—2052即简体中文。
POPUP "文件(&F)",POPUP定义了一个名为文件的按钮,(&F)为快捷键。其英文语言下为POPUP "&File"。
{}成对使用。
MENUITEM 用来定义下拉的菜单内容,后面的数字为其ID。
MENUITEM SEPARATOR用来在菜单中添加一个分割线。