Slik konverterer du en Windows Desktop App til en Universal Windows App

Innholdsfortegnelse:

Slik konverterer du en Windows Desktop App til en Universal Windows App
Slik konverterer du en Windows Desktop App til en Universal Windows App

Video: Slik konverterer du en Windows Desktop App til en Universal Windows App

Video: Slik konverterer du en Windows Desktop App til en Universal Windows App
Video: CS50 2013 - Week 10, continued - YouTube 2024, April
Anonim
Med Windows 10-jubileumsoppdatering gjør Microsoft det mulig for utviklere å konvertere tradisjonelle Windows-desktopprogrammer til Universal Windows Platform (UWP) -programmer. Men hvem som helst kan gjøre dette med noen app-ikke bare utviklere.
Med Windows 10-jubileumsoppdatering gjør Microsoft det mulig for utviklere å konvertere tradisjonelle Windows-desktopprogrammer til Universal Windows Platform (UWP) -programmer. Men hvem som helst kan gjøre dette med noen app-ikke bare utviklere.

Med Windows 10-omformer, bare gi den en.msi eller.exe-fil, og det vil spytte ut en.appx-pakke. Du kan deretter sideload denne appen på din egen PC, eller hvis du er programmets utvikler, kan du sende den resulterende UWP-appen til Windows Store. Denne funksjonen kommer for alle med Windows 10s jubileumsoppdatering, og bringer mange "eldre" applikasjoner til Windows Store.

Hvorfor vil du gjøre dette

Denne funksjonen er sluttresultatet til Microsofts Project Centennial, som er designet for å bringe de "eldre" Win32- og.NET Windows-skrivebordsprogrammene til Windows Store og den nye Universal Windows Platformen.

Du lurer kanskje på hvorfor noen ønsker å konvertere et skrivebordsprogram til en ny UWP-app. For én ting er bare UWP-apper tillatt i Windows Store. Dette gjør det mulig for utviklere å få mye flere øyne på sine apps, for ikke å nevne enkeltklikkinstallasjon, enkel innkjøp og automatiske oppdateringer.

Microsofts nye UWP-applikasjonsplattform er sandkassert, men skrivebordsprogrammer du konverterer, er ikke. Disse programmene har full tilgang til systemet ditt, akkurat som et tradisjonelt skrivebordsprogram. Som Microsofts dokumentasjon sier: "Som en UWP-app kan appen gjøre de tingene det kan gjøre som en klassisk desktop app. Det samhandler med en virtualisert visning av registret og filsystemet som ikke kan skiller seg fra selve registret og filsystemet."

Begrensningene

Det er noen viktige begrensninger her. For det første kan du bare gjøre dette på Windows 10 Anniversary Update. For tiden vil det fungere med Windows 10 Insider Preview-bygge 14316 og høyere, så du må være med i Windows Insider-programmet og bruke en Innsideforhåndsvisning av Windows 10.

Denne funksjonen krever også enten profesjonell eller Enterprise-utgaven av Windows 10. Windows 10 Home-brukere kan ikke bruke Desktop App Converter. Som i bygg 14316 fungerte den bare på Windows 10 Enterprise, men støtte for Windows 10 Professional kommer. For øyeblikket kan dette verktøyet bare brukes på 64-biters versjoner av Windows, og den resulterende AppX-pakken kan bare installeres på 64-biters versjoner av Windows. Dette vil endres i fremtidige Insider-bygg i Windows 10.

De resulterende programmene er beregnet på Windows 10 PCer. De vil ikke fungere på Windows 10 Mobile-smarttelefoner, Xbox One, HoloLens, Surface Hub og de andre Windows 10-plattformene som kjører UWP-apper. Men hvis du er en utvikler, tilbyr Microsoft en vei for å få skrivebordet ditt til et UWP-program på tverrplattform: "Hvis du velger å flytte all appens funksjonalitet ut av full-trust-partisjonen til appen og inn i app-containerpartisjon, vil appen din kunne kjøre på en hvilken som helst Windows 10-enhet."

Noen typer applikasjonsadferd er imidlertid ikke støttet. En applikasjon kan ikke kreve at den kjøres som administrator eller bruke andre typer lavt nivå systemtilgang. Microsoft gir en liste over atferd som ikke er tillatt.

Slik setter du opp Desktop App Converter

Hvis du antar at du bruker en ny nok oppbygging av forhåndsvisningen for Windows 10 Insider, kan du laste ned og installere Desktop App Converter fra Microsofts Developer-nettsted. Last ned både DesktopAppConverter.zip og BaseImage-14316.wim-filene. Trekk ut den nedlastede DesktopAppConverter.zip-filen til en mappe på datamaskinen din og legg BaseImage-filen i samme katalog. (Hvis det er en ny versjon av Windows 10 tilgjengelig, bør du se en ny BaseImage-fil. Du må bruke BaseImage-filen med det samme versjonsnummeret som din installerte versjon av Windows 10.)

Du må også laste ned og installere Windows 10 SDK.

Deretter åpner du et PowerShell-vindu som administrator. For å gjøre dette, åpne Start-menyen, søk etter "PowerShell", høyreklikk snarveien og velg "Kjør som administrator".
Deretter åpner du et PowerShell-vindu som administrator. For å gjøre dette, åpne Start-menyen, søk etter "PowerShell", høyreklikk snarveien og velg "Kjør som administrator".

Endre PowerShells eksekveringspolicy ved å kjøre følgende kommando. Godta forandringen ved å skrive

y

etterpå.

Set-ExecutionPolicy bypass

Kjør kommandoen nedenfor, erstatt

C:UsersNAMEDownloadsDesktopAppConvertor

med banen til katalogen på datamaskinen din:

cd -Path C:UsersNAMEDownloadsDesktopAppConvertor

Sett opp Desktop App Converter ved å kjøre følgende kommando:

.DesktopAppConverter.ps1 -Setup -BaseImage.BaseImage-14316.wim

Hvis du blir bedt om å starte om igjen mens du kjører noen av disse kommandoene, starter du datamaskinen på nytt og kjører deretter kommandoen igjen.

Image
Image

Slik konverterer du en stasjonær applikasjon

Du kan nå kjøre

DesktopAppConverter.ps1

Skript fra et Administrator PowerShell-vindu for å konvertere et skrivebordsprogram til et UWP-program i en enkelt kommando. Du trenger programmets installasjonsprogram for å gjøre dette. Som et eksempel, bruker vi VLC her.

Hvis du vil vise den detaljerte listen over alternativer, kan du når som helst kjøre følgende kommando:

get-help.DesktopAppConverter.ps1 -detailed

Her er en kommando du kan bruke og justere for søknaden din:

.DesktopAppConverter.ps1 -ExpandedBaseImage C:ProgramDataMicrosoftWindowsImagesBaseImage-14316 –Installer C:InstallerMyApp.exe -InstallerArguments '/S' -Destination C:OutputMyApp -PackageName 'MyApp' -Publisher 'CN=' -Version 0.0.0.1 -MakeAppx -Verbose

Du må justere kommandoen for å legge til ditt eget utgivernavn, versjon, pakkenavn og pek på det på installasjonsfilen og destinasjonsmappen du foretrekker. De

-InstallerArguments '/S'

alternativ her passerer

/S

bytt til installatøren, noe som gjør at mange installasjonsprogrammer installeres stille uten noen brukerinngang. Programmene må være installerbare uten noen brukerinngang, eller du kan ikke konvertere dem.

Programmets installasjonsprogram bør være i sin egen katalog uten noen andre filer, da filene i samme katalog som installasjonsprogrammet vil bli kopiert til den resulterende.appx-pakken.

For eksempel bruker vi VLC her, så her er kommandoen vi ville bruke:

.DesktopAppConverter.ps1 -ExpandedBaseImage C:ProgramDataMicrosoftWindowsImagesBaseImage-14316 –Installer C:UserschrisDownloadsvlcvlc-2.2.2-win32.exe -InstallerArguments '/S' -Destination C:OutputVLC -PackageName 'VLC' -Publisher 'CN=VideoLAN' -Version 0.2.2.2 -MakeAppx -Verbose

Verktøyet vil gi deg en.appx-pakke, som er UWP-versjonen av appen.
Verktøyet vil gi deg en.appx-pakke, som er UWP-versjonen av appen.
Image
Image

Slik installerer du appen uten å signere den

Du er normalt pålogget apps med en gyldig signatur før de kan installeres. Microsoft anbefaler å opprette et selvsignert sertifikat og signere appen med det på datamaskinen. Du kan gjøre det ved å bruke instruksjonene nedenfor, hvis du vil.

Men hvis du bare vil installere appen på din egen datamaskin, kan du gjøre det selv raskere, uten å rote med noen signaturer. Windows 10 lar deg installere apper uten å signere dem hvis du installerer en "pakket" app fra en katalog.

For å gjøre dette, åpne et PowerShell-vindu som administrator og kjør følgende kommando:

Add-AppxPackage -Path C:Path oAppxManifest.xml -Register

Du finner filen AppxManifest.xml ved siden av filen Application.appx i utdatakatalogen du angav.

Du kan nå starte programmet fra Start-menyen. Det vil være en "Windows app" i stedet for en "Desktop app", men det vil ellers se og fungere som en vanlig desktop app.

Image
Image

Slik signerer og installerer du appen

Du trenger ikke å følge disse instruksjonene hvis du allerede har installert programmet. Dette er vanskeligere.

Du kan normalt bare installere en.appx-pakke hvis den har en gyldig signatur. Microsoft anbefaler at du bruker programmet signtool.exe som følger med Windows 10 SDK, for å lage et selvsignert sertifikat, som lar deg installere og teste programmet på din egen datamaskin.

Bare åpne et kommandopromptvindu som administrator og kjør følgende kommandoer for å opprette et selvsignert sertifikat og signere.appx-pakken med det:

cd 'C:Program Files (x86)Windows Kits10inx64'

MakeCert.exe -r -h 0 -n 'CN=Publisher' -eku 1.3.6.1.5.5.7.3.3 -pe -sv my.pvk my.cer

pvk2pfx.exe -pvk my.pvk -spc my.cer -pfx my.pfx

signtool.exe sign -f my.pfx -fd SHA256 -v C:Path oapplication.appx

Legg merke til at utgiveren du spesifiserer, det er den

'CN=Publisher'

- må samsvare med utgiveren du angav tidligere da du opprettet AppX-filen. Så, fortsetter med vårt VLC eksempel ovenfra, må vi bruke

'CN=VideoLAN'

Du blir bedt om å skrive inn et passord. Du kan bare la passordet være tomt.

Du kan nå installere.appx-pakken i et PowerShell-vindu (Administrator) med kommandoen Add-AppxPackage:
Du kan nå installere.appx-pakken i et PowerShell-vindu (Administrator) med kommandoen Add-AppxPackage:

Add-AppxPackage C:Path oapplication.appx

Denne funksjonen kan brukes av alle, men bare utviklere - og kanskje noen systemadministratorer - vil ønske å gå denne ruten. Heldigvis er prosessen ekstremt lett for utviklere.

Anbefalt: