Med Windows 10s jubilæumsopdatering , Microsoft gør det muligt for udviklere at konvertere traditionelle Windows-desktopapplikationer til Universal Windows Platform (UWP) -applikationer. Men alle kan gøre dette med enhver app - ikke kun udviklere.
Med Windows 10s konverter skal du bare give den en .msi- eller .exe-fil, så spytter en .appx-pakke ud. Du kan derefter sideloade denne app på din egen pc, eller - hvis du er applikationsudvikleren - kan du sende den resulterende UWP-app til Windows Store. Denne funktion ankommer til alle med Windows 10s jubilæumsopdatering, bringe mange "ældre" applikationer til Windows Store .
Hvorfor vil du gøre dette
RELATEREDE: Hvad er nyt i Windows 10s jubilæumsopdatering
Denne funktion er slutresultatet af Microsofts Project Centennial, som er designet til at bringe disse "arvede" Win32- og .NET Windows-desktopapplikationer til Windows Store og den nye Universal Windows-platform.
Du undrer dig måske over, hvorfor nogen vil konvertere en desktop-applikation til en ny UWP-app. For det første er kun UWP-apps tilladt i Windows Store. Dette giver udviklere mulighed for at få meget mere øje med deres apps, for ikke at nævne installation med enkelt klik, let køb og automatiske opdateringer.
Microsofts nye UWP-applikationsplatform er sandboxet, men desktop-apps, du konverterer, er det ikke. Disse applikationer har fuld adgang til dit system, ligesom en traditionel desktop-applikation. Som Microsofts dokumentation siger: ”Som en UWP-app er din app i stand til at gøre de ting, den kunne gøre som en klassisk desktop-app. Det interagerer med en virtualiseret visning af registreringsdatabasen og filsystemet, der ikke kan skelnes fra selve registreringsdatabasen og filsystemet. "
Begrænsningerne
RELATEREDE: Sådan bliver du en Windows Insider og test nye Windows 10-funktioner
Der er nogle vigtige begrænsninger her. For det første kan du kun gøre dette på Windows 10-jubilæumsopdateringen. Indtil videre fungerer det med Windows 10 Insider Preview bygge 14316 og højere, så du bliver nødt til at deltage i Windows Insider-programmet og brug en Insider Preview-version af Windows 10 .
Denne funktion kræver også enten Professional- eller Enterprise-udgaverne af Windows 10. Windows 10 Home-brugere kan ikke bruge Desktop App Converter. Fra og med build 14316 fungerede det kun på Windows 10 Enterprise, men support til Windows 10 Professional kommer. I øjeblikket kan dette værktøj kun bruges på 64-bit versioner af Windows, og den resulterende AppX-pakke kan kun installeres på 64-bit versioner af Windows. Dette vil ændre sig i fremtidige Insider-builds af Windows 10.
De resulterende applikationer er beregnet til Windows 10-pc'er. De fungerer ikke på Windows 10 Mobile-smartphones, Xbox One, HoloLens, Surface Hub og de andre Windows 10-platforme, der kører UWP-apps. Men hvis du er udvikler, tilbyder Microsoft en vej til at få din desktopapplikation til en UWP-applikation på tværs af platforme: “Hvis du vælger at flytte al din apps funktionalitet ud af appens fulde tillidspartition og ind i app-containerpartition, så kan din app køre på enhver Windows 10-enhed. ”
Nogle typer applikationsadfærd understøttes dog ikke. En applikation kan ikke kræve, at den køres som administrator eller bruger andre typer systemadgang på lavt niveau. Microsoft giver en liste over adfærd, der ikke er tilladt .
Sådan opsættes Desktop App Converter
Forudsat at du bruger en ny nok version af Windows 10 Insider Preview, kan du downloade og installere Desktop App Converter fra Microsofts udviklerwebsted. Download både DesktopAppConverter.zip- og BaseImage-14316.wim-filerne. Uddrag den downloadede DesktopAppConverter.zip-fil til en mappe på din computer, og placer BaseImage-filen i samme bibliotek. (Hvis der er en ny version af Windows 10 tilgængelig, skal du se en ny BaseImage-fil. Du skal bruge BaseImage-filen med det samme versionsnummer som din installerede build af Windows 10.)
Du skal også downloade og installere Windows 10 SDK .
Åbn derefter et PowerShell-vindue som administrator. For at gøre det skal du åbne Start-menuen, søge efter "PowerShell", højreklikke på genvejen og vælge "Kør som administrator."
Skift PowerShells udførelsespolitik ved at køre følgende kommando. Accepter ændringen ved at skrive
Y
bagefter.
Set-ExecutionPolicy bypass
Kør kommandoen nedenfor og udskift den
C: \ Brugere \ NAVN \ Downloads \ DesktopAppConvertor
med stien til biblioteket på din computer:
cd -Path C: \ Brugere \ NAVN \ Downloads \ DesktopAppConvertor
Opsæt Desktop App Converter ved at køre følgende kommando:
. \ DesktopAppConverter.ps1 -Setup -BaseImage. \ BaseImage-14316.wim
Hvis du bliver bedt om at genstarte, mens du kører en af disse kommandoer, skal du genstarte din computer og derefter køre kommandoen igen.
Sådan konverteres en desktop-applikation
Du kan nu køre
DesktopAppConverter.ps1
script fra et Administrator PowerShell-vindue til at konvertere et skrivebordsprogram til et UWP-program i en enkelt kommando. Du skal bruge programmets installationsprogram til at gøre dette. Som et eksempel bruger vi VLC her.
For at se den detaljerede liste over muligheder kan du til enhver tid køre følgende kommando:
get-help. \ DesktopAppConverter.ps1 -detaljeret
Her er en kommando, du kan bruge og justere til din applikation:
. \ DesktopAppConverter.ps1 -ExpandedBaseImage C: \ ProgramData \ Microsoft \ Windows \ Images \ BaseImage-14316 –Installer C: \ Installer \ MyApp.exe -InstallerArguments "/ S" -Destination C: \ Output \ MyApp -PackageName "MyApp" -Publisher "CN = <publisher_name>" -Version 0.0.0.1 -MakeAppx -Verbose
Du bliver nødt til at justere kommandoen for at tilføje dit eget udgivernavn, version, pakkenavn og pege på den installationsfil og destinationsmappe, du foretrækker. Det
-InstallerArguments "/ S"
valg her passerer
/ S
skift til installationsprogrammet, hvilket får mange applikationsinstallatører til at installere lydløst uden brugerinput. Applikationer skal kunne installeres uden brugerinput, ellers kan du ikke konvertere dem.
Programmets installationsprogram skal være i sin egen mappe uden andre filer, da filerne i samme mappe som installationsprogrammet kopieres til den resulterende .appx-pakke.
For eksempel bruger vi VLC her, så her er den kommando, vi vil bruge:
. \ DesktopAppConverter.ps1 -ExpandedBaseImage C: \ ProgramData \ Microsoft \ Windows \ Images \ BaseImage-14316 –Installer C: \ Brugere \ chris \ Downloads \ vlc \ vlc-2.2.2-win32.exe -InstallerArguments "/ S" -Destination C: \ Output \ VLC -PackageName "VLC" -Udgiver "CN = VideoLAN" -Version 0.2.2.2 -MakeAppx -Verbose
Værktøjet giver dig en .appx-pakke, som er UWP-versionen af appen.
Sådan installeres appen uden at underskrive den
Du skal normalt underskrive apps med en gyldig signatur, før de kan installeres. Microsoft anbefaler, at du opretter et selvsigneret certifikat og underskriver appen med det på din computer. Du kan gøre det ved hjælp af nedenstående instruktioner, hvis du vil.
Men hvis du bare vil installere appen på din egen computer, kan du gøre det selv hurtigere uden at rode med nogen underskrifter. Windows 10 giver dig mulighed for at installere apps uden at underskrive dem, hvis du installerer en "ikke-pakket" app fra et bibliotek.
For at gøre dette skal du åbne et PowerShell-vindue som administrator og køre følgende kommando:
Tilføj-AppxPackage -Path C: \ Path \ to \ AppxManifest.xml -Registrer
Du finder AppxManifest.xml-filen ved siden af Application.appx-filen i den angivne outputmappe.
Du kan nu starte applikationen fra din Start-menu. Det vil være en "Windows-app" i stedet for en "Desktop-app", men det ser ellers ud og fungerer som en normal desktop-app.
Sådan underskrives og installeres appen
Du behøver ikke at følge disse instruktioner, hvis du allerede har installeret applikationen. Dette er den sværere måde.
Du kan normalt kun installere en .appx-pakke, hvis den har en gyldig signatur. Microsoft anbefaler, at du bruger signtool.exe-applikationen, der følger med Windows 10 SDK, til at oprette et selvsigneret certifikat, som giver dig mulighed for at installere og teste applikationen på din egen computer.
Åbn bare et kommandopromptvindue som administrator, og kør følgende kommandoer for at oprette et selvsigneret certifikat og underskrive .appx-pakken med det:
cd "C: \ Program Files (x86) \ Windows Kits \ 10 \ bin \ x64"
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 tegn -f my.pfx -fd SHA256 -v C: \ Path \ til \ application.appx
Bemærk, at den udgiver, du angiver - det er den
"CN = Udgiver"
- skal matche den udgiver, du angav tidligere, da du oprettede AppX-filen. Så hvis vi fortsætter med vores VLC-eksempel ovenfra, bliver vi nødt til at bruge
"CN = VideoLAN"
.
Du bliver bedt om at indtaste en adgangskode. Du kan bare lade adgangskoden være tom.
Du kan nu installere .appx-pakken i et PowerShell-vindue (administrator) med kommandoen Add-AppxPackage:
Tilføj-AppxPackage C: \ Sti \ til \ application.appx
Denne funktion kan bruges af alle, men kun udviklere - og måske nogle systemadministratorer - vil gå denne rute. Heldigvis er processen ekstremt let for udviklere.