Sei sulla pagina 1di 10

Hacker de recursos

Resource Hacker TM

... un compilador y descompilador de recursos gratuitos para aplicaciones de Windows®

Versión 5.1.7
Última actualización: 3 de enero de 2019
Copyright © 1999-2019 Angus Johnson
Freeware: sin inconvenientes, sin anuncios y totalmente funcional.
Descargar

Visión general:

Resource Hacker ™ es un editor de recursos para aplicaciones de Windows® de 32 bits y 64 bits.


Es tanto un compilador de recursos (para archivos * .rc) como un descompilador , que
permite ver y editar recursos en ejecutables (* .exe; * .dll; * .scr; etc.) y bibliotecas de recursos
compiladas (* .res, * .mui). Si bien Resource Hacker ™ es principalmente una aplicación GUI,
también ofrece muchas opciones para compilar y descompilar recursos desde la línea de
comandos.

http://www.angusj.com/resourcehacker/#download[31/05/2020 02:02:02 a. m.]


Hacker de recursos

Compilación:

La compilación se puede iniciar abriendo un archivo de script de recursos existente o creando uno
desde cero utilizando el editor de Resource Hacker.

Una lista completa de declaraciones de definición de recursos se puede encontrar aquí .

Las características adicionales del compilador de Resource Hacker incluyen: La directiva


#INCLUDE (para acceder a declaraciones de definición en archivos de encabezado, etc.) puede
anidarse en múltiples niveles, al igual que las directivas #IF y #IFDEF. Las directivas #DEFINE,
#UNDEF, #IF, #ELIF, #ELSE, #IFDEF, #IFNDEF, #INCLUDE y #PRAGMA son compatibles. Las
cadenas, entre comillas dobles ("), pueden contener caracteres típicos de" C "con barra invertida"
escapado ": \ t, \ n, \\, \", \ x, \ u y \ 377 (octal). Una comilla doble dentro de una cadena debe
'escaparse' usando una barra invertida anterior o con otra comilla doble. Los comentarios del
guión van precedidos de dos barras diagonales (//) o de un punto y coma (;). Se permiten
nombres de archivo con rutas relativas. Los nombres de archivo que contienen espacios deben
estar entre comillas dobles.

Se informan los mensajes de error del compilador, incluso los errores anidados dentro de las
declaraciones INCLUDE ...

http://www.angusj.com/resourcehacker/#download[31/05/2020 02:02:02 a. m.]


Hacker de recursos

Visualización y edición de recursos:

Una vez que se ha abierto un archivo de recursos, sus recursos generalmente se mostrarán como
una imagen (o grupo de imágenes) o como texto descompilado. Los recursos binarios,
generalmente imágenes, no se pueden editar directamente con Resource Hacker, pero aún se
pueden exportar e importar muy fácilmente una vez que han sido modificados por un editor de
imágenes externo. (No veo ningún beneficio en duplicar lo que los editores de imágenes de
terceros hacen tan bien).

http://www.angusj.com/resourcehacker/#download[31/05/2020 02:02:02 a. m.]


Hacker de recursos

Los tipos de recursos de Menú y Diálogo tienen sus propios diseñadores WYSIWYG: los

http://www.angusj.com/resourcehacker/#download[31/05/2020 02:02:02 a. m.]


Hacker de recursos

http://www.angusj.com/resourcehacker/#download[31/05/2020 02:02:02 a. m.]


Hacker de recursos

recursos binarios que tienen formatos desconocidos se mostrarán como texto binario de solo
lectura. (Cualquier recurso también se puede ver de esta manera si se desea).

http://www.angusj.com/resourcehacker/#download[31/05/2020 02:02:02 a. m.]


Hacker de recursos

Otras acciones:

Sintaxis de línea de comando:

Se puede acceder a casi todas las funciones de Resource Hacker ™ desde la línea de comandos sin
tener que abrir la GUI de Resource Hacker ™.
Las instrucciones de la línea de comandos y los scripts de Resource Hacker ™ pueden eliminar el
trabajo pesado que conlleva repetir las tareas de Resource Hacker ™.
Las instrucciones de la línea de comandos son una combinación de instrucciones de cambio
seguidas de parámetros de cambio como se explica en la siguiente tabla: Instrucciones de línea
de comando:

Cambiar          Parámetro
-abierto nombre de archivo: el nombre del archivo que se va a modificar. Debe ser un
  archivo de Windows PE (* .exe, * .dll, etc.) o un archivo de recursos compilado o
sin compilar (* .res o * .rc)
-salvar generalmente un nombre de archivo para el archivo nuevo o modificado, pero
 
también puede ser una carpeta cuando se extraen múltiples recursos
-recurso   nombre de archivo: contiene un recurso que se agrega al archivo abierto.
-acción acción a realizar en el archivo abierto
add : agrega un recurso, pero falla si ya existe
addoverwrite : agrega un recurso y sobrescribe si ya existe
addkip : agrega un recurso, pero omite si ya existe
  compilar : compila un archivo de script de recursos (* .rc) en un archivo de
recursos binarios (* .res)
eliminar : eliminar un recurso

http://www.angusj.com/resourcehacker/#download[31/05/2020 02:02:02 a. m.]


Hacker de recursos

extraer : extraer un recurso


modificar - modificar un recurso
changelanguage (langID) : cambia el idioma de TODOS los recursos
-máscara máscara de recursos: las
  comas de tipo, nombre e idioma son obligatorias, pero cada tipo, nombre e
idioma son opcionales
-Iniciar El nombre de archivo o CONSOLE o NUL
sesión
  CONSOLE se pueden abreviar a CON
Registra los detalles de la operación realizada
Si se omite este cambio, el registro se escribirá en resourcehacker.log
-guión nombre de archivo: contiene un script de comandos múltiples, NO un script de
 
recursos para obtener más información: -help script
-ayuda opciones: línea de comandos o script (siempre registrado en CONSOLE) se
 
ignoran otros interruptores.

Notas:
Los identificadores de cambio (excepto -script) se pueden abreviar a un solo carácter (por
ejemplo, -res o -r).
Las instrucciones de cambio no tienen que estar en ningún orden en particular.
Los nombres de archivo que contienen espacios deben estar entre comillas dobles.

Ejemplos de archivos por lotes (usando rh.exe en lugar de ResourceHacker.exe en lugares por brevedad)

reshack_help.bat:
ResourceHacker.exe -help
@pause :: para ver la salida de la consola antes de que se cierre la ventana 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 addkip -res my.ico -mask ICONGROUP, MAINICON,

reshack_extract_all_source_icons_to_icons_folder.bat:
rh.exe -open source.exe -save. \ icons -action extract -mask ICONGROUP ,, -log CON
@pausa

reshack_extract_all_dialogs.bat:
rh.exe -open source.exe -save. \ dialogs.rc -action extract -mask DIALOG ,, -log rh.log

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

Secuencias de comandos de Resource Hacker ™: Las secuencias de comandos de

Resource Hacker ™ se ejecutan desde la línea de comandos utilizando la siguiente sintaxis:

ResourceHacker.exe -script ScriptFile

Los scripts de Resource Hacker ™ son archivos de texto con el siguiente formato:

// los comentarios van precedidos de barras dobles


[NOMBRES DE ARCHIVO]
Abierto =
Guardar =
Log =
[COMANDOS]
// uno o más de los siguientes comandos ...
-add SourceFile, ResourceMask
-addskip SourceFile, ResourceMask
-addoverwrite SourceFile, ResourceMask
-addoverwrite SourceFile, ResourceMask
-modificar SourceFile, ResourceMask

http://www.angusj.com/resourcehacker/#download[31/05/2020 02:02:02 a. m.]


Hacker de recursos

-extraer TargetFile o TargetFolder, ResourceMask


-Eliminar ResourceMask
-changelanguage (langID)

Nota: Los nombres de archivo que incluyen espacios deben estar entre comillas dobles.

Ejemplos de script de Resource Hacker ™:

rh_script_myprog_rus.txt -
// Este script elimina todo el idioma neutral (0)
// elementos de recursos de tabla de cadenas, menú y diálogo
// en MyProg.exe antes de reemplazarlos
// con elementos rusos (1049) ...
[NOMBRES DE ARCHIVO]
Exe = MyProg.exe
SaveAs = MyProg_Rus.exe
Log = MyProg_Rus.log
[COMANDOS]
-Eliminar MENÚ ,, 0
-delete DIALOG ,, 0
-Eliminar STRINGTABLE ,, 0
-add MyProg_Rus.res, MENU ,, 1049
-add MyProg_Rus.res, DIALOG ,, 1049
-add MyProg_Rus.res, STRINGTABLE ,, 1049

rh_script_myprog_upd_images.txt -
// Este script actualiza 2 mapas de bits y un
// icono en MyProg.exe ...
[NOMBRES DE ARCHIVO]
Exe = MyProg.exe
SaveAs = MyProg_Updated.exe
[COMANDOS]
-addoverwrite Bitmap128.bmp, BITMAP, 128,
-addoverwrite Bitmap129.bmp, BITMAP, 129,0
-addoverwrite MainIcon.ico, ICONGROUP, MAINICON, 0

rh_script_myprog_upd_all.txt -
// Este script reemplaza todos los recursos
// en MyProg.exe con todos los recursos
// en MyProgNew.res
[NOMBRES DE ARCHIVO]
Exe = MyProg.exe
SaveAs = MyProg_Updated.exe
[COMANDOS]
-delete ,,, // borra todos los recursos antes ...
-add MyProgNew.res ,,, // agregando todos los recursos nuevos

Ejecutables "empaquetados" o "comprimidos":

Algunos archivos ejecutables están "empaquetados" o "comprimidos" utilizando algoritmos de


compresión. Esto no solo reduce el tamaño del archivo, sino que también dificulta la visualización
y la modificación de los recursos. Sospecho que este recurso 'oculto' es (o fue) un objetivo común
en este proceso. De todos modos, en deferencia a estos autores, he elegido no descomprimir
archivos con Resource Hacker. Como nota al margen, parece que los ejecutables "empaquetados"
se han vuelto bastante poco comunes en los últimos 5-10 años, y los autores de software están
exponiendo más información en lugar de menos información en recursos ejecutables. Sospecho
que las preocupaciones anteriores sobre la pérdida de propiedad intelectual con la ingeniería
inversa se han disipado.

Licencia de uso - Términos y condiciones:

Este software Resource Hacker TM se lanza como software gratuito siempre que acepte los
siguientes términos y condiciones:
Este software no se distribuirá a través de ningún dominio del sitio web o cualquier otro medio

http://www.angusj.com/resourcehacker/#download[31/05/2020 02:02:02 a. m.]


Hacker de recursos

sin la aprobación previa por escrito del propietario de los derechos de autor.
Este software no se debe utilizar de ninguna manera para modificar ilegalmente el software.
DESCARGO DE RESPONSABILIDAD: Un usuario de este software Resource Hacker TM reconoce que
está recibiendo este software "tal cual" y que el usuario no depende de la precisión o funcionalidad
del software para ningún propósito. El usuario reconoce además que cualquier uso de este
software será bajo su propio riesgo y el propietario de los derechos de autor no acepta ninguna
responsabilidad derivada del uso o la aplicación del software.

Los términos de licencia anteriores constituyen "información de gestión de derechos de autor" en


el sentido de la Sección 1202 del Título 17 del Código de los Estados Unidos y no deben
modificarse ni eliminarse de las obras con licencia. Su alteración o remoción de las obras con
licencia, y la distribución de las obras con licencia sin todos los términos de licencia anteriores de
una manera inalterada, pueden contravenir la Sección 1202 y dar lugar a consecuencias civiles y /
o penales.

Descargar la versión 5.1.7:

Instalación de EXE (2.9MB) Instalación de

ZIP (3.0MB)

Cambios en 5.1.7:
Corrección de errores: compilación de acelerador roto roto

http://www.angusj.com/resourcehacker/#download[31/05/2020 02:02:02 a. m.]

Potrebbero piacerti anche