Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
U hebt een WPF-, WinForms- of WinUI 3-app gemaakt. U moet deze nu in handen van gebruikers krijgen. Deze handleiding doorloopt het volledige pad van een voltooide build naar een gepubliceerde app, waarin de twee meest voorkomende distributiescenario's worden beschreven: publiceren naar de Microsoft Store (aanbevolen) en het instellen van direct download distributie.
Aanbeveling
Het Microsoft Store is het aanbevolen pad voor de meeste ontwikkelaars. Het verwerkt het ondertekenen van programmacode, het leveren van updates en detectie, en het is de meest eenvoudige manier om Windows-gebruikers te bereiken. Direct downloaden is de juiste keuze wanneer u specifieke commerciële, zakelijke of distributievereisten hebt die niet passen in de Store.
Stap 1: Kies uw distributiepad
Uw distributiepad bepaalt de kosten voor ondertekening van code, updatemechanica, hoe gebruikers uw app ontdekken en hoe ondernemingen deze kunnen implementeren.
Kies een distributiepad voor uw Windows-app heeft een volledige vergelijking. Kortom:
- Microsoft Store, aanbevolen voor de meeste apps. Gratis ondertekening van contracten, ingebouwde updates, brede vindbaarheid en een vertrouwde installatie-ervaring. Hiervoor is een gratis ontwikkelaarsaccount vereist: registreer u bij storedeveloper.microsoft.com.
- Direct downloaden , geschikt voor commerciële ISV's met hun eigen winkel, zakelijke LOB-apps of apps met inhoud die de Store niet toestaat. U bent verantwoordelijk voor ondertekening, hosting en updates.
De meeste nieuwe indie-apps zijn geschikt voor de Store. Als u het niet zeker weet, begint u daar.
Stap 2: ondertekening van code instellen
Als u een MSIX-pakket publiceert naar de Microsoft Store: slaat u deze stap over. Microsoft uw pakket automatisch opnieuw ondertekent als onderdeel van het certificeringsproces.
Als u een Win32 MSI/EXE-installatieprogramma indient bij de Microsoft Store: moet u uw installatieprogramma nog steeds ondertekenen voordat u het verzendt. Het installatieprogramma en de BIJBEHORENDE PE-bestanden moeten zijn ondertekend met een certificaatketen naar een CA in het Microsoft Trusted Root Program. Zelfondertekende certificaten zijn niet acceptabel. Zie de app-pakketvereisten voor MSI/EXE.
Als u rechtstreeks distribueert: u hebt een vertrouwd certificaat voor ondertekening van programmacode nodig. Niet-ondertekende apps en zelfondertekende apps activeren sterke SmartScreen-waarschuwingen en sommige bedrijfsomgevingen blokkeren ze volledig.
Code-ondertekeningsopties voor Windows appontwikkelaars heeft een volledige vergelijking. Snelle richtlijnen:
- Organisaties in de VS, Canada, EU of VK / Personen in de VS of Canada:Azure Artifact Signing (voorheen Trusted Signing) — ongeveer $9,99/maand, geen hardwaretoken vereist, integreert met CI/CD-pijplijnen. Dit is Microsoft aanbevolen optie voor niet-Store-distributie.
- Individuele ontwikkelaars buiten de VS/Canada, of iedereen die niet in aanmerking komt voor de ondertekening van Azure-artifacten: Een OV-certificaat van een certificeringsinstantie zoals DigiCert of Sectigo, meestal $150–300 per jaar.
Opmerking
Het ondertekenen van uw app is vereist voor een goede first-run-ervaring. Een nieuwe ondertekende app geeft nog steeds een SmartScreen-waarschuwing weer totdat deze reputatie bouwt, maar de waarschuwing is veel minder ernstig dan voor niet-ondertekende apps. Bekijk de Reputatie van SmartScreen voor ontwikkelaars om te begrijpen wat uw vroege gebruikers zullen zien.
Stap 3: Uw app verpakken
Hoe u uw app inpakt, is afhankelijk van het app-framework dat u hebt gebruikt.
WinUI 3
WinUI 3-apps die zijn gemaakt met de Windows App SDK projectsjablonen, worden standaard already verpakt als MSIX. Wanneer u uw oplossing in Visual Studio bouwt, is de uitvoer een .msix of .msixbundle bestand gereed voor verzending of directe distributie van de Store.
Als u een uitgepakte WinUI 3-app (zonder MSIX-verpakking) wilt distribueren, raadpleegt u Een uitgepakte WinUI 3-app distribueren. Houd er rekening mee dat uitgepakte WinUI 3-apps geen EXE met één bestand kunnen produceren en dat de Windows App SDK runtime op de computer van de gebruiker is vereist (afzonderlijk geïnstalleerd via het runtime-installatieprogramma of gebundeld met behulp van zelfstandige implementatie).
WPF en WinForms
WPF- en WinForms-projecten produceren standaard geen MSIX. U hebt een aantal opties:
Optie A: Windows Application Packaging Project (MSIX)
Voeg een Windows Application Packaging-Project toe aan uw oplossing in Visual Studio. Hiermee verpakt u uw app in een MSIX-pakket, zodat u pakketidentiteit, geschiktheid voor de Store en updates op basis van app-installatieprogramma's krijgt. Dit is de aanbevolen methode voor het indienen bij de App Store.
→ Uw bureaublad-app verpakken met MSIX met één project
Optie B: dotnet publish (zelfstandige EXE)
Voor directe downloaddistributie produceert dotnet publish met --self-contained een zelfstandige EXE die de .NET runtime bevat. Gebruikers hoeven .NET niet afzonderlijk te installeren.
dotnet publish -c Release -r win-x64 --self-contained true
Dit produceert een map met bestanden die geschikt zijn voor het zippen en distribueren of verpakken in een installatieprogramma. Het komt niet direct in aanmerking voor de Store.
Optie C: Frameworkafhankelijk publiceren
Laat --self-contained weg als u wilt dat gebruikers de juiste .NET runtime hebben geïnstalleerd. De uitvoer is kleiner, maar heeft een runtime-afhankelijkheid.
Stap 4a: verzenden naar het Microsoft Store (aanbevolen pad)
Het inzendingsproces van de Store wordt uitgevoerd via partnercentrum.
Stappen in één oogopslag:
- Maak een ontwikkelaarsaccount : gratis. Registreer u bij storedeveloper.microsoft.com. Het account is blijvend.
- Reserveer uw app-naam : claim de naam van uw app in het Partnercentrum voordat u de app indient. De naam wordt tijdens de ontwikkeling voor u bewaard.
- Uw app bouwen en verpakken : maak een MSIX-pakket dat voldoet aan de Store-vereisten. Voor Store-inzendingen hebben MSIX-/AppX-pakketten geen vertrouwde handtekening van een CA nodig. Microsoft het pakket opnieuw ondertekent met een Microsoft certificaat na certificering. Als u buiten de Store distribueert met behulp van een MSI- of EXE-installatieprogramma, wordt Authenticode-ondertekening aanbevolen en verwacht door Windows beveiligingsfuncties.
- Maak uw inzending : upload uw pakket, geef details op voor winkelvermeldingen (beschrijving, schermopnamen, categorieën, leeftijdsclassificatie) en stel prijzen in.
- Certification — Microsoft controleert uw app op naleving van het beleid. Certificering duurt doorgaans een paar werkdagen voor nieuwe apps.
- Publiceren : zodra uw app is gecertificeerd, wordt deze weergegeven in de Store en is deze beschikbaar voor gebruikers.
→ Uw app-inzending maken
vereisten voor → app-pakket
Stap 4b: Direct distribueren (alternatieve route)
Als u uw app buiten de Store distribueert, hebt u verschillende pakketten en hostingopties.
MSIX met app-installatieprogramma (.appinstaller)
MSIX-pakketten die worden gedistribueerd met een bijgezelbestand .appinstaller ondersteunen automatische updatecontroles. Wanneer gebruikers de app installeren vanuit het bestand .appinstaller, controleert Windows regelmatig de URL die u opgeeft op een nieuwere versie en biedt aan om bij te werken.
Belangrijk
Het ms-appinstaller URI-protocol (waarmee u rechtstreeks vanuit een webkoppeling kunt installeren) is standaard uitgeschakeld sinds december 2023 vanwege beveiligingsproblemen. Gebruikers moeten het .appinstaller of .msix bestand downloaden en handmatig openen.
→ huidige status van distributiefuncties
ClickOnce (WPF en WinForms)
ClickOnce is een .NET-implementatietechnologie die is ingebouwd in Visual Studio die automatische updates voor WPF- en WinForms-apps ondersteunt. Gebruikers installeren vanuit een gehost manifest en ClickOnce verwerkt updatecontroles transparant.
ClickOnce wordt niet ondersteund voor WinUI 3-apps. Gebruik in plaats daarvan MSIX..appinstaller
→ ClickOnce-beveiliging en -implementatie
EXE-installatieprogramma
Een traditioneel EXE-installatieprogramma dat is gemaakt met een hulpprogramma zoals WiX Toolset of Inno Setup is bekend voor gebruikers en eenvoudig te produceren. Dit zijn bekende communityhulpprogramma's die door veel Windows toepassingen worden gebruikt. Voor EXE-installatieprogramma's moet u uw eigen updatemechanisme implementeren.
Uw download hosten
Algemene hostingopties voor direct downloaden:
- GitHub Releases : gratis, versiebeheer en integreert goed met geautomatiseerde build-pijplijnen. Geschikt voor opensource- en kleine commerciële apps.
- Uw eigen website : volledige controle over de downloadpagina, analyse en betalingsstroom. U hebt betrouwbare opslag- en CDN-capaciteit nodig als uw app groeit.
- Winkels van derden: sommige ontwikkelaars distribueren ze via winkels, zoals itch.io voor gaming-aangrenzende apps.
winget voor vindbaarheid
Als u uw app verzendt naar de Windows Pakketbeheer Community Repository kunt u uw app installeren via winget install. Dit wordt vooral gewaardeerd door ontwikkelaars en power-user doelgroepen die de voorkeur geven aan opdrachtregelprogramma's. Indienen is een pull-aanvraag voor de opslagplaats van het communitymanifest en is gratis.
Stap 5: Automatisch bijwerken instellen
Als u gebruikers op de nieuwste versie houdt, vermindert u de ondersteuningslast en zorgt u ervoor dat beveiligingsoplossingen ze onmiddellijk bereiken.
| Distributiepad | Mechanisme voor bijwerken |
|---|---|
| Microsoft Store (MSIX) | Automatisch — Store levert updates op de achtergrond |
| Microsoft Store (MSI/EXE-installatieprogramma) | Handmatig — de app of het installatieprogramma verwerkt updates; Updates naar bestaande gebruikers worden niet gepusht in Store |
MSIX + .appinstaller |
Ingebouwd: Windows controleert de URL die u opgeeft volgens een schema |
| ClickOnce | Ingebouwd: controleert op updates bij het starten |
| EXE-installatieprogramma of zelfstandige EXE | Handmatige implementatie vereist |
Voor EXE- of zelfstandige implementaties zonder ingebouwd updatemechanisme is Velopack een communityhulpprogramma waarmee mogelijkheden voor automatisch bijwerken en installatieprogramma's worden toegevoegd aan .NET apps. Het is geen Microsoft product: evalueer het op basis van uw eigen vereisten.
Stap 6: SmartScreen afhandelen voor nieuwe apps
Elke nieuwe app, ongeacht hoe goed deze is ondertekend, activeert een SmartScreen-waarschuwing bij de eerste download totdat er voldoende downloadgeschiedenis wordt verzameld. Dit wordt verwacht en normaal. U kunt dit als volgt afhandelen:
- Onderteken elke release. Een ernstiger waarschuwing 'Windows heeft uw pc beschermd' wordt weergegeven door niet-ondertekende apps. Ondertekende apps geven een zachtere waarschuwing 'niet-herkende app' weer die gebruikers gemakkelijker kunnen omzeilen.
- Stel verwachtingen in bij vroege gebruikers. Vertel bètatesters en early adopters wat u kunt verwachten. Een korte opmerking in uw releaseaankondiging ('U ziet mogelijk een SmartScreen-prompt bij de eerste uitvoering; dit is normaal voor nieuwe apps; Klik op 'Meer informatie' en 'Toch uitvoeren') voorkomt verwarring en verlaten installaties.
- Wees geduldig. Reputatie bouwt organisch met het downloadvolume. Er is geen handmatig indieningsproces om dit te versnellen voor consumenteneindpunten.
→ SmartScreen-reputatie voor ontwikkelaars legt het volledige reputatiemodel uit, wat gebruikers in elke fase zien en overwegingen met betrekking tot het ondernemingsbeleid.
Wat is de volgende stap?
Zodra uw app is gepubliceerd, kunt u het volgende doen:
- App-status en -beoordelingen bewaken: Partnercentrum biedt crashanalyse, gebruikersbeoordelingen en beoordelingsbeheer voor Store-apps
- Releases beheren met gefaseerde implementaties : de Store ondersteunt het implementeren van een nieuwe versie voor een percentage gebruikers vóór een volledige release
- Telemetrie instellen: overweeg om een service voor crash- en gebruiksanalyse te integreren, zoals Azure-toepassing Insights of een andere analyse-SDK om te begrijpen hoe uw app wordt gebruikt
- Reageer op gebruikersfeedback — Partner Center toont Store beoordelingen; voor apps die direct kunnen worden gedownload, kunt u een feedbackkanaal overwegen (GitHub Issues, een speciaal e-mailadres of een communityforum)
Verwante inhoud
Windows developer