Kies een distributiepad voor uw Windows-app

Hoe u uw Windows-app distribueert, is van invloed op de kosten voor ondertekening van programmacode, updatemechanica, beheerbaarheid van ondernemingen en hoe eenvoudig klanten deze kunnen detecteren en installeren. In dit artikel worden de belangrijkste paden vergeleken om u te helpen de juiste keuze te maken.

Aanbeveling

Voor de meeste ontwikkelaars is het Microsoft Store het aanbevolen pad. Het biedt een brede vindbaarheid, een vertrouwde installatieervaring en geen infrastructuur om te beheren voor MSIX-inzendingen, waarbij Microsoft het pakket opnieuw ondertekent en host. Win32 MSI/EXE-installatieprogramma-inzendingen worden ook geaccepteerd, de uitgever moet een URL voor het HTTPS-installatieprogramma met versiebeheer hosten. Zie msi-/EXE-app-inzending. MSIX-inzendingen krijgen gratis ondertekening van code en ingebouwde updatelevering.

Opmerking

Als uw app is gebouwd op webtechnologieën (HTML, JavaScript, CSS), een Progressive Web App (PWA) is het snelste pad naar de Microsoft Store, geen systeemeigen verpakkingshulpprogramma's vereist.

Distributiepaden in één oogopslag

Path Ideaal voor Kosten voor ondertekening van code Automatisch bijwerken Enterprise MDM Gedistribueerd via Store
Microsoft Store (MSIX) Consumenten- en zakelijke apps, breed bereik ✅ Gratis (Store ondertekent uw pakket opnieuw) ✅ Ingebouwde ✅ Via Intune met Bedrijfsportal ✅ Ja
Microsoft Store (MSI/EXE installer) Bestaande Win32-apps met eigen installatieprogramma 💲 Publisher moet het installatieprogramma en alle PE-bestanden met een certificaatkoppeling naar het Microsoft Vertrouwd basisprogramma ondertekenen ❌ Handmatig (app of installatieprogramma voert updates uit) ✅ Via Intune met Bedrijfsportal ✅ Ja
PWA (Progressive Web App) Web-apps en webervaringen ✅ Gratis (Store-borden voor u) ✅ Via Store of browser ✅ Via Intune met Bedrijfsportal ✅ Ja
MSIX-sideload (enterprise) Interne LOB-apps met behulp van Intune/ConfigMgr 💲 Azure Artifact Signing (voorheen Vertrouwde ondertekening) (~$10/mo) of zelfondertekend + Intune-certificaatprofiel ✅ Via app-installatiebestand of MDM ✅ Native ❌ Nee
MSIX direct downloaden (ISV) Commerciële apps die zijn verkocht vanaf uw eigen site 💲 ca-vertrouwd certificaat vereist (Azure Artifact Signing (voorheen Vertrouwde ondertekening) aanbevolen) ✅ Via .appinstaller bestand ⚠️ Beperkt ❌ Nee
Verpakking met externe locatie Bestaande apps met een eigen installatieprogramma die Windows functies nodig hebben 💲 Hetzelfde als direct downloaden van MSIX ✅ Uw bestaande mechanisme ⚠️ Beperkt ⚠(*) Via MSI/EXE Store inzending (ondertekening van uitgever vereist)
Uitgepakte WinUI 3 Niche: enterprise zonder MSIX-functionaliteit of zeer eenvoudige installatie 💲 Certificaat aanbevolen voor SmartScreen ❌ Alleen handmatig ⚠(*) Beperkt (via Intune/ConfigMgr Win32-implementatie) ⚠(*) Via MSI/EXE Store inzending (ondertekening van uitgever vereist)

Publiceren naar de Microsoft Store is de meest complete distributieoplossing voor Windows apps. Er zijn twee indieningspaden beschikbaar:

  • MSIX-inzending : aanbevolen voor nieuwe apps en WinUI 3-apps. Microsoft het pakket opnieuw ondertekent; er is geen certificaataankoop nodig. Bevat door de Store beheerde updates, gefaseerde implementaties en differentiële downloads.
  • MSI/EXE-installatieprogramma indienen : voor bestaande Win32-apps met hun eigen installatieprogramma. Publisher verzendt een HTTPS-URL met versiebeheer naar het installatieprogramma dat wordt gehost op het eigen CDN van de publisher; de Store downloadt en voert het installatieprogramma uit vanaf die URL als onderdeel van de Store-installatiestroom. Publisher moet het installatieprogramma ondertekenen met een certificaat dat is gekoppeld aan een CA binnen het Microsoft Trusted Root Program. Updates zijn de verantwoordelijkheid van de app.

Wat u krijgt (beide paden):

  • Detectie via de zoek- en gecureerde verzamelingen van de Store
  • Vertrouwde installatiegebruikerservaring
  • Omzetverwerking, restituties en analyses inbegrepen
  • Bedrijfsimplementatie via Intune met Bedrijfsportal

Vereisten:

  • MSIX is de aanbevolen pakketindeling: WinUI 3-apps zijn standaard verpakt. Win32-apps met een bestaand MSI- of EXE-installatieprogramma kunnen ook verzenden via het MSI/EXE-installatiepad (opmerking: MSI/EXE-inzendingen vereisen een certificaatketen naar een CA in het Microsoft Vertrouwd basisprogramma — zelfondertekend wordt niet geaccepteerd; Door de store beheerde updates zijn niet beschikbaar voor dit pad)
  • App moet voldoen aan de certificeringsvereisten van de Store: MSIX-vereisten | MSI/EXE
  • Ontwikkelaarsaccount vereist (Partnercentrum)

Wanneer moet u dit kiezen:

  • Uw app is gericht op consumenten of zakelijke gebruikers
  • U wilt de eenvoudigste distributie-infrastructuur
  • Je bouwt een nieuwe WinUI 3-app (de app is al verpakt, dus gewoon indienen)

Publiceren naar de Microsoft Store

Progressive Web App (PWA)

Als uw app een website is of voornamelijk is gebouwd op webtechnologieën, is een Progressive Web App de snelste weg naar de Microsoft Store, zonder dat u systeemeigen verpakkingshulpprogramma's of codeondertekeningen moet aanschaffen.

Een PWA is een web-app die browsers kunnen installeren als een zelfstandige app. Het kan offline worden uitgevoerd, pushmeldingen verzenden, worden weergegeven in het menu Start en de taakbalk en worden gedistribueerd via de Microsoft Store. Gebruik PWABuilder om uw site binnen enkele minuten te verpakken voor store-inzending.

Wat u krijgt:

  • Distributie via de Store met gratis code ondertekening (Store ondertekent het pakket)
  • Werkt op elk apparaat met een moderne browser
  • Er zijn geen handmatige MSIX-, WiX- of installatieprogramma's vereist: hulpprogramma's zoals PWABuilder genereren het Store-inzendingspakket voor u
  • Ingebouwde levering van updates: gebruikers krijgen altijd uw nieuwste webinhoud (gehoste inhoudsupdates zonder een nieuwe verzending van de Store)

Vereisten:

Limitations:

  • Deep native Windows API's (bestandssysteemtoegang, hardwareintegratie buiten web-API's) zijn niet beschikbaar zonder extra overbrugging
  • App-logica wordt uitgevoerd in een webcontext, niet geschikt voor apps waarvoor systeemeigen .NET, C++- of WinRT-API's zijn vereist

Wanneer moet u dit kiezen:

  • Uw app is een web-app, SaaS-hulpprogramma of inhoudssite die u installeerbaar wilt maken
  • U wilt het snelste pad naar de Store met minimale hulpmiddelen
  • Aan uw functievereisten wordt voldaan door moderne web-API's

Overzicht van Progressive Web Apps
Een PWA publiceren naar de Microsoft Store met PWABuilder

MSIX-sideloading — LOB-toepassing distributie in een zakelijke omgeving

Voor interne bedrijfstoepassingen die worden geïmplementeerd op beheerde apparaten via Microsoft Intune of Configuration Manager, is MSIX sideloading de aanbevolen methode.

Wat u krijgt:

  • Stille installatie en update via MDM-beleidsregels
  • Integratie met enterprise-apparaatbeheer (Intune, ConfigMgr)
  • Volledige pakketidentiteit en toegang tot Windows functies (meldingen, achtergrondtaken, enzovoort)

Ondertekening van code:

Vereisten:

  • Doelapparaten moeten het handtekeningcertificaat vertrouwen (via MDM of groepsbeleid)
  • Sideloaden moet zijn toegestaan op doelapparaten (standaard ingeschakeld op Windows 10 versie 2004+ en alle Windows 11 apparaten)

Wanneer moet u dit kiezen:

  • Een interne app distribueren naar apparaten die door het bedrijf worden beheerd
  • U hebt een IT-team dat certificaatvertrouwen kan configureren via Intune of Groepsbeleid

→ MSIX-apps implementeren met Intune
Deploy MSIX-apps met Configuration Manager

MSIX direct downloaden — ISV en commerciële apps

Voor commerciële apps die rechtstreeks vanaf uw website worden verkocht (niet via de Store), kunt u MSIX-pakketten distribueren met een .appinstaller bestand voor ondersteuning voor automatisch bijwerken.

Wat u krijgt:

  • Vertrouwde installatie-ervaring via app-installatieprogramma
  • Ondersteuning voor automatisch bijwerken via .appinstaller bestand (gehost op uw server)
  • Volledige pakketidentiteit en toegang tot functies Windows
  • Controle over uw eigen distributiekanaal en prijzen

Ondertekening van code:

  • Een certificaat voor ondertekening van door ca vertrouwde programmacode is vereist: gebruikers kunnen niet-ondertekende of zelfondertekende MSIX-pakketten niet installeren zonder het certificaat handmatig te vertrouwen
  • Azure Artifact Signing (voorheen Trusted Signing) (~$10/maand) is Microsoft aanbevolen optie: er is geen hardwaretoken vereist, kan worden geïntegreerd met CI/CD-pijplijnen
  • Traditionele OV-certificaten worden ook geaccepteerd (meestal $ 150-300 per jaar van een CA)

Smartscreen: Nieuwe certificaten verzamelen smartscreen-reputatie in de loop van de tijd op basis van het downloadvolume. Verwacht enkele SmartScreen-prompts voor nieuwe releases. Zie SmartScreen-reputatie voor Windows app-ontwikkelaars.

Belangrijk

Het ms-appinstaller: URI-protocol (installatie van een browser met één klik) is standaard uitgeschakeld sinds december 2023. Maak rechtstreeks een koppeling naar het .appinstaller bestand om het te downloaden of overweeg om naar de Store te publiceren voor een breder bereik. Zie Huidige status van Windows app-distributiefuncties.

Wanneer moet u dit kiezen:

  • U bent een ISV die software rechtstreeks vanaf uw website verkoopt
  • U moet de UX, prijsstelling of licenties kunnen bepalen die de Store niet ondersteunt
  • Uw klanten zijn bedrijven die software aanschaffen buiten de Store

Overzicht van → app-installatiebestand
Apps automatisch bijwerken en repareren

Verpakking met externe locatie (sparse pakketinhoud)

Als u een bestaande app hebt met een eigen installatieprogramma (WiX, NSIS, InstallShield) en Windows functies wilt toevoegen waarvoor pakketidentiteit is vereist, zonder dat u uw installatieprogramma vervangt door MSIX, gebruikt u verpakking met externe locatie.

Wat u krijgt:

  • Pakketidentiteit zonder uw installatieprogramma of binaire locaties te wijzigen
  • Toegang tot Windows functies: meldingen, achtergrondtaken, bestandstypekoppelingen, protocolhandlers
  • Uw bestaande installatie- en updatemechanisme blijft aanwezig

Wat u niet krijgt:

  • Directe indiening in de MSIX Store (het sparse-pakket wordt niet zelf naar de Store gestuurd; uw onderliggende installatieprogramma kan echter worden ingediend via het MSI/EXE Store-installatiepad)
  • Het schone installatie-/verwijderingsmodel van volledige MSIX

Wanneer moet u dit kiezen:

  • U hebt een bestaande Win32/WPF/WinForms-app met een bestaand installatieprogramma
  • U wilt specifieke Windows API-functies waarvoor pakketidentiteit is vereist
  • Volledig migreren naar MSIX is momenteel niet haalbaar

Pakketidentiteit verlenen door pakketten met externe locatie te verpakken

Uitgepakte WinUI 3

Met uitgepakte distributie wordt MSIX volledig uit de afbeelding verwijderd. De app wordt rechtstreeks vanuit een map zonder pakketmanifest uitgevoerd. Dit is een nicheoptie die geschikt is voor specifieke scenario's.

Wat u krijgt:

  • Eenvoudigere build-uitvoer (een map met bestanden, geen MSIX-hulpprogramma's)
  • Er is geen MSIX-infrastructuur vereist op doelcomputers
  • Werkt op computers waarop MSIX sideloaden niet is ingeschakeld

Limitations:

  • No single-file EXE — De Windows App SDK runtime moet worden verzonden als afzonderlijke bestanden naast het uitvoerbare bestand
  • Runtime-implementatie— U moet het installatieprogramma voor Windows App SDK runtime bundelen of gebruikmaken van zelfstandige implementatie (grotere uitvoer)
  • Geen pakketidentiteit - Geen automatische updates, geen achtergrondtaken, geen bestandstypekoppelingen via manifest
  • Geen MSIX/package-identity Store-indiening : dit model heeft geen pakketidentiteit en kan niet als MSIX-pakket worden verzonden naar de Store. Een traditioneel installatieprogramma (MSI/EXE) kan afzonderlijk worden ingediend, maar dat valt buiten dit distributiepad.
  • SmartScreen-waarschuwingen, tenzij deze zijn ondertekend met een vertrouwd ca-certificaat

Wanneer moet u dit kiezen:

  • Uw doelomgeving kan MSIX niet gebruiken (ongebruikelijk; de meeste beheerde bedrijfsomgevingen ondersteunen MSIX)
  • U bouwt een intern hulpprogramma waarbij MSIX-overhead niet gerechtvaardigd is

Voor de meeste WinUI 3-apps is MSIX (via Store of direct downloaden) het betere pad. De bovenstaande beperkingen verrassen ontwikkelaars vaak die ze ontdekken nadat ze hebben geïnvesteerd in uitgepakte distributie.

Een uitgepakte WinUI 3-app distribueren - stapsgewijze handleiding met runtime-implementatieopties

Veel Windows-apps worden gedistribueerd met ClickOnce, MSI, WiX, Inno Setup of vergelijkbare technologieën. Dit zijn tot stand gebrachte en ondersteunde opties, met name voor apps die geen MSIX kunnen gebruiken of geen Store-distributie nodig hebben. In de onderstaande tabel vindt u een overzicht van de algemene opties en de bijbehorende afwegingen.

Methode Automatisch bijwerken Ondertekening van code vereist In aanmerking komende winkel Ideaal voor
MSIX via Store ✅ Ingebouwde ✅ Gratis (Uithangborden) ✅ Ja De meeste apps : aanbevolen startpunt
MSIX + .appinstaller ✅ Ingebouwde 💲 Ca-vertrouwd certificaat ❌ Nee ISVs die direct via een website distribueren
ClickOnce ✅ Ingebouwde 💲 Certificaat aanbevolen ❌ Nee WPF/WinForms-apps; niet ondersteund voor WinUI 3
MSI / WiX / Inno Setup ⚠✏ Handmatig of aangepast 💲 Certificaat aanbevolen ⚠(*) Via MSI/EXE Store inzending (zie hieronder) Apps met complexe installatievereisten of bestaand installatieprogramma
Zelfstandig EXE (xcopy/zip) ❌ Geen 💲 Certificaat aanbevolen ❌ Nee Eenvoudige hulpprogramma's; doelgroepen voor ontwikkelaars/power-gebruikers
wingetmanifest ✅ Via winget 💲 Certificaat aanbevolen ❌ Nee Elk van de bovenstaande - bevordert vindbaarheid via winget install

ClickOnce

ClickOnce is een .NET-implementatietechnologie die is ingebouwd in Visual Studio. Het host een manifest op een webserver of bestandsshare; gebruikers installeren vanaf de manifest-URL en ClickOnce verwerkt updatecontroles bij het starten. Het is geschikt voor WPF- en WinForms-apps die zijn gedistribueerd naar een bekende gebruikersbasis.

ClickOnce wordt niet ondersteund voor WinUI 3-apps. Gebruik MSIX met .appinstaller voor directe distributie van WinUI 3.

ClickOnce-beveiliging en -implementatie

MSI, WiX, Inno Setup en NSIS

Traditionele EXE- en MSI-installatieprogramma's blijven gebruikelijk voor Windows-apps met complexe installatievereisten (stuurprogramma-installatie, systeemservices, registerconfiguratie). Hulpprogramma's zoals WiX Toolset, Inno Setup en NSIS worden door de community onderhouden en veel gebruikt. Ondersteuning voor updates vereist uw eigen implementatie.

Deze indelingen zijn niet Store-compatibel als MSIX-pakketten, maar kunnen naar de Store worden gestuurd via het pad MSI/EXE installer (vereist een certificaatketen naar een CA in het Microsoft Trusted Root Program en een installatieprogramma met stille installatiecapaciteit). U kunt ze ook combineren met packaging met externe locatie als u pakketidentiteit nodig hebt voor specifieke Windows-functies.

Zelfstandige EXE (xcopy-implementatie)

dotnet publish --self-contained produceert een map met bestanden (of een EXE met één bestand) die gebruikers kunnen uitvoeren zonder .NET te installeren. Dit is het eenvoudigste distributiemodel, maar vereist dat gebruikers handmatig een nieuwe versie downloaden. Het is geschikt voor opdrachtregelprogramma's, hulpprogramma's voor ontwikkelaars en power-user-apps.

winget — ontdekbaarheid toevoegen aan elk distributiepad

Ongeacht uw verpakkingsindeling kunt u een manifest indienen bij de Windows Pakketbeheer Community Repository om uw app te installeren via winget install <your-app>. Dit vervangt uw bestaande distributiemethode niet. Hiermee wordt een opdrachtregelinstallatiepad toegevoegd dat wordt gewaardeerd door ontwikkelaars en technische doelgroepen.