1Sep

Ako previesť aplikáciu Windows Desktop na univerzálnu aplikáciu systému Windows

Vďaka aktualizácii výročia Windows 10 spoločnosť Microsoft umožňuje vývojárom konvertovať tradičné desktopové aplikácie Windows na aplikácie UWP( Universal Windows Platform).Ale ktokoľvek to môže robiť s akoukoľvek aplikáciou - nielen s vývojármi.

S prevodníkom Windows 10 stačí mu dať súbor. msi alebo. exe a vyplienú balík. appx. Potom môžete túto aplikáciu nainštalovať na svoj vlastný počítač alebo, ak ste vývojár aplikácie, môžete odoslať výslednú aplikáciu UWP do obchodu Windows. Táto funkcia prichádza pre všetkých používateľov s aktualizáciou výročia systému Windows 10 a prinášajú do obchodného systému Windows množstvo "starších" aplikácií.

Prečo by ste to chceli urobiť

Táto funkcia je výsledkom projektu Centennial spoločnosti Microsoft, ktorý je navrhnutý tak, aby priniesol tieto "staršie" desktopové aplikácie Win32 a. NET Windows do systému Windows Store a novej univerzálnej platformy Windows.

Možno sa čuduje, prečo by niekto chcel previesť desktopovú aplikáciu do novej aplikácie UWP.Jedna vec je povolená iba v aplikáciách UWP v obchode Windows. To umožňuje vývojárom získať oveľa viac očí v ich aplikáciách, nehovoriac o inštalácii s jedným kliknutím, jednoduchom nákupe a automatických aktualizáciách.

Nová aplikačná platforma spoločnosti Microsoft je tiež vybavená karanténami, takže pre konverziu starých aplikácií na aplikácie UWP prináša bezpečnostnú výhodu. Nástroj na prevodník analyzuje správanie vašich aplikácií na pracovnej ploche a vytvorí preň práve karanténu, ktorá im dáva iba povolenia, ktoré potrebuje na správne fungovanie. Ak je aplikácia kompromitovaná, nebude môcť preniknúť z tejto obmedzenej karantény a neporiadok so zvyškom systému. Aplikácie sa nainštalujú a odinštalujú čisto, bez toho, aby sa zanechali nevyžiadanej pošty v súborovom systéme a v registri.

Výsledné aplikácie sú stále napriek pieskovisku. Tieto aplikácie môžu využívať funkcie UWP, ale mali by byť rovnako výkonné ako tradičné desktopové aplikácie. Dokumentácia spoločnosti Microsoft hovorí: "Ako aplikácia UWP môže vaša aplikácia robiť to, čo môže robiť ako klasickú aplikáciu pre počítače. Spolupracuje s virtualizovaným pohľadom na register a súborový systém, ktorý je nerozoznateľný od skutočného registra a súborového systému. "

Obmedzenia

Tu sú niektoré dôležité obmedzenia. Po prvé, môžete to urobiť len na Windows 10 Anniversary Update. Pre túto chvíľu to bude fungovať s Windows 10 Insider Preview vybudovať 14316 a vyššie, takže sa budete musieť pripojiť k programu Windows Insider a použiť Insider Preview zostaviť Windows 10.

Táto funkcia tiež vyžaduje buď Professional alebo Enterprise vydaniaWindows 10. Windows 10 domácich používateľov nebude môcť používať aplikáciu Desktop App Converter. Od verzie 14316 fungovala len na Windows 10 Enterprise, ale prichádza podpora pre Windows 10 Professional. V súčasnosti sa tento nástroj môže používať iba v 64-bitových verziách systému Windows a výsledný balík AppX môže byť nainštalovaný iba v 64-bitových verziách systému Windows. To sa zmení v budúcich zostavách Insider systému Windows 10.

Výsledné aplikácie sú určené pre počítače Windows 10.Nebudú pracovať na systémoch Windows 10 Mobile smartphone, Xbox One, HoloLens, Surface Hub a ostatných platformách Windows 10, ktoré spúšťajú aplikácie UWP.Ak ste vývojár, spoločnosť Microsoft ponúka cestu k získaniu vašej aplikácie pre stolné počítače do aplikácie UWP na viacerých platformách: "Ak sa rozhodnete presunúť všetky funkcie vašej aplikácie mimo oblasť plnej dôvery aplikácie a do aplikácieapp kontajner aplikácie, potom vaša aplikácia bude môcť bežať na ľubovoľnom zariadení Windows 10. "

Niektoré typy správania aplikácií však nie sú podporované.Aplikácia nemôže vyžadovať, aby bola spustená ako správca alebo aby používala iné typy prístupu na nižšiu úroveň systému. Spoločnosť Microsoft poskytuje zoznam správaní, ktoré nie sú povolené.

Ako nastaviť aplikáciu Desktop App Converter

Predpokladajme, že používate dostatočne novú zostavu náhľadu Windows 10 Insider, môžete prevziať a nainštalovať aplikáciu Desktop App Converter z lokality Developer spoločnosti Microsoft. Prevezmite súbory DesktopAppConverter.zip a BaseImage-14316.wim. Extrahujte stiahnutý súbor DesktopAppConverter.zip do priečinka v počítači a umiestnite súbor BaseImage do rovnakého adresára.(Ak je k dispozícii nová zostava systému Windows 10, mali by ste vidieť nový súbor BaseImage. Budete musieť použiť súbor BaseImage s rovnakým číslom verzie ako nainštalovaná zostava systému Windows 10.)

Budete tiež musieť stiahnuťa nainštalujte súpravu Windows 10 SDK.

Potom otvorte okno PowerShell ako správca. Ak to chcete urobiť, otvorte ponuku Štart, vyhľadajte "PowerShell", kliknite pravým tlačidlom myši na jeho skratku a zvoľte "Spustiť ako správca".

Zmena politiky výkonu PowerShell spustením nasledujúceho príkazu. Súhlaste s touto zmenou zadaním y.

Set-ExecutionPolicy bypass

Spustite príkaz nižšie a nahraďte C: \ Users \ NAME \ Downloads \ DesktopAppConvertor cestu k adresáru na vašom počítači:

cd -Path C: \ Users \ NAME \ Downloads \ DesktopAppConvertor

NastavenieDesktop App Converter spustením nasledovného príkazu:

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

Ak budete vyzvaný k reštartu pri spustení niektorého z týchto príkazov, reštartujte počítač a potom spustite príkaz znovu,

Ako previesť aplikáciu na plochu

Teraz môžete spustiť skript DesktopAppConverter.ps1 z okna Administrator PowerShell, aby ste previedli desktopovú aplikáciu do aplikácie UWP v jednom príkaze. Na to budete potrebovať inštalačný program aplikácie. Napríklad tu budeme používať VLC.

Ak chcete zobraziť podrobný zoznam možností, kedykoľvek môžete spustiť nasledujúci príkaz:

get-help. \ DesktopAppConverter.ps1 -detailný

Tu je príkaz, ktorý môžete použiť a upraviť pre vašu aplikáciu:

. \ DesktopAppConverter.ps1 -ExpandedBaseImage C: \ ProgramData \ Microsoft \ Windows \ Images \ BaseImage-14316 - Inštalátor C: \ Installer \ MyApp.exe -InstallerArguments "/ S" -Destinácia C: \ Output \ MyApp -PackageName "MyApp"; PUBLISHER_NAME & gt; "-Verzia 0.0.0.1 -MakeAppx -Verbose

Ak chcete pridať vlastný názov vydavateľa, verziu alebo názov balíka, musíte ho upraviť a nasmerovať na inštalačný súbor a cieľový adresár, ktorý uprednostňujete. Voľba -InstallerArguments "/ S" prechádza prepínačom / S do inštalačného programu, čo mnohých inštalátorov aplikácií inštaluje ticho bez zadania užívateľov. Aplikácie musia byť nainštalovateľné bez zadania používateľov alebo ich nemôžete previesť.

Inštalačný program aplikácie by mal byť vo svojom vlastnom adresári bez ďalších súborov, pretože súbory v rovnakom adresári ako inštalačný program budú skopírované do výsledného balíka. appx.

Napríklad tu používame VLC, takže tu je príkaz, ktorý by sme použili:

. \ DesktopAppConverter.ps1 -ExpandedBaseImage C: \ ProgramData \ Microsoft \ Windows \ Images \ BaseImage-14316 - Inštalátor C: \ Users \ chris\ Downloads \ vlc \ vlc-2.2.2-win32.exe -InstallerArguments "/ S" -Destinácia C: \ Výstup \ VLC -PackageName "VLC" -Publisher "CN = VideoLAN" -Version 0.2.2.2 -MakeAppx -Verbose

Nástroj vám poskytne balíček. appx, čo je verzia aplikácie UWP.

Ako nainštalovať aplikáciu bez jej podpísania

Zvyčajne ste si vyžadovali podpísanie aplikácií s platným podpisom ešte predtým, ako je možné ich nainštalovať.Spoločnosť Microsoft odporúča vytvoriť certifikát s vlastným podpisom a aplikáciu podpísať s aplikáciou vo vašom počítači. Môžete to urobiť pomocou pokynov nižšie, ak chcete.

Ak však chcete aplikáciu nainštalovať na vlastný počítač, môžete to urobiť sami rýchlejšie, bez toho, aby ste narazili na nejaké podpisy. Systém Windows 10 umožňuje inštalovať aplikácie bez ich podpisovania, ak inštalujete aplikáciu "nezabalená" z adresára.

Ak chcete urobiť, otvorte okno PowerShell ako správca a spustite nasledujúci príkaz:

Add-AppxPackage -Path C: \ Path \ to \ AppxManifest.xml -Zaregistrovať

Súbor AppxManifest.xml nájdete vedľa aplikácie.appx súbor vo výstupnom adresári, ktorý ste zadali.

Teraz môžete spustiť aplikáciu z ponuky Štart. Bude to "aplikácia systému Windows" namiesto "aplikácie pre stolné počítače", ale bude inak vyzerať a pracovať ako normálna aplikácia pre počítače.

Ako prihlásiť a nainštalovať aplikáciu

Nemusíte sa riadiť týmito pokynmi, ak ste už nainštalovali aplikáciu. Toto je ťažší spôsob.

Zvyčajne môžete nainštalovať iba balík. appx, ak má platný podpis. Spoločnosť Microsoft odporúča použiť aplikáciu signtool.exe, ktorá je súčasťou súpravy Windows 10 SDK, aby ste vytvorili certifikát s vlastným podpisom, ktorý vám umožní nainštalovať a otestovať aplikáciu na vašom počítači.

Stačí otvoriť okno príkazového riadka ako správca a spustiť nasledujúce príkazy na vytvorenie certifikátu s vlastným podpisom a podpísať balík. appx s ním:

cd "C: \ Program Files( x86) \ Windows Kits \ 10 \ bin \ x64" MakeCert.exe -r -h 0 -n "CN = Vydavateľ" -eku 1.3.6.1.5.5.7.3.3 -pe -svmy.pvk my.cer pvk2pfx.exe -pvk my.pvk -spc my.cer -pfx my.pfx signtool.exe prihlásenie -f my.pfx -fd SHA256 -v C: \ Cesta \ to \ application.appx

Poznámkaže zadávateľ, ktorý zadáte - to je "CN = Publisher" - musí zodpovedať vydavateľovi, ktorý ste zadali skôr pri vytváraní súboru AppX.Takže pokračovaním v príklade VLC zhora by sme museli použiť "CN = VideoLAN".

Budete požiadaní o zadanie hesla. Môžete nechať heslo prázdne.

Teraz môžete nainštalovať balík. appx v okne PowerShell( Administrator) s príkazom Add-AppxPackage:

Add-AppxPackage C: \ Path \ to \ application.appx

Táto funkcia môže byť používaná každým,a možno niektorí administrátori systému - budú chcieť ísť touto cestou. Našťastie proces je extrémne jednoduchý pre vývojárov, za predpokladu, že ich aplikácie nevyžadujú žiadne funkcie, ktoré nie sú podporované karanténou UWP.