강좌 / 팁

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

2020.11.15 12:49

VₑₙᵤₛGᵢᵣₗ 조회:1105 추천: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 - - -
3838 윈 도 우| PC모델명 인식 뒤 드라이버 자동설치 [15] Greinke 3803 15 12-10
3837 기 타| 유튜브 볼륨 컨트롤을 마우스로 편하게 (업데이트) [8] 오호라7 2527 7 12-07
3836 기 타| 자신의 음악성향에 맞게 EQ(이퀼라이저) 설정하기 [10] UCLA 5660 18 12-02
3835 윈 도 우| 기본 앱 브라우저 자동으로변경 [3] Greinke 2539 4 12-02
3834 윈 도 우| 바탕화면에 여러 창으로 가득차 있을때 막 흔들어 주세요 !!! [19] 하늘소 3049 9 12-01
3833 윈 도 우| 한글 윈도우에서의 Cortana의 흔적 [3] 레덕후 2451 0 11-30
3832 윈 도 우| 배치파일로 무설치 등록 프로그램 만들기 [4] 슈머슈마 2275 8 11-30
3831 윈 도 우| 모든 Windows 10 키보드 단축키 목록 [16] VₑₙᵤₛG 3283 33 11-28
3830 윈 도 우| 엣지,크롬 등 북마크 클릭시 새탭+포커스로 열기 [5] 오호라7 1249 6 11-27
3829 소프트웨어| Edge 업데이트 차단하기 [5] 봄빛깔 1993 5 11-26
3828 기 타| Microsoft Defender SmartScreen Demo Pages 내꼬 982 1 11-24
3827 소프트웨어| S3. 번역기-Firefox+Google Chrome용 부가 기능: 한국어 지원 [2] VₑₙᵤₛG 1122 6 11-24
3826 윈 도 우| 윈도우10 만능이미지 제작 메뉴얼 [43] 질주민군 5582 64 11-19
3825 소프트웨어| Ventoy 설치 중 에러 [4] 별내리는바 2323 4 11-16
3824 소프트웨어| OCR(문자 인식) 활용 & 자작 프로그램 [12] 바이바이 2772 17 11-16
3823 소프트웨어| 리얼텍 오디오 드라이버 무한반복 설치 방지 방법 [2] 좋게멋지게 4107 7 11-15
» 소프트웨어| Resource Hacker™ 5.1.8 - 리소스 수정 설명 [5] VₑₙᵤₛG 1105 11 11-15
3821 기 타| bat로 포터블 만들기 간단 팁 [9] 슈머슈마 2713 20 11-12
3820 윈 도 우| 윈도우 업데이트 통합본 defender 까지 통합을 원하면... [5] 디폴트 1726 8 11-11
3819 윈 도 우| 20H2 19042.610에서 클래식 시스템 화면 보기 [6] dreamsbk1 4278 18 11-03
XE1.11.6 Layout1.4.8