Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu kılavuzda, Electron uygulamanızı Windows API'leriyle dağıtmak için bir MSIX paketinin nasıl oluşturulacağı gösterilmektedir.
Önkoşullar
Paketlemeden önce şunları yaptığınızdan emin olun:
- Geliştirme ortamı kurulumu tamamlandı
- [İSTEĞE BAĞLı] Eklentinizi oluşturup test etti (örneğin, Phi Silica eklentisi veya WinML eklentisi)
-
npm startile uygulamanızın doğru şekilde çalıştığı doğrulandı.
Paketlemeye Hazırlanma
Geçici dosyaları son derlemenin dışında tutmak için Electron Forge'ı yapılandırın.
ignore dizisine packagerConfig arrayini forge.config.js ekleyin.
module.exports = {
packagerConfig: {
asar: true,
ignore: [
/^\/\.winapp\/(?!bindings($|\/))/, // SDK files except generated JS bindings
/^\/winapp\.yaml$/, // SDK config
/\.pfx$/, // Certificate files
/\.pdb$/, // Debug symbols
/\/obj($|\/)/, // C# build artifacts
/\/bin($|\/)/, // C# build artifacts
/\.msix$/ // MSIX packages
]
},
// ... rest of your config
};
Oluşturulan .winapp/bindings dizini, #winapp/bindings uygulamanın package.json#imports haritası aracılığıyla ona çözümlendiği için paketlenen uygulamada kalmalıdır.
Important
Paketlenmiş uygulama yapınıza Package.appxmanifest uygun olduğunu doğrulayın.
- Paketlenmiş çıkışınızdaki
Executableözniteliği, doğru .exe dosyasına işaret etmelidir.
Geliştirme Sertifikası Oluşturma
İmzalı bir MSIX paketi oluşturmadan önce bir geliştirme sertifikası oluşturun:
npx winapp cert generate
Bu, proje kökünüzde MSIX paketini imzalamak için kullanılacak bir devcert.pfx dosya oluşturur.
Paketleme Seçenekleri
Electron uygulamanız için MSIX paketi oluşturmak için iki seçeneğiniz vardır:
- Seçenek 1: Winapp CLI'yi doğrudan kullanma - Daha fazla yapılandırılabilir, herhangi bir paketleyiciyle çalışır
- Seçenek 2: Electron Forge MSIX Maker kullanma - Forge iş akışına daha entegre
İş akışınıza en uygun seçeneği belirleyin.
Seçenek 1: Winapp CLI'nin doğrudan kullanılması (Esneklik için önerilir)
Bu yaklaşım size paketleme işlemi üzerinde daha fazla denetim sağlar ve herhangi bir Elektron paketleyici ile çalışır.
Electron Uygulamanızı Oluşturma
Electron uygulamanızı MSIX ile paketlemek için önce üretim düzenini oluşturmamız gerekir. Electron Forge ile paket komutunu kullanabiliriz:
# Package with Electron Forge (or your preferred packager)
npx electron-forge package
Bu işlem, klasörde uygulamanızın ./out/ üretim sürümünü oluşturur. Tam klasör adı, uygulama adınız ve mimarinize (örn. my-windows-app-win32-x64) bağlıdır.
MSIX Paketini Oluşturma
Şimdi paketlenmiş uygulamanızdan bir MSIX paketi oluşturmak ve imzalamak için winapp CLI'yi kullanın:
npx winapp pack .\out\<your-app-folder> --output .\out --cert .\devcert.pfx --manifest .\Package.appxmanifest
değerini Electron Forge tarafından oluşturulan gerçek klasör adıyla değiştirin <your-app-folder> (örneğin, my-windows-app-win32-x64 x64 veya my-windows-app-win32-arm64 ARM64 için).
seçeneği --manifest isteğe bağlıdır. Sağlanmadıysa paketlenen klasörde veya geçerli dizinde Package.appxmanifest araması yapacaktır.
Bu --cert seçenek ayrıca isteğe bağlıdır. Sağlanmazsa, msix imzalanmaz.
Bu --output seçenek ayrıca isteğe bağlıdır. Sağlanmazsa geçerli dizin kullanılır.
MSIX paketi olarak ./out/<your-app-name>.msixoluşturulur.
Tavsiye
Kolaylık sağlamak için betiklerinize package.json şu komutları ekleyebilirsiniz:
{
"scripts": {
"package-msix": "npm run build-csAddon && npx electron-forge package && npx winapp pack ./out/my-windows-app-win32-x64 --output ./out --cert ./devcert.pfx --manifest Package.appxmanifest"
}
}
Yolu çıkış klasörünüzün gerçek adıyla eşleşecek şekilde güncellediğinizden emin olun.
Seçenek 2: Electron Forge MSIX Maker kullanma (Forge kullanıcıları için)
Zaten Electron Forge kullanıyorsanız, oluşturucuyu kullanarak MSIX paketlemesini doğrudan Forge iş akışına tümleştirebilirsiniz.
MSIX Maker'ı yükleme
npm install --save-dev @electron-forge/maker-msix
forge.config.js dosyasını yapılandırın
MSIX oluşturucuyu forge.config.js üzerine ekleyin.
module.exports = {
// ... other config
makers: [
{
name: '@electron-forge/maker-msix',
config: {
appManifest: '.\\Package.appxmanifest',
windowsSignOptions: {
certificateFile: '.\\devcert.pfx',
certificatePassword: 'password'
}
}
}
],
// ... rest of your config
};
Package.appxmanifest dosyasını güncelle
Electron Forge MSIX oluşturucu, winapp CLI yaklaşımından farklı bir klasör düzeni kullanır. Uygulamanızı MSIX'teki bir app\ klasörün içine yerleştirir. Bu klasör paketleme sırasında otomatik olarak oluşturulur; kendiniz oluşturmanız gerekmez. Güncelleştirin Executable yolunu Package.appxmanifest'de app klasörüne işaret edecek şekilde.
<Applications>
<Application Id="myApp"
Executable="app\my-app.exe"
EntryPoint="Windows.FullTrustApplication">
<!-- ... rest of your application config -->
</Application>
</Applications>
my-app.exe ile, gerçek yürütülebilir dosya adınızı değiştirin. Bu, productName içindeki name (veya package.json) alanına dayanır.
Note
Forge MSIX oluşturucu, MinVersionPackage.appxmanifest temel alan Windows SDK araçlarını arar. WindowsKit'in bulunamadığını gösteren bir hata alırsanız, içinde belirtilen MinVersion SDK sürümünün makinenizde yüklü olduğundan emin olun veya yüklü bir SDK sürümüyle eşleşecek şekilde güncelleştirin MinVersion .
MSIX Paketini Oluşturma
Artık MSIX paketini oluşturabilirsiniz. Bayrağını --targets kullanarak yalnızca MSIX oluşturucusunu çalıştırın (aksi takdirde Forge tüm yapılandırılmış oluşturucuları çalıştırır):
npx electron-forge make --targets @electron-forge/maker-msix
MSIX paketi ./out/make/msix/<arch>/ klasöründe (örneğin, ./out/make/msix/arm64/ veya ./out/make/msix/x64/) oluşturulacaktır.
Tavsiye
Bu yaklaşım Electron Forge iş akışıyla daha tümleşiktir ve paketleme ve MSIX oluşturma işlemlerini tek adımda otomatik olarak gerçekleştirir.
MSIX'i Yükleme ve Test Edin
İlk olarak geliştirme sertifikasını yükleyin (tek seferlik kurulum):
# Run as Administrator:
npx winapp cert install .\devcert.pfx
Şimdi MSIX paketini yükleyin. msix dosyasına çift tıklayın veya aşağıdaki komutu çalıştırın:
# Option 1 output:
Add-AppxPackage .\out\<your-app-name>.msix
# Option 2 output:
Add-AppxPackage .\out\make\msix\<arch>\<your-app-name>.msix
<your-app-name> ve <arch> değerlerini derleme çıkışınızdaki gerçek değerlerle değiştirin.
Uygulamanız Başlat Menüsünde görünür! Başlatın ve Windows API özelliklerinizi test edin.
Dağıtım Seçenekleri
Çalışan bir MSIX paketiniz olduğunda, uygulamanızı dağıtmak için çeşitli seçenekleriniz vardır:
Doğrudan İndirme
MsIX paketini doğrudan indirmek için web sitenizde barındırın. Kullanıcıların güvenlik uyarısı olmadan yükleyebilmesi için güvenilir bir sertifika yetkilisinden (CA) bir kod imzalama sertifikasıyla imzaladığınızdan emin olun.
Microsoft Store
En geniş dağıtım ve otomatik güncelleştirmeler için uygulamanızı Microsoft Store gönderin. Yapmanız gerekenler:
- Microsoft İş Ortağı Merkezi hesabı oluşturma
- Uygulamanızın adını ayırın
-
Package.appxmanifestöğesini mağaza kimliğinizle güncelleyin. msix'i imzalamanız gerekmez; mağaza yayımlama işlemi otomatik olarak imzalar. - Sertifikasyon için gönder
Daha fazla bilgi edinin:
Kurumsal Dağıtım
Aşağıdakiler aracılığıyla doğrudan kurumsal müşterilere dağıtabilirsiniz:
- Şirket Portalı - Intune kullanan kuruluşlar için
- Doğrudan İndirme - MSIX'i web sitenizde barındırın
- Dışarıdan Yükleme - PowerShell veya Uygulama Yükleyicisi aracılığıyla yükleme
Daha fazla bilgi edinin: Uygulamaları Mağaza dışında dağıtma
Uygulama Yükleyicisi
Otomatik güncelleştirmeler için bir .appinstaller dosya oluşturun:
<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
Uri="https://your-domain.com/packages/myapp.appinstaller"
Version="1.0.0.0"
xmlns="http://schemas.microsoft.com/appx/appinstaller/2017/2">
<MainPackage
Name="YourAppName"
Version="1.0.0.0"
Publisher="CN=YourPublisher"
Uri="https://your-domain.com/packages/myapp.msix"
ProcessorArchitecture="x64" />
<UpdateSettings>
<OnLaunch HoursBetweenUpdateChecks="24" />
</UpdateSettings>
</AppInstaller>
Daha fazla bilgi edinin: Uygulama Yükleyicisi dosyasına genel bakış
Sonraki Adımlar
Tebrikler! Windows etkin Electron uygulamanızı dağıtım için başarıyla paketlediniz! 🎉
Ek Kaynaklar
- winapp CLI Belgeleri - Tam CLI Referansı
- Örnek Elektron Uygulaması - Tam çalışma örneği
- MSIX Paketleme Belgeleri - MSIX hakkında daha fazla bilgi edinin
- Windows Uygulaması Sertifikasyon Seti - Mağaza göndermeden önce uygulamanızı test edin
Genel Bakışa Dön
- Başlarken Genel Bakış - Ana kılavuza dönme
- Geliştirme Ortamı Ayarlama - Kurulum adımlarını gözden geçirme
- Phi Silika Eklentisi Oluşturma - Eklenti oluşturmayı gözden geçirme
- WinML Eklentisi Oluşturma - WinML tümleştirmesi hakkında bilgi edinin
Yardım Alın
- Hata mı buldunuz?Sorun bildirin
Dağıtımınız kutlu olsun! 🚀
Windows developer