Share via


Herramientas personalizadas

Las herramientas personalizadas permiten asociar una herramienta a un elemento de un proyecto y ejecutar esa herramienta cada vez que se guarda el archivo. Algunas herramientas personalizadas, a veces denominadas generadores de archivos únicos, se usan con frecuencia para implementar traductores que generan código a partir de datos y viceversa. Por ejemplo, los generadores de archivos únicos crean código fuente de Visual C# y Visual Basic fuera de los archivos .settings y .resx . El código fuente generado proporciona acceso fuertemente tipado a los datos de los archivos .settings y .resx . Los tipos de proyecto de Visual C# y Visual Basic admiten herramientas personalizadas; Los tipos de proyecto de Visual C++ no lo hacen. Sus propios tipos de proyecto también pueden admitir herramientas personalizadas.

Las herramientas personalizadas son componentes registrados que implementan la IVsSingleFileGenerator interfaz.

Las herramientas personalizadas están asociadas a un ProjectItem objeto de interfaz y son como diseñadores y editores. Una herramienta personalizada toma el archivo representado por una ProjectItem como entrada y escribe un nuevo archivo cuyo nombre de archivo proporciona el DefaultExtension método .

En esta sección

Describe cómo usar la IVsSingleFileGenerator interfaz para implementar una herramienta personalizada.

Proporciona descripciones para todas las entradas del Registro para una herramienta personalizada.

Explica cómo los sistemas de proyecto proporcionan compatibilidad para que los diseñadores visuales accedan a clases y tipos generados a través de archivos ejecutables portátiles temporales (PE).

Muestra cómo conservar una propiedad de elemento de proyecto, como el autor de un archivo de origen, en el archivo de proyecto.

Referencia

IVsSingleFileGenerator Proporciona detalles sobre , IVsSingleFileGeneratorque transforma un único archivo de entrada en un único archivo de salida que se puede compilar o agregar a un proyecto.

ProjectItem Explica la ProjectItem interfaz , que representa un elemento de un proyecto.

DefaultExtension Proporciona detalles sobre el DefaultExtension método , que recupera la extensión de nombre de archivo que se proporciona al nombre de archivo de salida.

Describe cómo usar proyectos y soluciones de Visual Studio para organizar archivos de código y archivos de recursos y cómo implementar el control de código fuente.