Empezar a desarrollar extensiones en Visual Studio
Si nunca ha escrito una extensión de Visual Studio antes, probablemente tenga algunas preguntas. Aquí hemos enumerado algunos de los más comunes. Si no ve la información que busca, use el botón de comentarios situado en la esquina superior derecha de esta página para solicitar lo que desea.
Nota
Este artículo se aplica a Visual Studio en Windows. Para Visual Studio Code, consulte API de extensión de Visual Studio Code.
¿Qué software necesito para desarrollar extensiones de Visual Studio?
Debe instalar el SDK de Visual Studio además de Visual Studio para desarrollar extensiones de Visual Studio. Puede instalar el SDK de Visual Studio como parte de la configuración normal o puede instalarlo más adelante. Para obtener más información sobre cómo instalar el SDK de Visual Studio, consulte Instalación del SDK de Visual Studio.
¿Qué tipos de cosas puedo hacer con las extensiones de Visual Studio?
El cielo es el límite cuando se trata de imaginar diferentes extensiones de Visual Studio. Por supuesto, la mayoría de las extensiones tienen algo que ver con la escritura de código, pero eso no tiene que ser el caso. Estos son algunos ejemplos de los tipos de extensiones que puede compilar:
Soporte para lenguajes de programación que no se incluyen en Visual Studio, con coloración de sintaxis, IntelliSense y soporte para compilación y depuración.
Herramientas de productividad que amplían la experiencia básica del IDE con más plantillas, refactorización de código, cuadros de diálogo nuevos o ventanas de herramientas.
Diseñadores específicos del dominio para escenarios como el diseño de datos o la compatibilidad con la nube.
Para obtener ejemplos de extensiones, consulte el Visual Studio Marketplace . Muchas extensiones son de código abierto y Marketplace incluye vínculos a su repositorio de GitHub.
¿Qué características de Visual Studio puedo ampliar?
En teoría, puede ampliar casi cualquier parte de Visual Studio: menús, barras de herramientas, comandos, ventanas, soluciones, proyectos, editores, etc.
En la práctica, hemos encontrado que las características que la mayoría de las personas quieren ampliar son comandos, menús y barras de herramientas, ventanas, IntelliSense y proyectos. Estos son vínculos a las secciones pertinentes:
Extender menús y comandos: agregue sus propios elementos a los menús y barras de herramientas de Visual Studio. Puede usarlos para iniciar una nueva funcionalidad de Visual Studio o sus propias aplicaciones auxiliares externas. También puede proporcionar accesos directos personalizados para los elementos de menú.
ampliar y personalizar las ventanas de herramientas: ampliar las ventanas de herramientas existentes o crear sus propias ventanas de herramientas. Por ejemplo, podría agregar nuevas propiedades a la Propiedades, o bien podría crear una nueva ventana de herramientas para agregar más características.
Editor y Extensiones de Servicio de Lenguaje: agregue sus propias personalizaciones a IntelliSense proporcionado para los lenguajes de Visual Studio o cree soporte para nuevos lenguajes de programación. Puede crear nuevas finalizaciones de instrucciones, sugerencias e información sobre herramientas de QuickInfo. Con bombillas, puede agregar sugerencias de refactorización y correcciones de código para admitir nuevos lenguajes de programación.
¿Qué plantillas de proyecto proporciona VSSDK?
Los dos tipos principales de extensiones son VSPackages y extensiones MEF. En general, las extensiones VSPackage se usan para extensiones que usan o extienden comandos, ventanas de herramientas y proyectos. Las extensiones MEF se usan para ampliar o personalizar el editor de Visual Studio.
Para las extensiones de Visual C# y Visual Basic, VSSDK proporciona una plantilla de proyecto VSIX vacía que puede usar junto con las nuevas plantillas de elemento que crean comandos de menú, ventanas de herramientas y extensiones de editor. También puede usar esta plantilla para empaquetar plantillas de proyecto, fragmentos de código y otros artefactos para la distribución a otros usuarios.
Para C++, el asistente de VSPackage proporciona el código para agregar comandos de menú, ventanas de herramientas y editores personalizados.
En los artículos siguientes se muestra cómo empezar a trabajar con cada tipo de extensión:
Comandos de menú: Crear una extensión con un comando de menú
Ventanas de herramientas: Crear una extensión con una ventana de herramientas
Extensiones del editor: Crear una extensión con una plantilla de elemento de editor
VSPackages básicos: Crear una extensión con un VSPackage
Plantilla de proyecto VSIX: Introducción a la plantilla de proyecto VSIX
¿Cómo obtengo mi extensión para que se parezca a Visual Studio?
Obtenga excelentes sugerencias para diseñar la interfaz de usuario de su extensión en Guías de Experiencia de Usuario de Visual Studio.
¿Dónde puedo encontrar ejemplos de código VSSDK?
Cada uno de los vínculos enumerados en la sección anterior tiene tutoriales paso a paso que muestran cómo implementar características específicas. También puede encontrar ejemplos de VSSDK de código abierto en GitHub en Ejemplos de Visual Studio.
¿Cómo puedo distribuir mi extensión?
Puedes instalar la extensión en otro equipo o enviarla a tus amigos como un archivo .vsix, que instalas haciendo doble clic en él. Puede obtener más información sobre los paquetes VSIX en Distribución de extensiones de Visual Studio.
También puede publicar la extensión en Visual Studio Marketplace, lo que hace que sea visible para un gran número de clientes de Visual Studio. Para obtener un ejemplo de empaquetado de una extensión en Marketplace, consulte Tutorial: Publicación de una extensión de Visual Studio. Para obtener más información sobre lo que necesita hacer para publicar en Marketplace, consulte Productos y extensiones para Visual Studio.