Errores de Windres en el archivo .rc

Cuando trato de usar windres (incluido con MinGW) para compilar mi archivo .rc usando el tutorial aquí, me da el siguiente error (puse "windres my.rc -O coff -o my.res" en la línea de comando):

cpp: Too many arguments
windres: my.rc:1: syntax error

my.rc es el siguiente:

1 ICON "C:\Users\Owner\Desktop\LonelyPlanet\LonelyPlanetIcon.ico"
2 VERSIONINFO
FILEVERSION     1,0,0,0
PRODUCTVERSION  1,0,0,0
BEGIN
  BLOCK "StringFileInfo"
  BEGIN
    BLOCK "040904E4"
    BEGIN
      VALUE "CompanyName", "Neil Flodin"
      VALUE "FileDescription", "A game I made at iD tech camp!"
      VALUE "FileVersion", "1.0"
      VALUE "InternalName", "Lonely_Planet"
      VALUE "LegalCopyright", "Copyright(c) Neil Flodin All Rights Reserved"
      VALUE "OriginalFilename", "Lonely Planet.exe"
      VALUE "ProductName", "Lonely Planet"
      VALUE "ProductVersion", "1.0"
    END
  END

  BLOCK "VarFileInfo"
  BEGIN
    VALUE "Translation", 0x409, 1252
  END
END

¿Hay algo extraño que esté haciendo con mi entrada de línea de comando/archivo rc? De ser así, ¿cómo puedo hacer que windres lo compile?

-Neil

preguntado el 02 de julio de 12 a las 00:07

¿Podría intentar cambiar el nombre de la ruta para usar barras diagonales? / en lugar de barras invertidas `\`? -

Todavía me da el mismo error por alguna razón ... -

Creo que el problema es con el nombre largo de la ruta, intente mover el ícono directamente debajo de la unidad C y haga la ruta C:/LonelyPlanetIcon.ico, (¡siempre barras diagonales!) o coloque el archivo junto con el archivo .res y simplemente escriba "LonelyPlanetIcon.ico", debería funcionar. -

Sigue siendo el mismo error... :( Sin embargo, no tengo idea de por qué. Incluso abandoné la línea ICON y obtiene el mismo error:

Última suposición, prueba windres my.rc -o my.res sin especificar el formato del archivo (probé su archivo aquí y lo compilé con éxito). -

2 Respuestas

#include <winresrc.h>
IDR_MAINFRAME           ICON                    "main.ico"
VERSIONINFO
...
END

añadir recurso.h

#define IDR_MAINFRAME                   128

Respondido el 13 de Septiembre de 16 a las 14:09

He proporcionado una posible solución a un problema similar (Error de sintaxis de Windres) publicado hace 4 años a partir de hoy.

Espero que pueda ayudar. El punto es que puedes intentar compilar el .rc archivo de la misma manera, pero usando Cygwin, y obteniendo un .o presentar en su lugar un .res uno, que puede utilizar en el proceso de vinculación.

Respondido 16 Abr '16, 15:04

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.