강좌 / 팁

소프트웨어 Resource Hacker™ 5.1.8 - 리소스 수정 설명

2020.11.15 12:49

VₑₙᵤₛGᵢᵣₗ 조회:1104 추천:11

Resource Hacker

... Windows® 응용 프로그램용 무료 리소스 컴파일러 및 디컴파일러

버전 5.1.8
최근 업데이트: 2020년 11월 14일
Copyright © 1999-2020 Angus Johnson
KR: VenusGirl´″°³msn019.gif
프리웨어 - 잔소리 없고, 광고도 없으며 완벽하게 작동합니다.

개요:

Resource HackerTM는 32비트 및 64비트 Windows® 응용 프로그램용 리소스 편집기 입니다. 리소스 컴파일러 (*.rc 파일 용), 및 디컴파일러 - 실행 파일 (*.exe; *.dll; *.scr; etc) 및 컴파일된 리소스 라이브러리 (*.res, *.mui) 에서 리소스를 보고 편집할 수 있습니다. Resource Hacker는 주로 GUI 응용 프로그램이지만 명령줄에서 리소스를 컴파일하고 디컴파일하는 많은 옵션을 제공합니다.

img.png

img.png

컴파일:

컴파일은 기존 리소스 스크립트 파일을 열거나 Resource Hacker의 편집기를 사용하여 처음부터 생성하여 시작할 수 있습니다.

리소스 정의 문에 대한 전체 목록은 여기에서 찾을 수 있습니다.

Resource Hacker의 컴파일러의 추가 기능은 다음과 같습니다: #INCLUDE 지시문 (헤더 파일의 정의 문에 액세스하는 등) 은 #IF 및 #IFDEF 지시문처럼 여러 수준으로 중첩될 수 있습니다. #DEFINE, #UNDEF, #IF, #ELIF, #ELSE, #IFDEF, #IFNDEF, #INCLUDE, and #PRAGMA 지시문이 모두 지원됩니다. 큰 따옴표 (") 문자 사이의 문자열은 일반적으로 'C' 스타일의 역슬래시 '이스케이프' 문자들 \t , \n , \\ , \" , \x, \u 및 \377 (8진수) 을 포함할 수 있습니다. 문자열 내의 큰 따옴표는 선행 역슬래시 또는 다른 큰 따옴표를 사용하여 '이스케이프' 해야 합니다. 스크립트 주석은 이중 슬래시 (//) 또는 세미콜론 (;)으로 시작합니다.

INCLUDE 문 내에 중첩된 오류조차도 컴파일러 오류 메시지가 보고 됩니다.
img.png

리소스 보기 및 편집:

리소스 파일이 열리면 리소스는 일반적으로 이미지 (또는 이미지 그룹) 또는 디컴파일된 텍스트로 표시됩니다. 일반적으로 이미지인 이진 리소스는 Resource Hacker로 직접 편집할 수 없지만 외부 이미지 편집기로 수정한 후에는 매우 쉽게 내보내고 가져올 수 있습니다. (타사 이미지 편집기에서 잘되는 것을 복제하는데 아무런 이점이 없습니다.)
img.png


메뉴 및 대화 상자 리소스 유형에는 자체 WYSIWYG 디자이너가 있습니다:
img.pngimg.png

알 수 없는 형식의 이진 리소스는 읽기 전용 이진 텍스트로 표시됩니다. (원하는 경우 모든 리소스를 이 방식으로 볼 수도 있습니다.)
img.png

기타 작업:

img.png

 

명령줄 구문 :

Resource Hacker GUI를 열지 않고도 Resource Hacker의 모든 기능을 명령줄에서 액세스할 수 있습니다.
명령줄 지침 및 Resource Hacker 스크립트는 반복적인 Resource Hacker 작업에 수반되는 지루한 작업을 제거할 수 있습니다.
명령줄 명령은 다음 표에서 설명하는 스위치 문과 스위치 매개 변수의 조합입니다: 명령줄 명령문:
 
스위치    매개변수
-open   파일 이름 - 수정할 파일의 이름입니다. Windows PE 파일 (*.exe, *.dll 등) 또는 컴파일되거나 컴파일되지 않은 리소스 파일 (*.res 또는 *.rc) 이어야 합니다
-save   파일 이름 - 수정 또는 새로 생성된 파일의 새 이름, 수정된 열린 파일 또는 추출된 리소스
-resource   파일 이름 - 열려 있는 파일에 추가할 리소스를 포함합니다.
-action   열린 파일에서 수행할 작업
  • add - 리소스를 추가하지만 이미 있는 경우 실패함
  • addoverwrite - 리소스 추가 및 이미 있는 경우 덮어쓰기
  • addskip - 리소스를 추가하지만 이미 있는 경우 생략
  • compile - 리소스 스크립트 파일 (*.rc)을 이진 리소스 파일 (*.res)로 컴파일
  • delete - 리소스 삭제
  • extract - 리소스 추출
  • modify - 리소스 수정
-mask   리소스 마스크 - 유형, 이름, 언어
쉼표는 필수이지만 유형, 이름 및 언어는 각각 선택 사항입니다
-log   파일 이름 또는 CONSOLE 또는 NUL
CONSOLE은 CON으로 줄여 쓸 수 있습니다
수행된 작업의 세부 사항을 기록합니다
이 스위치를 생략하면 로그가 resourcehacker.log에 기록됩니다
-script   파일 이름 - 다중 명령 스크립트를 포함하고, NOT 자세한 정보를 위한 리소스 스크립트: -help script
-help   옵션 - 명령줄 또는 스크립트 (항상 CONSOLE에 기록) 다른 스위치는 무시됩니다.

참고:
  1. 스위치 식별자 (-script 제외) 는 단일 문자 (예: -res 또는 -r) 로 축약될 수 있습니다.
  2. 스위치 지시는 특정 순서일 필요는 없습니다.
  3. 공백이 포함된 파일 이름은 큰 따옴표로 묶어야 합니다.

배치 파일 예제: (장소를 줄이기 위해 ResourceHacker.exe 대신 rh.exe를 사용 )

reshack_help.bat:
ResourceHacker.exe -help
@pause  :: CMD창이 닫히기 전에 콘솔 출력을 확인합니다.

reshack_compile_res_script.bat:
rh.exe -open .\in\resources.rc -save .\out\resources.res -action compile -log NUL

reshack_add_icon_to_old.bat:
rh.exe -open old.exe -save new.exe -action addskip -res my.ico -mask ICONGROUP,MAINICON,

reshack_extract_icon_from_source.bat:
rh.exe -open source.exe -save icons.ico -action extract -mask ICONGROUP,MAINICON, -log CON
@pause

reshack_extract_all_icons_from_source.bat:
rh.exe -open source.exe -save savedicons.rc -action extract -mask ICONGROUP,, -log rh.log

reshack_execute_my_script.bat:
ResourceHacker.exe -script myscript.txt

Resource Hacker 스크립트:

Resource Hacker 스크립트는 다음 구문을 사용하여 명령줄에서 실행됩니다:
 
  ResourceHacker.exe -script ScriptFile

Resource Hacker 스크립트는 다음과 같은 형식의 텍스트 파일입니다:
 
  //주석은 이중 슬래시가 앞에 있습니다
  [FILENAMES]
  Open=
  Save=
  Log=
  [COMMANDS]
  //하나 또는 그 이상의 다음 명령어들 ...
  -add          SourceFile, ResourceMask
  -addskip      SourceFile, ResourceMask
  -addoverwrite SourceFile, ResourceMask
  -addoverwrite SourceFile, ResourceMask
  -modify       SourceFile, ResourceMask
  -extract      TargetFile, ResourceMask
  -delete       ResourceMask

참고: 공백을 포함하는 파일 이름은 큰 따옴표로 묶어야 합니다.

Resource Hacker 스크립트 예제:

rh_script_myprog_kor.txt -
  //이 스크립트는 한국어 (1042) 항목으로 바꾸기 전에
  //MyProg.exe의 모든 중립 언어 (0)
  //문자열 테이블, 메뉴 및 대화 상자 리소스 항목을
  //삭제합니다...  	
  [FILENAMES]
  Exe=    MyProg.exe
  SaveAs= MyProg_Kor.exe
  Log=    MyProg_Kor.log	
  [COMMANDS]
  -delete  MENU,,0
  -delete  DIALOG,,0
  -delete  STRINGTABLE,,0
  -add     MyProg_Kor.res, MENU,,1042
  -add     MyProg_Kor.res, DIALOG,,1042
  -add     MyProg_Kor.res, STRINGTABLE,,1042

rh_script_myprog_upd_images.txt -
  //이 스크립트는 MyProg.exe에서
  //2개의 비트맵과 아이콘을 업데이트 합니다...	
  [FILENAMES]
  Exe=    MyProg.exe
  SaveAs= MyProg_Updated.exe	
  [COMMANDS]
  -addoverwrite Bitmap128.bmp, BITMAP,128,
  -addoverwrite Bitmap129.bmp, BITMAP,129,0
  -addoverwrite MainIcon.ico, ICONGROUP,MAINICON,0

rh_script_myprog_upd_all.txt -
  //이 스크립트는 MyProg.exe의 모든 리소스를
  //MyProgNew.res의 모든 리소스로
  //대체합니다
  [FILENAMES]
  Exe=    MyProg.exe
  SaveAs= MyProg_Updated.exe
  [COMMANDS]
  -delete  ,,,            //이전의 모든 리소스 삭제...
  -add MyProgNew.res ,,,  //모든 새 리소스 추가
 

"포장" 또는 "압축" 된 실행 파일:

일부 실행 파일은 컴파일된 후에 압축 알고리즘을 사용하여 "포장" 또는 "압축" 되어 있습니다. 이렇게하면 파일 크기가 줄어들고 리소스를 보고 수정하는 것이 어려워집니다. 나는 이 리소스의 '은닉' 이 이 과정의 지배적인 목표라고 생각합니다. 결과적으로 이 '포장' 과정을 역으로 엔지니어링 하는 것이 일반적으로 어렵지는 않지만 이러한 저자를 고려하여 Resource Hacker를 사용하지 않기로 결정했습니다. 또한 "압축" 된 실행 파일은 지난 5-10년 동안 매우 드물게 사용되었습니다. 그 이유는 대부분의 실행 파일이 설치 프로그램 또는 ZIP 패키지 내에서 압축되기 때문입니다. 그러나 소프트웨어 작성자들은 실행 파일의 리소스 섹션에 있는 정보보다 더 많은 정보를 노출하고 있는 것으로 보입니다. 나는 역 엔지니어링으로 지적 재산을 잃는 것에 대한 이전의 우려가 마침내 완화되었다고 생각합니다.

 

사용 라이센스-이용 약관:

이 Resource HackerTM 소프트웨어는 귀하가 다음 이용 약관에 동의하는 경우 프리웨어로 배포됩니다:
  1. 이 소프트웨어는 저작권 소유자의 사전 서면 승인없이 웹 사이트 도메인이나 다른 매체를 통해 배포할 수 없습니다.
  2. 이 소프트웨어는 어떤 식으로든 불법 소프트웨어를 수정하는데 사용할 수 없습니다.
면책 조항: 이 Resource HackerTM 소프트웨어 사용자는 본 소프트웨어를 "있는 그대로" 제공 받고 있으며 사용자는 어떤 목적으로 든 소프트웨어의 정확성이나 기능에 의존하지 않고 있음을 인정합니다. 사용자는 또한 이 소프트웨어의 사용이 사용자 자신의 위험 부담이며, 저작권 소유자는 소프트웨어의 사용이나 적용으로 인해 발생하는 어떠한 책임도 지지 않음을 인정합니다.

위의 라이센스 조항은 미국 법전 제17조의 1202항의 의미 내에서 "저작권 관리 정보"를 구성하며 허가된 저작물에서 변경되거나 제거되어서는 안됩니다. 허가된 저작물의 변경 또는 삭제, 위의 모든 사용권 조항없이 변경되지 않은 라이선스 저작물의 배포는 1202항을 위반할 수 있으며 민사 및/또는 형사상의 결과를 초래할 수 있습니다.

한국어 단일 포터블 다운로드: Resource Hacker™ 5.1.8
번호 제목 글쓴이 조회 추천 등록일
[공지] 강좌 작성간 참고해주세요 gooddew - - -
4468 윈 도 우| PrincePE_V18.5 [164] %카리스마 204975 99 02-02
4467 윈 도 우| 윈도우7 Windows 정품 인증 기술 업데이트로 인증하기 [21] 얼룩강아지 111616 0 02-27
4466 윈 도 우| 비스타(VISTA) 인증 후 무한 리부팅 현상 해결법 [1] gooddew 98123 0 06-17
4465 윈 도 우| 바이오스 안에 OEM SLIC 가 내장되었는지 확인하는 방법 [5] gooddew 84994 0 06-17
4464 윈 도 우| UEFI-모드 부팅 [설치 USB] 만들기 [8] eunnano 76992 0 09-07
4463 A.I 사용법 무작정 따라하기 (스샷 첨부) - 마지막 수정 [67] PoLaRiS 74985 6 09-10
4462 하드웨어| 유튜브 버퍼링 완전해결2 (hosts파일 사용, DNS변경 x, SKB... [44] hsk 63891 6 05-06
4461 윈 도 우| 비스타/세븐 DVD-4cd 분할 가이드 v2 김간지 63408 0 01-21
4460 윈 도 우| Usb를 이용한 XP설치 [21] 고맙쥐 62263 11 10-23
4459 윈 도 우| 비스타의 숨겨진 부팅로고를 보자 [5] cdcsj 60477 0 05-26
4458 윈 도 우| 소소한팁..Windows 로그온 사진이 작을때.. 김간지 59252 0 07-12
4457 윈 도 우| God Mode 만들기 [5] 적광 55431 0 12-26
4456 기 타| Superfetch 기능 사용중단하기 [13] gooddew 55293 1 09-16
4455 윈 도 우| Win7_8 PE/수정/추가/바탕화면/교체하기 [13] 까꾸리 54248 17 05-18
4454 Windows 7 과 XP 프린터와 파일 서로 공유하기 [5] sp2 52848 3 08-22
4453 윈 도 우| 윈도우8 다국어 언어팩 설치 방법(영문 기준) [6] chkid 51175 5 11-11
4452 윈 도 우| 삼성 노트북의 복원솔루션 5 를 이용하여 SSD에 복원영역 ... [13] 울랄라백수 48960 4 06-17
4451 소프트웨어| USB키보드인채로 PLOP 사용하기 (USB 2.0 MODE + PE) [19] hazuki 48383 0 01-19
4450 윈 도 우| 만능고스트 사용후 hal.dll 오류로 부터 벗어나기 [2] cdcsj 47761 0 04-29
XE1.11.6 Layout1.4.8