1Sep

Kako to pretvoriti Windows Desktop App na Universal Windows App

click fraud protection

Uz ažuriranje Windows 10 godišnjice, Microsoft omogućuje razvojnim programerima pretvaranje tradicionalnih desktop aplikacija sustava Windows u aplikacije Universal Windows Platform( UWP).No svatko to može učiniti s bilo kojom aplikacijom, a ne samo razvojnim programerima.

S pretvaračem sustava Windows 10, samo ga dajte. msi ili. exe datoteci i ispljunuti paket. appx. Zatim možete prenijeti ovu aplikaciju na svoje računalo ili, ako ste programer aplikacije, možete poslati nastalu aplikaciju UWP u Windows Store. Ova značajka će stići za svakoga s Windows 10 godišnjicom ažuriranja, donoseći mnoge "naslijeđene" aplikacije u Windows Store.

Zašto biste to željeli učiniti

Ova značajka je krajnji rezultat Microsoftovog projekta Centennial, koji je dizajniran da donese te "naslijeđene" Win32 i. NET Windows aplikacije u Windows Store i novu Universal Windows platformu.

Možda se pitate zašto bi netko želio pretvoriti desktop aplikaciju u novu aplikaciju UWP.Jedna stvar, samo UWP aplikacije su dopuštene u Windows Storeu. To omogućuje razvojnim programerima da dobiju puno više očiju u svojim aplikacijama, a da ne spominjemo instalaciju jednim klikom, jednostavnu kupnju i automatska ažuriranja.

instagram viewer

Microsoftova nova aplikacijska platforma također je sandboxed, tako da postoji sigurnosna korist za pretvaranje starih aplikacija u UWP aplikacije. Alat za pretvornike analizirat će ponašanje aplikacije radne površine i stvoriti pješčani sanduk samo za njega, dajući mu samo dozvole potrebne za ispravno funkcioniranje. Ako je aplikacija ugrožena, neće se moći probiti iz tog ograničenog sandboxa i nereda s ostatkom sustava. Aplikacije će instalirati i deinstalirati čisto bez ostavljanja junk ležati oko na datotečni sustav i registra.

Rezultirajuće aplikacije su još uvijek snažne, unatoč sandboxu. Te aplikacije mogu koristiti UWP značajke, ali trebaju biti jednako snažne kao i tradicionalna aplikacija za stolna računala. Kao što kaže Microsoftova dokumentacija: "Kao aplikacija za UWP, vaša aplikacija može raditi ono što bi moglo učiniti kao klasičnu aplikaciju za radnu površinu. Interakciju s virtualiziranim prikazom registra i datotečnog sustava koji se ne može razlikovati od stvarnog registra i datotečnog sustava. "

Ograničenja

Ovdje postoje neka važna ograničenja. Najprije to možete učiniti samo na Windows 10 godišnjici ažuriranja. Za sada će raditi s Windows 10 Insider Preview gradjom 14316 i novijim, stoga se morate pridružiti programu Windows Insider i upotrijebiti nadogradnju Preglednika Insidera za Windows 10.

Ova značajka također zahtijeva Professional ili Enterprise izdanjaWindows 10. Korisnici Windows 10 Home neće moći koristiti konverter aplikacije za stolna računala. Od gradnje 14316 radi samo na sustavu Windows 10 Enterprise, ali dolazi podrška za Windows 10 Professional. Trenutačno se ovaj alat može koristiti samo na 64-bitnim verzijama sustava Windows i rezultirajući paket AppX može se instalirati samo na 64-bitnim verzijama sustava Windows. To će se promijeniti u budućnosti Insider gradi Windows 10.

Rezultirajuće aplikacije namijenjene su za računala sa sustavom Windows 10.Neće raditi na pametnim telefonima sustava Windows 10 Mobile, Xboxu One, HoloLensu, Surface Hubu i ostalim platformama za sustav Windows 10 koji pokreću UWP aplikacije. Međutim, ako ste razvojni programer, Microsoft nudi put za dobivanje vaše aplikacije za stolna računala u UWP aplikaciju za više platformi: "Ako odlučite premjestiti sve funkcije svoje aplikacije iz potpune cjelovitosti particije aplikacije iparticija spremnika aplikacija, a vaša će aplikacija moći raditi na bilo kojem uređaju sa sustavom Windows 10. "

Međutim, neke vrste ponašanja aplikacije nisu podržane. Aplikacija ne može zahtijevati da se pokrene kao administrator ili koristi druge vrste pristupa sustava niske razine. Microsoft nudi popis ponašanja koja nisu dopuštena.

Kako postaviti konverter radne površine

Pretpostavljajući da koristite dovoljno novu verziju preglednika Windows 10 Insider, možete preuzeti i instalirati Desktop App Converter s Microsoftovog web mjesta za razvojne programere. Preuzmite i datoteke programa DesktopAppConverter.zip i BaseImage-14316.wim. Izvadite preuzetu datoteku DesktopAppConverter.zip u mapu na računalu i stavite datoteku BaseImage u isti direktorij.(Ako imate novu verziju sustava Windows 10, trebali biste vidjeti novu BaseImage datoteku. Morat ćete upotrijebiti datoteku BaseImage s istim brojem verzije kao i instalirana verzija sustava Windows 10.)

Također ćete morati preuzetii instalirati Windows 10 SDK.

Zatim otvorite prozor PowerShell kao administrator. Da biste to učinili, otvorite izbornik Start, potražite "PowerShell", desnom tipkom miša kliknite prečac i odaberite "Pokreni kao administrator".

Promijenite pravila o izvršenju sustava PowerShell tako da pokrenete sljedeću naredbu. Prihvatite se promjenom upisivanjem y nakon toga.

Set-ExecutionPolicy zaobići

Pokrenite naredbu u nastavku, zamjenjujući C: \ Users \ NAME \ Downloads \ DesktopAppConvertor s putom do direktorija na računalu:

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

PostaviteDesktop App Converter izvodići sljedeću naredbu:

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

Ako se od vas zatraži da ponovo pokrenete računalo tijekom pokretanja bilo koje od ovih naredbi, ponovno pokrenite računalo i ponovo pokrenite naredbu,

Kako konvertirati desktop aplikaciju

Sada možete pokrenuti skriptu DesktopAppConverter.ps1 iz prozora administratorskog sustava PowerShell kako biste pretvorili desktop aplikaciju u UWP aplikaciju u jednoj naredbi. Za to ćete trebati instalater programa. Kao primjer, ovdje ćemo koristiti VLC.

Da biste vidjeli detaljan popis opcija, možete pokrenuti sljedeću naredbu u bilo kojem trenutku:

get-help. \ DesktopAppConverter.ps1 -detaljni

Evo naredbe koju možete koristiti i podesiti za svoju aplikaciju:

. \ DesktopAppConverter.ps1 -ProširenBaseImage C: \ ProgramData \ Microsoft \ Windows \ Images \ BaseImage-14316 -Installer C: \ Installer \ MyApp.exe -InstallerArguments "/ S" -Destination C: \ Output \ MyApp -PackageName "MyApp" -Publisher "CN = & lt-publisher_name & gt;”-Version 0.0.0.1 -MakeAppx -Verzija

Morate prilagoditi naredbu da biste dodali vlastiti naziv izdavača, verziju, naziv paketa i usmjerite ga u datoteku za instalaciju i odredišni direktorij koji želite. Opcija -InstallerArguments "/ S" prolazi prekidač / S na instalaciju, što mnogi instalacijski programi instaliraju tiho bez ikakvog korisničkog unosa. Aplikacije moraju biti instalirane bez ikakvog korisničkog unosa ili ih ne možete pretvoriti.

Instalacijski program aplikacije trebao bi biti u vlastitom direktoriju bez ikakvih drugih datoteka, jer će datoteke u istom direktoriju kao i instalacijski program biti kopirane u rezultirajući paket. appx.

Na primjer, ovdje koristimo VLC, stoga evo naredbe koju koristimo:

. \ DesktopAppConverter.ps1 -ExpandedBaseImage C: \ ProgramData \ Microsoft \ Windows \ Images \ BaseImage-14316 -Installer C: \ Users \ chris\ Downloads \ vlc \ vlc-2.2.2-win32.exe -InstallerArguments "/ S" -Odredište C: \ Output \ VLC -PackageName "VLC" -Publisher "CN = VideoLAN" -Version 0.2.2.2 -MakeAppx -Verbose

Alat će vam dati paket. appx, koji je inačica UWP aplikacije.

Kako instalirati aplikaciju bez potpisivanja

Normalno vam je potrebna potpisna aplikacija s važećim potpisom prije nego što se mogu instalirati. Microsoft preporučuje stvaranje self-signed certifikat i potpisivanje aplikacije s onim na vašem računalu. To možete učiniti pomoću uputa u nastavku, ako vam se sviđa.

Međutim, ako želite instalirati aplikaciju na svoje računalo, to možete učiniti brže, bez nametanja potpisa. Windows 10 vam omogućuje da instalirate aplikacije bez potpisivanja ako instalirate aplikaciju "unpackaged" iz direktorija.

Da biste to učinili, otvorite prozor PowerShell kao administrator i pokrenite sljedeću naredbu:

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

Pronađite datoteku AppxManifest.xml pored aplikacije.appx datoteku u izlazni direktorij koji ste naveli.

Sada možete pokrenuti program iz izbornika Start. Bit će to "aplikacija sustava Windows" umjesto "Aplikacija za stolna računala", ali će inače izgledati i raditi kao uobičajena aplikacija za stolna računala.

Kako prijaviti i instalirati aplikaciju

Ne morate slijediti ove upute ako ste već instalirali aplikaciju. Ovo je teži način.

Možete instalirati samo. appx paket ako ima važeći potpis. Microsoft preporučuje korištenje signtool.exe programa uključenog u SDK za sustav Windows 10 za izradu self-signed certifikat koji će vam omogućiti da instalirate i testirate aplikaciju na svom računalu.

Jednostavno otvorite prozor naredbenog retka kao administrator i pokrenite sljedeće naredbe za stvaranje self-signed certifikat i potpisati paket. appx s njom:

cd "C: \ Programske datoteke( x86) \ Windows Kits \ 10 \ bin \ x64" MakeCert.exe -r -h 0 -n "CN = Izdavač" -eku 1.3.6.1.5.5.7.3.3 -pe -svmy.pvk my.cer pvk2pfx.exe -vp my.pvk -spc my.cer -pfx my.pfx signtool.exe znak -f my.pfx -fd SHA256 -v C: \ Put \ u aplikaciji.appx

Napomenada je izdavač koji navedete - to je "CN = izdavač" - mora se podudarati s izdavačem koji ste prethodno odredili prilikom izrade datoteke AppX.Dakle, nastavljajući s našim primjerom VLC odozgo, morali bismo koristiti "CN = VideoLAN".

Od vas će se tražiti da unesete lozinku. Lozinku možete ostaviti prazno.

Sada možete instalirati paket. appx u prozor PowerShell( Administrator) pomoću naredbe Add-AppxPackage:

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

Ova značajka može koristiti bilo tko, ali samo programeri -i možda neki administratori sustava - hoće ići na ovu rutu. Srećom, proces je iznimno jednostavan za programere, pod pretpostavkom da njihove aplikacije ne zahtijevaju funkcionalnost koju UWP sandbox ne podržava.