Resource Hacker是非常強(qiáng)大的資源查看器,編譯和反編譯工具!Resource Hacker 主要用于察看、反匯編和取代 Windows 32 位可執(zhí)行程序中的資源,支持 Delphi 5 和 C++ Builder。這款資源替換修改工具非常的簡(jiǎn)單實(shí)用,操作方面與eXeScope幾乎沒(méi)什么兩樣。
你想自定義應(yīng)用軟件嗎?
例如:更改字體,更改菜單,更改對(duì)話框的排列,等等。但你會(huì)認(rèn)為這是不可能的,因?yàn)槟銢](méi)有資源文件。ResHacker能在沒(méi)有資源文件的情況下分析,顯示不同的信息,重寫可執(zhí)行文件的資源,包括(EXE,DLL,OCX)等。是方便強(qiáng)大的漢化工具,可以直接修改用 VC++ 及 DELPHI 編制的程序的資源,包括菜單、對(duì)話框、字串表等。
ResHacker替換圖標(biāo)
1. 首先先下載ResHacker,然后打開"ResHacker.exe"(程序)
2. 點(diǎn)擊菜單欄上的"文件(F)", 選擇第一項(xiàng)"打開(O)" 然后就顯示,選擇你要編輯的dll文件(此教程dtu就以 imageres.dll 來(lái)做示范)
3. 選中你要編輯的dll文件,然后點(diǎn)擊"打開(O)"
4. 現(xiàn)在就要開始對(duì)你選中的dll文件進(jìn)行編輯了
5. 點(diǎn)擊對(duì)應(yīng)"圖標(biāo)組"的那個(gè)小小的 "+" 符號(hào),就會(huì)拉開子目錄,里面有幾個(gè)圖標(biāo)就會(huì)顯示幾個(gè)文件夾
6. 接著點(diǎn)擊對(duì)應(yīng)文件夾“3”的那個(gè)小"+"符號(hào)拉開,選中"1033"后 右邊的預(yù)覽框就會(huì)顯示出圖標(biāo)的樣式。 (注意:此時(shí)會(huì)彈出一個(gè)錯(cuò)誤的提示框,我們確定掉即可。后面才解釋)
7. 開始進(jìn)行替換圖標(biāo)了哦,在選中了"1033"后,右鍵"1033",就會(huì)出現(xiàn)右鍵菜單
8. 點(diǎn)擊(上數(shù)第4個(gè)選項(xiàng)) "替換資源..."
9. 彈出了個(gè)對(duì)話框(替換圖標(biāo)與.........),讓你選擇你要替換的圖標(biāo)(ico文件),點(diǎn)擊左上角的"打開新圖標(biāo)文件(0)..."
10. 你選擇圖標(biāo)文件,找到你要替換的圖標(biāo)文件后(ico)選中,點(diǎn)擊對(duì)話框右下角的 "打開(0)"
11. 接著點(diǎn)擊右下角的 "替換(R)"
12. 沒(méi)錯(cuò),錯(cuò)誤提示框又彈出來(lái)了。老規(guī)矩,確定即可
13. “3”號(hào)圖標(biāo)我們替換好了,下一步就是保存文件了。
點(diǎn)擊ResHacker菜單欄上的"文件(F)"選擇 "保存為(A)..."
14. 就存到桌面吧,稍后再自己移動(dòng)吧
好了,如何把ico文件封到dll文件里面現(xiàn)在大家都知道了
PS:
剛才途中出現(xiàn)了一個(gè)錯(cuò)誤的提示窗口這里說(shuō)下,該錯(cuò)誤提示可能是由于圖標(biāo)ico文件了面包含了壓縮的256px圖標(biāo)信息導(dǎo)致的,我們要是替換不包含壓縮256px的圖標(biāo)就不會(huì)出現(xiàn)這類提示。還好該提示不影響結(jié)果,修改好后文件還是成功的。
希望dtu這個(gè)簡(jiǎn)單的教程能幫助到大家的使用,如果替換更多的圖標(biāo)的dll文件,操作還是一樣一樣的。
ResHacker 替換avi
ResHacker提取并保存avi,第一到第四步即可完成提取 。(第四步重點(diǎn)說(shuō)明提取avi步驟)
進(jìn)行替換前我想你必須知道一點(diǎn),系統(tǒng)使用的avi動(dòng)畫可不是我們一般看視頻那樣的avi屬性的 。通常我們看到的視頻avi都比較長(zhǎng),所以容積是比較大的,為了達(dá)到小容量的目的,avi視頻將被壓縮,壓縮是指重新進(jìn)行編碼,減低碼率=容積減小 。不管怎樣,有編碼就必須有解碼,要不,播放器是怎么來(lái)的,但是``Windows系統(tǒng)默認(rèn)是沒(méi)有解碼模塊的,所以系統(tǒng)調(diào)用的avi必須是全幀/無(wú)壓縮的avi文件 。因?yàn)橹坝邢脒^(guò)壓縮avi以達(dá)到減小dll文件大小 。
1,啟動(dòng) ResHacker 并打開你所要編輯的文件,在此過(guò)程中使用 srchadmin.dll 文件示范 。
2,選擇左邊資源樹的 AVI(文件夾)點(diǎn)擊拉開,再次點(diǎn)擊拉開 1301(文件夾)直到看到目標(biāo)編號(hào)為1033 avi并選中 。
3,此時(shí)你會(huì)看到游覽窗口顯示 1033的avi動(dòng)畫, 確定你選中了 資源樹中的 1301-1033 。
4,右鍵 資源樹的 1033,( 附加:此時(shí)選擇 保存(S)[ AVI:1301:1033..... ] 即可提取并保存 1301 avi動(dòng)畫) 選擇 替換資源.... ,出現(xiàn)對(duì)話框, 點(diǎn)擊 打開新資源文件(O)... , 現(xiàn)在請(qǐng)你找出已經(jīng)準(zhǔn)備好的 avi文件并選中打開 。
5,此時(shí)在剛才那個(gè) 替換一個(gè)資源... 的對(duì)話框中,出現(xiàn)了3個(gè)選項(xiàng) 。
資源類型(T):
資源名稱(N):
資源語(yǔ)言(L):
6,第一項(xiàng)(資源類型)填寫:AVI ,第二項(xiàng)(資源名稱)填寫:1301 ,第三項(xiàng)(資源語(yǔ)言)填寫:1033 ,然后點(diǎn)擊 替換 。
,此時(shí)你將看到替換好的 avi 效果,接著 文件 — 另存為 ,保存好修改后的文件完成 。
Resource Hacker 功能特點(diǎn):
1、查看Windows 32 位和 64 位可執(zhí)行文件(*.exe、*.dll、*.cpl、*.ocx、*.msstyles 等等)以及 Windows 資源文件(*.res)的資源,在已編譯和反編譯的格式下都可以。
2、提取(保存) 資源為文件 (*.res) 格式,可作為二進(jìn)制,或作為反編譯過(guò)的資源腳本或圖像。
圖標(biāo)、位圖、指針、菜單、對(duì)話、字符串表、消息表、快捷鍵、Borland 窗體和版本信息資源都可以完整地反編譯為其各自的格式,不論是作為圖像還是作為 *.rc 文本文件都可以。
3、修改(替換) 可執(zhí)行文件的資源。
圖像資源(圖標(biāo)、指針和位圖)可以被相應(yīng)的圖像文件(*.ico, *.cur, *.bmp)、*.res 文件、甚至是另一個(gè) *.exe 文件所替換。
對(duì)話、菜單、字符串表、快捷鍵和消息表資源腳本(以及 Borland 窗體)可以通過(guò)使用內(nèi)部資源腳本編輯器被編輯和重新編譯。資源也可以被某個(gè) *.res 文件所替換,只要替換的資源與其是同一類型并且有相同的名稱即可。
4、添加新的資源到可執(zhí)行文件。允許一個(gè)程序支持多種語(yǔ)言,或?qū)⒆远x圖標(biāo)或位圖(公司的標(biāo)識(shí)等)添加到程序的對(duì)話中。
5、刪除資源。大多數(shù)編譯器添加了應(yīng)用程序永遠(yuǎn)都不會(huì)用到的資源到應(yīng)用程序中。刪除這些不使用的資源可以減小應(yīng)用程序的體積。
更新日志:
Resource Hacker(ResHacker) v4.3.20 版本更新:2016年9月11日
更新日志
修正:添加資源到文件不會(huì)損壞任何資源
新增:現(xiàn)在可以更改文本資源格式(Unicode,UTF-8,ANSI)
修正:一些 Delphi 窗體未被反編譯或正確重新編譯
修正:PNG 圖像偶爾不顯示
修正:主窗口收縮到很小時(shí)導(dǎo)致的除零錯(cuò)誤
增加時(shí)所用到的控件的示例:
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,插入圖標(biāo)(32X32):
CONTROL 15, -1, STATIC, SS_ICON | WS_CHILD | WS_VISIBLE, 7, 7, 20, 20
(其中15為ICO的ID)
5,插入圖標(biāo)(最大):
與上面的添加方法一樣,只是需要用eXeScope為其增加“實(shí)際大小圖象”屬性即可。這樣就會(huì)顯示對(duì)圖標(biāo)中最大的圖標(biāo)(有一點(diǎn)例外:該圖標(biāo)的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,插入文字,文字可復(fù)制,窗口為白色:
CONTROL "WinRAR 寒夜孤星版", -1, EDIT, ES_LEFT | ES_AUTOHSCROLL | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP, 43, 92, 130, 14
9,插入文字,文字可復(fù)制,窗口為透明:
CONTROL "WinRAR 寒夜孤星版", -1, EDIT, ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 221, 85, 161, 8
10,在插入文字串中,使用“ \n ”來(lái)?yè)Q行。
以上所說(shuō)的AVI、WAV、BMP等資源,必須未壓縮,或者使用行程壓縮 ,其他的壓縮方式都將使資源無(wú)法使用!
順便說(shuō)一下:ResHacker 文件下的 Dialogs.txt 與其他文本不同,他為 ResHacker 提供控件解釋。如果將其刪除,會(huì)導(dǎo)致 ResHacker 無(wú)法直接添加修改控件!
②菜單:
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
}
}
以上是一個(gè)最簡(jiǎn)單的菜單示例,其中,
APPMENU為菜單的ID。
LANGUAGE LANG_CHINESE為該菜單的語(yǔ)言屬性—2052即簡(jiǎn)體中文。
POPUP "文件(&F)",POPUP定義了一個(gè)名為文件的按鈕,(&F)為快捷鍵。其英文語(yǔ)言下為POPUP "&File"。
{}成對(duì)使用。
MENUITEM 用來(lái)定義下拉的菜單內(nèi)容,后面的數(shù)字為其ID。
MENUITEM SEPARATOR用來(lái)在菜單中添加一個(gè)分割線。