2008-09-18 15 views
9

Estoy programando en C++ en Visual Studio 2005. Mi pregunta es sobre archivos .rc. Puede colocar manualmente directivas include como (#include "blah.h"), en la parte superior de un archivo .rc. Pero esas son malas noticias, ya que la primera vez que alguien abre el archivo .rc en el editor de recursos, se sobrescribe. Sé que hay un lugar para hacer estas definiciones para que no sean destruidas, pero no puedo encontrarlas y Google no me ayudó. ¿Nadie sabe?Visual Studio 2005. Archivo RC incluye

Respuesta

6

Haz tu # include al archivo de la forma habitual, sino también añadir a una de las tres secciones "TEXTINCLUDE" en el archivo, así:

2 TEXTINCLUDE 
BEGIN 
    "#include ""windows.h""\r\n" 
    "#include ""blah.h\r\n" 
    "\0" 
END 

señalar los siguientes detalles:

  • Cada línea está contenida en las cotizaciones
  • Usa los pares de presupuestos, por ej. "" para colocar una línea carácter de comillas
  • final de cada línea con \ r \ n
  • Terminar el bloque TEXTINCLUDE con "\ 0"

declaraciones colocados en el "bloque 1 TEXTINCLUDE" será escrito al comienzo del archivo .rc cuando el editor de recursos vuelve a escribir el archivo. Siguen las declaraciones ubicadas en los bloques 2 y 3, por lo que puede garantizar el orden relativo de inclusión de archivos utilizando el bloque apropiadamente numerado.

Si su archivo rc existente aún no incluye bloques TEXTINCLUDE, use el nuevo asistente de archivos del panel Explorador de soluciones para agregar un nuevo archivo rc y luego utilícelo como plantilla.

+0

Este enfoque bajo el capó también está funcionando para mí. Necesito editar el archivo .rc directamente así para mi idioma asiático .rc. VS se bloquea cuando trato de usar el IDE para agregar un recurso include. –

0

No estoy del todo seguro de por qué está tratando de hacerlo, pero la modificación manual de los archivos de recursos probablemente no sea una buena idea.

Creo que la práctica general para VC++ para valores accesibles a nivel mundial es definirlos en stdafx.h (al menos así es como lo he visto hacerlo), o crear algo así como un archivo de encabezado "globals.h" y incluye eso donde lo necesites. Sin embargo, realmente depende de lo que estés tratando de lograr.

3

En Visual Studio IDE, haga clic con el botón derecho en el archivo .rc (en el panel Vista de recursos) y seleccione "El recurso incluye" en el menú contextual. Cuando se abre el cuadro de diálogo, use su área "Directivas de tiempo de compilación" para ingresar lo que desee incluir en el archivo .rc. Por ejemplo, si desea que su 64 bits y de 32 bits se basa el uso de diferentes iconos, podría incluir el archivo de recursos apropiados para cada construir de la siguiente manera:

#ifdef WIN64 
#include "Icons64.rc" 
#else 
#include "Icons32.rc" 
#endif 

Vale la pena señalar que estas define no están escritas en el compilador de recursos de forma predeterminada, por lo que para su compilación de 64 bits, asegúrese de agregar/DWIN64 a la compilación de rc.

Cuestiones relacionadas