2009-03-30 15 views
5

Estoy tratando de crear una plantilla de proyecto en Visual Studio. Mi solución básica contiene dos proyectos y una carpeta de soluciones de 'elementos de solución' que contiene (entre otras cosas) librerías (.dlls) que los dos proyectos necesitan como referencias.¿Cómo puedo agregar archivos de carpetas de soluciones a una plantilla de proyecto VS?

Mi plantilla de proyecto crea los dos proyectos, la carpeta 'Elementos de solución' y otra carpeta dentro de 'Elementos de solución' (como desee). Sin embargo, no agrega los .dlls y otros archivos que se supone que completan 'Elementos de solución'.

En el archivo .vstemplate, agrego referencias a los .dlls como elementos 'ProjectItem' directamente debajo del nodo 'TemplateContent', y se ignoran.

Si trato de agregar un nodo 'Proyecto' (como si mi carpeta Elementos de solución fuera un Proyecto), recibo todo tipo de errores.

¿Debo crear un proyecto ficticio para guardar estos archivos?

Respuesta

-1

Nunca he creado una plantilla, así que solo puedo adivinar lo que estás haciendo. En nuestros archivos .sln, nuestros artículos de solución aspecto:

Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "_Build", "_Build", "{45E29CA9-E213-4C73-AA54-AE9B87F79F2D}" 
    ProjectSection(SolutionItems) = preProject 
     _Build\Project.proj = _Build\Project.proj 
    EndProjectSection 
EndProject 

Dónde _Build es el SolutionFolder, que hacemos un mapa en una carpeta física también llamado "_ Build". En este caso, contiene un archivo, el archivo Project.proj, que por supuesto está mapeado a la versión de la carpeta física.

Espero que sea remotamente útil ..?

+0

Esto no era directamente aplicable, pero sí me empujó en la dirección en la que finalmente fui (ver más abajo) - ¡gracias! –

4

Parece que necesito incluir los archivos varios (término de Microsoft) en un proyecto para que el generador del proyecto los encuentre. Los puse en una carpeta y los incluí en una de mis plantillas de proyecto.

Implementé un IWizard que también incluí en la plantilla de la solución que, después de que se había creado el proyecto, movería los archivos donde los quería y modificaría el archivo .csproj para que no se los perdiera.

Todo funciona bien, pero se siente como el más burdo de los hacks ...! ¿Hay alguien de MS por ahí?

+2

¿Puedes publicar un ejemplo de lo que hiciste? – Clueless

+0

Sí, esto parece un poco feo. ¿Has encontrado una mejor manera? ty – David

Cuestiones relacionadas