Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Ha creado una aplicación de WPF, WinForms o WinUI 3, ahora debe ponerla en manos de los usuarios. En esta guía se explica la ruta de acceso completa desde una compilación finalizada a una aplicación publicada, que abarca los dos escenarios de distribución más comunes: publicar en la distribución Microsoft Store (recomendado) y configurar direct download.
Sugerencia
El Microsoft Store es la ruta recomendada para la mayoría de los desarrolladores. Controla la firma de código, la entrega de actualizaciones y la detección, y es la manera más sencilla de llegar a los usuarios de Windows. La descarga directa es la elección adecuada cuando tienes requisitos específicos comerciales, empresariales o de distribución que la tienda no cubre.
Paso 1: Elegir la ruta de distribución
La ruta de distribución determina los costos de firma de código, la mecánica de actualización, cómo los usuarios detectan la aplicación y cómo las empresas pueden implementarla.
→ Choose una ruta de distribución para la aplicación de Windows tiene una comparación completa. En resumen:
- Microsoft Store: recomendado para la mayoría de las aplicaciones. Firma gratuita, actualizaciones integradas, amplia detectabilidad y experiencia de instalación de confianza. Requiere una cuenta gratuita de desarrollador: regístrese en storedeveloper.microsoft.com.
- Descarga directa : adecuado para ISV comerciales con su propio escaparate, aplicaciones de línea de negocio empresarial o aplicaciones con contenido que la Tienda no permite. Usted es responsable de firmar, hospedar y actualizar.
La mayoría de las nuevas aplicaciones independientes son una buena opción para la Tienda. Si no está seguro, comience allí.
Paso 2: Configuración de la firma de código
Si va a publicar un paquete MSIX en el Microsoft Store: omita este paso. Microsoft vuelve a firmar su paquete automáticamente como parte del proceso de certificación.
Si va a enviar un instalador MSI/EXE de Win32 al Microsoft Store: todavía tiene que firmar el instalador antes del envío. El instalador y sus archivos PE deben estar firmados con una cadena de certificados a una CA en el Programa de raíz de confianza de Microsoft. Los certificados autofirmados no son aceptables. Consulte Requisitos del paquete de aplicaciones para MSI/EXE.
Si va a distribuir directamente: necesita un certificado de firma de código de confianza. Las aplicaciones sin firmar y las aplicaciones autofirmadas desencadenan fuertes advertencias de SmartScreen, y algunos entornos empresariales las bloquearán por completo.
Opciones de firma de código para los desarrolladores de aplicaciones de Windows ofrece una comparación completa. Guía rápida:
- Organizaciones en EE.UU., Canadá, UE o Reino Unido / Personas en EE.UU. o Canadá:Azure Artifact Signing (anteriormente Trusted Signing) — aproximadamente 9,99 $/mes, no se requiere ningún token de hardware, se integra con canalizaciones de CI/CD. Esta es la opción recomendada de Microsoft para la distribución no procedente de la Tienda.
- Desarrolladores individuales fuera de los Estados Unidos o Canadá, o cualquier persona que no sea elegible para Azure para la firma de artefactos: Un certificado OV por una Autoridad Certificadora como DigiCert o Sectigo, normalmente 150-300 $/año.
Nota:
La firma de la aplicación es imprescindible para una buena experiencia al iniciar por primera vez. Una nueva aplicación firmada seguirá mostrando una advertencia de SmartScreen hasta que genere reputación, pero la advertencia es mucho menos grave que para las aplicaciones sin firmar. Consulte Reputación de SmartScreen para desarrolladores para comprender lo que verán sus primeros usuarios.
Paso 3: Empaquetar la aplicación
La forma de empaquetar tu app depende del framework que hayas usado.
WinUI 3
Las aplicaciones WinUI 3 creadas con las plantillas de proyecto de SDK de Aplicaciones para Windows ya se empaquetan como MSIX de forma predeterminada. Al compilar la solución en Visual Studio, el resultado es un .msix o .msixbundle archivo listo para distribución directa o envío a la tienda.
Si quieres distribuir una aplicación WinUI 3 sin empaquetar (sin empaquetado MSIX), consulta Distribuir una aplicación WinUI 3 sin empaquetar. Tenga en cuenta que las aplicaciones WinUI 3 no empaquetadas no pueden generar un solo archivo ejecutable (EXE) y requieren el entorno de ejecución de SDK de Aplicaciones para Windows en el equipo del usuario (ya sea instalado por separado a través del instalador del entorno de ejecución o incluidos mediante despliegue autocontenido).
WPF y WinForms
WPF y los proyectos de WinForms no generan MSIX de forma predeterminada. Dispone de varias opciones:
Opción A: Proyecto de empaquetado de aplicaciones de Windows (MSIX)
Agrega un proyecto de empaquetado de aplicaciones de Windows a tu solución en Visual Studio. Esto encapsula tu aplicación en un paquete MSIX, proporcionándote identidad de paquete, elegibilidad para la Tienda y actualizaciones basadas en App Installer. Este es el enfoque recomendado para el envío a la Tienda.
Empaqueta tu aplicación de escritorio mediante un solo proyecto MSIX
Opción B: dotnet publish (EXE independiente)
Para la distribución de descarga directa, dotnet publish con --self-contained genera un EXE independiente que incluye el entorno de ejecución de .NET, los usuarios no necesitan instalar .NET por separado.
dotnet publish -c Release -r win-x64 --self-contained true
Esto genera una carpeta de archivos adecuada para comprimir y distribuir, o encapsular en un instalador. No es elegible para la tienda de forma directa.
Opción C: Publicación dependiente del marco
Omita --self-contained si es cómodo requerir que los usuarios tengan instalado el entorno de ejecución de .NET correcto. La salida es más pequeña, pero tiene una dependencia en tiempo de ejecución.
Paso 4a: Enviar al Microsoft Store (ruta de acceso recomendada)
El proceso de envío de la Tienda se ejecuta a través del Centro de partners.
Pasos de un vistazo:
- Crear una cuenta de desarrollador : gratis. Regístrese en storedeveloper.microsoft.com. La cuenta es permanente.
- Reservar el nombre de la aplicación : reclama el nombre de la aplicación en el Centro de partners antes del envío. El nombre se reserva para ti durante el desarrollo.
- Compilar y empaquetar la aplicación : cree un paquete MSIX que cumpla los requisitos de la Tienda. En el caso de los envíos a la Tienda, los paquetes MSIX/AppX no necesitan una firma confiable de una CA — Microsoft vuelve a firmar el paquete con un certificado de Microsoft después de la certificación. Si distribuyes fuera de la Tienda con un instalador MSI o EXE, se recomienda y se espera la firma Authenticode según las características de seguridad de Windows.
- Crear el envío : cargue el paquete, proporcione los detalles de la descripción de la tienda (descripción, capturas de pantalla, categorías, clasificación por edades) y establezca los precios.
- Certification: Microsoft revisa la aplicación para el cumplimiento de directivas. Normalmente, la certificación tarda unos días laborables en nuevas aplicaciones.
- Publicar : una vez certificada, la aplicación aparece en la Tienda y está disponible para los usuarios.
Crear la publicación de tu aplicación
Requisitos del paquete de la aplicación
Paso 4b: Distribuir directamente (ruta de acceso alternativa)
Si distribuyes tu aplicación fuera de la Tienda, tienes varias opciones de empaquetado y hospedaje.
MSIX con el Instalador de aplicaciones (.appinstaller)
Los paquetes MSIX distribuidos con un archivo complementario .appinstaller admiten comprobaciones de actualización automática. Cuando los usuarios instalan la aplicación desde el archivo .appinstaller, Windows comprueba periódicamente la URL que usted especifica para ver si hay una versión más reciente y ofrece actualizarla.
Importante
El ms-appinstaller protocolo URI (que permite la instalación directamente desde un vínculo web) está deshabilitado de forma predeterminada desde diciembre de 2023 debido a problemas de seguridad. Los usuarios deben descargar el .appinstaller archivo o .msix y abrirlo manualmente.
→ estado actual de las características de distribución
ClickOnce (WPF y WinForms)
ClickOnce es una tecnología de implementación de .NET integrada en Visual Studio que admite actualizaciones automáticas para aplicaciones de WPF y WinForms. Los usuarios se instalan desde un manifiesto hospedado y ClickOnce controla las comprobaciones de actualización de forma transparente.
ClickOnce no es compatible con las aplicaciones winUI 3 : use MSIX con .appinstaller en su lugar.
→ seguridad e implementación de ClickOnce
Instalador EXE
Un instalador EXE tradicional creado con una herramienta como WiX Toolset o Inno Setup es familiar para los usuarios y es sencillo de producir. Estas son herramientas de comunidad bien establecidas que usan muchas aplicaciones Windows. Tenga en cuenta que los instaladores exe requieren que implemente su propio mecanismo de actualización.
Alojamiento de la descarga
Opciones comunes de hospedaje para descarga directa:
- GitHub Releases : gratis, versionado e integra bien con canalizaciones de compilación automatizadas. Adecuado para aplicaciones comerciales pequeñas y de código abierto.
- Su propio sitio web : control total sobre la página de descarga, el análisis y el flujo de pago. Necesitará almacenamiento confiable y capacidad de red CDN si la aplicación crece.
- Tiendas de terceros: algunos desarrolladores distribuyen a través de plataformas de distribución, como itch.io para aplicaciones relacionadas con juegos.
winget para detectar
Enviar la aplicación al repositorio de Windows Administrador de paquetes community hace que la aplicación se pueda instalar a través de winget install. Esto es especialmente valorado por audiencias de desarrolladores y usuarios avanzados que prefieren herramientas de línea de comandos. El envío constituye una solicitud de incorporación de cambios en el repositorio de manifiestos de la comunidad y es gratuito.
Paso 5: Configurar la actualización automática
Mantener a los usuarios en la versión más reciente reduce la carga de soporte técnico y garantiza que las correcciones de seguridad lleguen a ellos rápidamente.
| Ruta de distribución | Mecanismo de actualización |
|---|---|
| Microsoft Store (MSIX) | Automático: la Tienda entrega actualizaciones en segundo plano |
| Microsoft Store (instalador MSI/EXE) | Manual: la aplicación o el instalador controlan las actualizaciones; Store no inserta actualizaciones en los usuarios existentes |
MSIX + .appinstaller |
Integrado: Windows comprueba la dirección URL que especifique según una programación. |
| ClickOnce | Integrado: comprueba si hay actualizaciones al inicio |
| Instalador exe o EXE independiente | Implementación manual necesaria |
En el caso de implementaciones EXE o autocontenidas sin un mecanismo de actualización integrado, Velopack es una herramienta de la comunidad que agrega funcionalidades de actualización automática e instalador para aplicaciones .NET. No es un producto de Microsoft — evalúelo en función de sus propios requisitos.
Paso 6: Controlar SmartScreen para nuevas aplicaciones
Cada nueva aplicación, independientemente de lo bien que esté firmada, desencadenará una advertencia de SmartScreen en la primera descarga hasta que acumula suficiente historial de descargas. Esto es lo esperado y normal. A continuación se muestra cómo controlarlo bien:
- Firme digitalmente cada versión. Las aplicaciones sin firmar muestran un bloqueo más severo de "Windows ha protegido tu PC". Las aplicaciones firmadas muestran una advertencia de "aplicación no reconocida" más suave que los usuarios pueden omitir más fácilmente.
- Establezca expectativas con los usuarios tempranos. Indique a los evaluadores beta y a los usuarios pioneros qué esperar. Una breve nota en el anuncio de lanzamiento ("Es posible que vea un mensaje de SmartScreen en la primera ejecución— esto es normal para las nuevas aplicaciones; Haga clic en 'Más información' y luego 'Ejecutar de todos modos'") impide la confusión y las instalaciones abandonadas.
- Sé paciente. La reputación se crea orgánicamente con el volumen de descarga. No hay un proceso de envío manual para acelerarlo en los terminales de consumidor.
La reputación de SmartScreen para desarrolladores explica el modelo de reputación completo, lo que los usuarios ven en cada etapa y las consideraciones de políticas empresariales.
¿Y ahora qué?
Una vez publicada la aplicación, puedes hacer lo siguiente:
- Monitorizar la salud y las valoraciones de la aplicación: el Centro de socios proporciona análisis de fallos, valoraciones de usuarios y gestión de reseñas para las aplicaciones de la Tienda
- Administrar versiones con implementaciones escalonadas: La Tienda admite la implementación de una nueva versión en un porcentaje de usuarios antes de una versión completa.
- Set up telemetry: considere la posibilidad de integrar un servicio de análisis de bloqueos y uso, como Aplicación de Azure Insights u otro SDK de análisis para comprender cómo se usa la aplicación.
- Responder a los comentarios de los usuarios — el Centro de socios muestra las reseñas de la Tienda; para aplicaciones de descarga directa, considere un canal de comentarios (GitHub Issues, una dirección de correo electrónico dedicada o un foro de la comunidad).
Contenido relacionado
- Sear una ruta de distribución para la aplicación de Windows
- Opciones de firma de código para desarrolladores de aplicaciones de Windows
- Reputación de SmartScreen para desarrolladores
- Estado actual de las características de distribución
- Creación del envío de la aplicación
- Firma de Artefactos de Azure (anteriormente Firma de Confianza)
- Windows Administrador de paquetes (winget)