Controladores, cambio de nombre de proyectos MFC, habilidades de portabilidad de código, copia de recursos de interfaz en proyectos de otras personas y proyectos de fusión


Controlador, cambio de nombre de proyecto MFC, habilidades de portabilidad de código

A veces podemos actualizar iterativamente el proyecto en una solución (es decir, copiar una carpeta de proyecto, cambiar el nombre después de pegar, modificar el código en el archivo del proyecto para agregar funciones, por lo que debemos modificar el nombre del archivo correspondiente y el archivo en la cadena de nombre de archivo de archivo.

1. Copie un proyecto anterior y modifique los nombres de archivo de los siguientes archivos de extensión en la carpeta del proyecto:
.vcxproj
.vcxproj.filters
.vcxproj.user
.rc
.rc2 en la carpeta res

2. El proyecto del controlador debe modificar el contenido del archivo .vcxproj:

  • Modifique el nombre del proyecto en la etiqueta (algunas versiones diferentes no tienen esta etiqueta, así que no se preocupe);
  • Y modifique el nombre de archivo .c en las siguientes etiquetas en los archivos *.vcxproj, .filters y .vcxproj.filters a su propio nombre de archivo correspondiente:
<ClCompile Include="DriverEntry.c" />

3. Abra los archivos .vcxproj y .vcxproj.filters con notepad++, y reemplace las cadenas de nombres de archivo correspondientes dentro:
por ejemplo, la cadena de nombre de archivo .rc (2 lugares) y la cadena de nombre de archivo .rc2 en el archivo de proyecto .vcxproj (Hay 1 lugar), modifique la cadena de nombre de archivo en la etiqueta <RootNamespace> (proyecto MFC),
por ejemplo, las cadenas de nombre de archivo de .rc y .rc2 en .vcxproj.filters (1 lugar cada uno) (proyecto MFC) .

4. Abra el archivo .rc con notepad++ y modifique la cadena de nombre de archivo .rc2 correspondiente (hay 2 lugares) (proyecto MFC).

5. Si hay un archivo .sln en el nuevo proyecto copiado, puede eliminarlo, simplemente agregue el .vcxproj del nuevo proyecto en la misma solución y, a veces, si no está en la misma solución, debe modificarlo. La cadena de nombre de archivo anterior en el archivo sln es la cadena de nombre de archivo nuevo.

6. Para verificar la corrección de la operación, podemos abrir la vista de recursos en el proyecto MFC, abrir la plantilla de diálogo y hacer doble clic en un botón existente para ver si se puede ingresar la función de procesamiento correspondiente. , el trasplante es exitoso.

7. Además, si hay opciones de compilación innecesarias como ARM y plataforma mixta en el nuevo proyecto, puede hacer clic en el administrador de configuración, hacer clic en el botón del triángulo desplegable a la derecha de la plataforma de solución activa, hacer clic en Editar y eliminar ARM y ARM64 Conserva las opciones x86 y x64.

Copiar recursos de interfaz en proyectos de otras personas

Primero, use un estudio visual para abrir los archivos .rc en proyectos propios y de otras personas de acuerdo con el punto 9 anterior, como se muestra en la siguiente figura:

inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí
Arrástrelo al estilo que se muestra en la figura anterior para facilitar la operación, luego copie los recursos relevantes de la otra parte y péguelos en su propio proyecto:

inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí

De esta manera, los recursos de los proyectos de otras personas pasan a ser tuyos y no necesitas modificar el ID del recurso, lo que es muy conveniente y nos ahorra mucho tiempo.
Por supuesto, si no sabe qué representan los recursos, puede hacer doble clic para abrir el recurso correspondiente, copiar el control en el recurso y luego pegarlo en su propio cuadro de diálogo. El ID del recurso copiado permanece sin cambios.

hay otra manera

Después de abrir nuestro propio proyecto, haga clic en Archivo, Abrir, Archivo en el menú vs para abrir el archivo .rc en los proyectos de otras personas. En este momento, no puede copiar recursos ni arrastrarlos. ¿Qué debe hacer?
Abra el explorador de soluciones de su propio proyecto, haga clic con el botón derecho en el archivo de origen, agregue el elemento existente:

inserte la descripción de la imagen aquí

Agregue los archivos .rc en los proyectos de otras personas, de modo que haya dos archivos de recursos .rc en nuestro proyecto:

inserte la descripción de la imagen aquí

Puede arrastrar o copiar recursos, recuerde eliminar los archivos de recursos de otras personas recién agregados después de arrastrarlos y no guarde las cosas de otras personas.

Entonces es una operación de rutina, pegue los archivos cpp funcionales correspondientes y los archivos .h en los proyectos de otras personas en el directorio de su propio proyecto, haga clic en el elemento en el menú vs, agregue un elemento existente y pegue el .cpp y .h archivos recién pegados en el directorio de su proyecto Agregue el archivo .h, para que haya clases correspondientes en la vista de clases, y luego haga las modificaciones apropiadas y compile, podemos trasplantar fácilmente las funciones en los proyectos de otras personas a nuestro proyecto uno por uno.


Haga doble clic en el archivo *.rc en el proyecto, no hay respuesta después de abrir vs, y el archivo .rc no se puede abrir

Busque los dos archivos rc.exe y rcdll.dll (búsqueda local o búsqueda de Baidu) y cópielos en

C:\Archivos de programa (x86)\Microsoft Visual Studio 14.0\VC\bin

Vuelva a abrir el archivo *.rc Si aún no hay respuesta, haga clic en Archivo, Abrir, Archivo en el menú vs y seleccione el archivo .rc para abrirlo.


Combinar dos proyectos .sln existentes

Abra uno de los proyectos con vs, haga clic con el botón derecho en la solución , agregue, proyecto existente, abra el directorio de archivos de otro proyecto, es posible que no vea el archivo .sln en este momento, como se muestra en la figura a continuación, seleccione la derecha lado del cuadro de edición de nombre de archivo Cuadro combinado de extensión, seleccione Archivo de solución (*.sln):

inserte la descripción de la imagen aquí
Abra el .sln de otro proyecto y se agregarán automáticamente varios proyectos en este proyecto, y la vista de clase y los archivos de recursos también incluirán automáticamente el contenido de otro proyecto.


おすすめ

転載: blog.csdn.net/zhaopeng01zp/article/details/128581971