Bu makale, App Attach için uygulama paketini test etmek amacıyla Azure Virtual Desktop dışında bir msix dosyasını nasıl bağlayacağınızı (mount) ve kaydedeceğinizi (register) anlatmaktadır. App Attach’i destekleyen API’ler Windows 11 Enterprise ve Windows 10 Enterprise’da mevcuttur. Bu API’ler test amacıyla Azure Virtual Desktop dışında kullanılabilir, ancak Azure Virtual Desktop dışında App Attach veya MSIX App Attach için bir yönetim arayüzü bulunmamaktadır.
Uygulama paketini test etmek için ön koşullar şunlardır: Windows 11 Enterprise veya Windows 10 Enterprise çalıştıran bir cihaz; App Attach ile kullanılabilen bir image’a dağıtılmış MSIX formatında bir uygulama; CimFS image kullanılıyorsa CimDiskImage PowerShell modülünün yüklenmesi; test cihazında yerel yönetici haklarına sahip bir kullanıcı hesabı. Bu makalenin Azure Virtual Desktop dışında test sürecini anlattığını ve bu nedenle Azure Virtual Desktop dağıtımı gerekmediğini unutmayın. Microsoft, CimDiskImage PowerShell modülünü desteklememektedir, sorun yaşarsanız modülün GitHub deposunda bir istek göndermeniz gerekir.
Azure Virtual Desktop dışında MSIX paketini kullanma süreci dört aşamadan oluşur: Stage, Register Msix, Deregister ve Destage. Stage ve Destage işlemleri makine düzeyinde, Register ve Deregister işlemleri ise kullanıcı düzeyinde gerçekleştirilir. Kullanılacak komutlar, PowerShell sürümüne ve disk image formatına (CimFS, VHDX veya VHD) bağlı olarak değişiklik gösterecektir. Tüm MSIX paketleri bir sertifika içerir. MSIX paketi için sertifikanın ortamınızda güvenilir olduğundan emin olmanız gerekir.
MSIX paketini Stage etmeden önce, PowerShell sürümüne bağlı olarak belirli bir komutu çalıştırarak makineyi hazırlamanız gerekir. PowerShell 6 ve üzeri sürümlerde, Windows Runtime Package’ı indirip yüklemeniz ve ardından PowerShell’de Windows Runtime bileşenlerini etkinleştirmek için komutu çalıştırmanız gerekir. PowerShell 5.1 ve önceki sürümlerde, yalnızca Windows Runtime bileşenlerini etkinleştirmek için komutu çalıştırmanız yeterlidir.
Ardından, MSIX paketini Stage etmek için disk image’ı bağlamanız gerekir. CimFS image için Mount-CimDiskImage
komutunu kullanın. VHDX veya VHD image için Mount-DiskImage
komutunu kullanın. Destage adımı için $deviceId
değişkenini kaydedin.
Bağlama işleminden sonra, uygulama bilgilerini, MSIX paketinin tam adını alarak, manifest dizini için mutlak bir URI oluşturarak ve PackageManager API ile uygulama paketini Stage etmek için URI’yi kullanarak Stage işlemini tamamlayın. $stagingResult
değişkeninin Status
özelliğini kontrol ederek Stage işleminin ilerlemesini takip edin.
MSIX paketini Register etmek için, MSIX paket dizinindeki AppxManifest.xml dosyasının yolunu belirterek Add-AppxPackage
komutunu kullanın. Kayıt işleminden sonra, uygulama oturumunuzda kullanılabilir olacaktır.
MSIX paketini Deregister etmek için, diskin DeviceId
parametresini tekrar alın ve Remove-AppxPackage
komutu ile birlikte $msixPackageFullName
değişkenini kullanarak paketi kaldırın.
Son olarak, disk image’ı bağlantısını keserek ve Remove-AppxPackage -AllUsers
komutuyla paketin artık herhangi bir kullanıcı için kayıtlı olmadığından emin olarak MSIX paketini Destage edin. CimFS image için Dismount-CimDiskImage
komutunu, VHDX veya VHD image için ise Dismount-DiskImage
komutunu kullanın.
Başlangıçta, oturum açıldığında, oturumu kapatıldığında ve kapatıldığında Stage, Register msix, Deregister ve Destage aşamalarını otomatikleştiren bir script oluşturabilirsiniz. Çevrimdışı cihazlar için, WMI Bridge Provider’daki MDM_EnterpriseModernAppManagement_StoreLicenses02_01
sınıfını çağıran bir PowerShell script ile paket lisansını yüklemeniz gerekir.
Örnek scriptlere ve kullanım talimatlarına GitHub deposundan ulaşabilirsiniz. Bu scriptler tüm PowerShell sürümleri ve disk image formatlarıyla çalışır.