1Sep

Jak převést aplikaci Windows Desktop na univerzální aplikaci Windows

S aktualizací 10 výročí Windows umožnilo vývojářům převést tradiční desktopové aplikace Windows do aplikací UWP( Universal Windows Platform).Ale někdo to může udělat s jakoukoliv aplikací - nejen vývojáři.

S převodníkem Windows 10, stačí mu dát soubor. msi nebo. exe a vypliví se balíček. appx. Tuto aplikaci pak můžete vyřadit z vlastního počítače nebo, pokud jste vývojářem aplikace, můžete odeslat výslednou aplikaci UWP do obchodu Windows Store. Tato funkce přichází pro každého, kdo má Windows 10 Anniversary Update, přináší mnoho "starších" aplikací do obchodu Windows.

Proč byste to chtěli udělat

Tato funkce je výsledkem projektu Centennial společnosti Microsoft, který je navržen tak, aby tyto "starší" desktopové aplikace Win32 a. NET Windows do Windows Store a nové univerzální platformy Windows.

Zajímá vás, proč by někdo chtěl převést aplikaci pro stolní počítače do nové aplikace UWP.Za prvé, v obchodě Windows jsou povoleny pouze aplikace UWP.To umožňuje vývojářům získat oči mnohem více o jejich aplikacích, nemluvě o instalaci s jedním kliknutím, snadný nákup a automatické aktualizace.

Nová aplikační platforma společnosti Microsoft je také vybavena sandboxem, takže je výhodou pro zabezpečení konverze starých aplikací na aplikace UWP.Převaděč nástroj bude analyzovat chování vaší pracovní plochy a vytvářet karanténu právě pro ni, což jí uděluje pouze oprávnění, která potřebuje k správnému fungování.Pokud je aplikace ohrožena, nebude schopna vyjít z této omezené karantény a nepořádek se zbytkem systému. Aplikace se nainstalují a odinstalují čistě, aniž by zanechali nevyžádanou poštu v systému souborů a v registru.

Výsledné aplikace jsou stále silné, i přes karanténu. Tyto aplikace mohou využívat funkce UWP, ale měly by být stejně výkonné jako tradiční desktopové aplikace. Jak uvádí dokumentace společnosti Microsoft: "Jako aplikace typu UWP může vaše aplikace dělat věci, které by mohla dělat jako klasickou aplikaci pro stolní počítače. Spolupracuje s virtualizovaným náhledem registru a souborového systému, který je nerozlišitelný od skutečného registru a souborového systému. "

Omezení

Zde jsou některá důležitá omezení.Za prvé, můžete to udělat pouze na Windows 10 Anniversary Update. Pro tuto chvíli bude pracovat s náhledem na systém Windows 10 Insider sestavit 14316 a vyšší, takže se budete muset připojit k programu Windows Insider a použít náhled Insider pro sestavení systému Windows 10.

Tato funkce také vyžaduje vydání edice Professional nebo EnterpriseWindows 10. Uživatelé domény Windows 10 nebudou moci používat aplikaci Desktop App Converter. Od verze 14316 pracovalo pouze na systému Windows 10 Enterprise, ale přichází podpora pro Windows 10 Professional. Tento nástroj lze v současné době používat pouze v 64bitových verzích systému Windows a výsledný balíček AppX lze nainstalovat pouze v 64bitových verzích systému Windows. To se změní v budoucích sestavách Insider systému Windows 10.

Výsledné aplikace jsou určeny pro počítače Windows 10.Nebudou fungovat na smartphonech Windows 10 Mobile, Xbox One, HoloLens, Surface Hub a dalších platformách Windows 10, které spouštějí aplikace UWP.Pokud jste vývojářem, nabízí společnost Microsoft cestu k získání aplikace pro stolní počítače do aplikace UWP napříč platformou: "Pokud se rozhodnete přesunout všechny funkce své aplikace mimo oddíl plné důvěryhodnosti aplikace a do aplikaceoddíl kontejneru aplikace, aplikace se bude moci spustit na libovolném zařízení systému Windows 10. "

Některé typy chování aplikací však nejsou podporovány. Aplikace nemůže vyžadovat, aby byla spuštěna jako správce nebo aby používala jiné typy přístupu na nižší úrovni systému. Společnost Microsoft poskytuje seznam chování, které nejsou povoleny.

Jak nastavit převodník aplikací na ploše

Za předpokladu, že používáte dostatečně novou sestavu náhledu Windows 10 Insider, můžete stahovat a nainstalovat převaděč aplikací na ploše z webu vývojáře společnosti Microsoft. Stahujte soubory DesktopAppConverter.zip a BaseImage-14316.wim. Extrahujte stažený soubor DesktopAppConverter.zip do složky v počítači a umístěte soubor BaseImage do stejného adresáře.(Pokud je k dispozici nová sestava systému Windows 10, měli byste vidět nový soubor BaseImage. Budete muset použít soubor BaseImage se stejným číslem verze jako instalovaná sestava Windows 10.)

Budete také muset stáhnouta nainstalujte sadu Windows 10 SDK.

Dále otevřete okno PowerShell jako správce. Chcete-li tak učinit, otevřete nabídku Start, vyhledejte "PowerShell", klepněte pravým tlačítkem na jeho zástupce a vyberte možnost "Spustit jako správce".

Změňte politiku výkonu PowerShell spuštěním následujícího příkazu. Souhlasíte se změnou zadáním y poté.

Set-ExecutionPolicy bypass

Spusťte následující příkaz a nahraďte C: \ Users \ NAME \ Downloads \ DesktopAppConvertor cestu k adresáři v počítači:

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

Desktop App Converter spusťte následující příkaz:

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

Pokud budete vyzváni k restartování při spouštění některého z těchto příkazů, restartujte počítač a znovu spusťte příkaz.

Jak převést aplikaci Desktop

Nyní můžete spustit skript DesktopAppConverter.ps1 z okna PowerShell Administrator, abyste převedli plošnou aplikaci do aplikace UWP v jediném příkazu. K tomu budete potřebovat instalační program aplikace. Jako příklad použijeme VLC zde.

Chcete-li zobrazit podrobný seznam možností, můžete kdykoli spustit následující příkaz:

get-help. \ DesktopAppConverter.ps1 -detailní

Zde je příkaz, který můžete použít a upravit pro vaši aplikaci:

. \ DesktopAppConverter.ps1 -ExpandedBaseImage C: \ ProgramData \ Microsoft \ Windows \ Obrázky \ BaseImage-14316 -Instalátor C: \ Installer \ MyApp.exe -InstallerArguments "/ S" -Zastavení C: \ Output \ MyApp -PackageName "MyApp"; publisher_name & gt; "-Version 0.0.0.1 -MakeAppx -Verbose

Budete muset upravit příkaz, chcete-li přidat vlastní název vydavatele, verzi, název balíčku a přejděte na soubor instalačního souboru a cílový adresář, který chcete. Volba -InstallerArguments "/ S" přejde přepínačem / S k instalačnímu programu, což způsobuje, že mnoho instalátorů aplikací instaluje tichým způsobem bez zadávání uživatele. Aplikace musí být instalovatelné bez zadání uživatele nebo je nelze převést.

Instalační program aplikace by měl být ve vlastním adresáři bez dalších souborů, protože soubory ve stejném adresáři jako instalační program budou zkopírovány do výsledného balíčku. appx.

Například používáme VLC zde, takže zde je příkaz, který bychom použili:

. \ DesktopAppConverter.ps1 -ExpandedBaseImage C: \ ProgramData \ Microsoft \ Windows \ Images \ BaseImage-14316 Installer C: \ Users \ chris\ Downloads \ vlc \ vlc-2.2.2-win32.exe -InstallerArguments "/ S" -Zastavení C: \ Výstup \ VLC -PackageName "VLC"Nástroj vám dává balík. appx, což je verze UWP aplikace.

Jak nainstalovat aplikaci bez jejího podepisování

Obvykle je nutné před instalací nainstalovat podepsané aplikace s platným podpisem. Společnost Microsoft doporučuje vytvoření certifikátu s vlastním podpisem a podepisování aplikace s vaším počítačem. Můžete to udělat pomocí pokynů níže, pokud se vám líbí.

Pokud však chcete aplikaci nainstalovat pouze na svůj počítač, můžete to udělat sami rychleji, aniž byste museli vyměňovat podpisy. Systém Windows 10 umožňuje instalaci aplikací bez podepisování, pokud instalujete aplikaci "unpackaged" z adresáře.

Chcete-li to provést, otevřete okno PowerShell jako správce a spusťte následující příkaz:

Add-AppxPackage -Path C: \ Path \ to \ AppxManifest.xml -Zaregistrovat

Soubor AppxManifest.xml naleznete vedle aplikace.appx souboru ve výstupním adresáři, který jste zadali.

Nyní můžete spustit aplikaci z nabídky Start. Bude to "aplikace pro Windows" namísto "aplikace pro stolní počítače", ale bude vypadat jinak a pracovat jako běžná aplikace pro stolní počítače.

Jak se přihlásit a nainstalovat aplikaci

Pokud již aplikaci nainstalujete, nemusíte se řídit těmito pokyny. To je těžší způsob.

Obvykle lze nainstalovat pouze balík. appx, pokud má platný podpis. Společnost Microsoft doporučuje použít aplikaci signtool.exe součástí sady Windows 10 SDK k vytvoření certifikátu s vlastním podpisem, který vám umožní nainstalovat a otestovat aplikaci na vašem počítači.

Stačí otevřít okno Příkazový řádek jako správce a spustit následující příkazy pro vytvoření certifikátu s vlastním podpisem a podepsat balíček. appx s ním:

cd "C: \ Program Files( x86) \ Windows Kity \ 10 \ bin \ x64" MakeCert.exe -r -h 0 -n "CN = Vydavatel" -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 přihlášení -f my.pfx -fd SHA256 -v C: \ Cesta \ to \ application.appx

Poznámkaže zadavatel, který zadáte - to je "CN = Publisher" - musí odpovídat majiteli stránek, který jste zadali dříve při vytváření souboru AppX.Takže pokračováním v našem příkladu VLC z výše uvedeného bychom museli použít "CN = VideoLAN".

Budete požádáni o zadání hesla. Můžete pouze nechat heslo prázdné.

Nyní můžete nainstalovat balíček. appx v okně PowerShell( Administrator) pomocí příkazu Add-AppxPackage:

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

Tuto funkci můžete použít kdokoliv, ale pouze vývojáři -a možná i někteří systémoví administrátoři - chtějí jít touto cestou. Naštěstí je proces pro vývojáře velmi snadný, za předpokladu, že jejich aplikace nevyžadují žádnou funkčnost, která není podporována karanténou UWP.