Başlarken: Elektron Uygulamanıza Windows API'leri Ekleme

Bu kılavuz, Windows Uygulaması Geliştirme CLI'sını kullanarak bir Electron uygulamasına yerel Windows özellikleri ekleme konusunda size yol gösterir. Electron uygulamanızdan modern Windows API'lerini çağırmayı, uygulama kimliğiyle test etmeyi ve dağıtım için paketlemeyi öğreneceksiniz.

Neler Oluşturacaksınız

Bu kılavuzun sonunda şunları içeren bir Electron uygulamanız olacak:

  • ✅ Modern Windows API'lerini (Windows SDK ve Windows Uygulama SDK'sı) çağırır
  • ✅JavaScript'ten (Phi Silika veya WinML) Windows yapay zeka özelliklerini kullanır
  • ✅ İsteğe bağlı olarak, bir API'nin yerel koda ihtiyacı olduğunda yerel eklenti kullanır
  • ✅ Korumalı API'leri test için uygulama kimliğiyle çalışır
  • ✅ Dağıtım için imzalı MSIX olarak paketler

Prerequisites

Başlamadan önce şunlara sahip olduğunuzdan emin olun:

  • Windows 11 (Phi Silica kullanıyorsanız Copilot+ PC)
  • Node.js - winget install OpenJS.NodeJS --source winget
  • .NET SDK v10 - winget install Microsoft.DotNet.SDK.10 --source winget
  • Visual Studio ile Yerel Masaüstü İş Yükü - winget install --id Microsoft.VisualStudio.Community --source winget --override "--add Microsoft.VisualStudio.Workload.NativeDesktop --includeRecommended --passive --wait"

İşlem

Electron uygulamanızı ayarlamak, modern Windows API'lerini çağırmak ve dağıtım için paketlemek için şu kılavuzları izleyin:

1. Geliştirme Ortamını Ayarlama

İlk olarak, gerekli araçlar ve SDK'larla geliştirme ortamınızı ayarlayacaksınız. Buna aşağıdakiler dahildir:

  • Elektron uygulaması oluşturma veya yapılandırma
  • winapp CLI'yi yükleme
  • Windows SDK'ları ve gerekli varlıkları başlatma
  • Derleme işlem hattınızı ayarlama

Kurulum ile Başlayın →

2. JavaScript'ten Windows API'leri çağırma

Kurulum sırasında JS bağlamalarını etkinleştirdiyseniz, .winapp/bindings/ oluşturulan .js sarmalayıcı sınıflarını ve Windows Uygulama SDK'sı API'leri için eşleşen .d.ts bildirimleri içerir. Tüm dışa aktarılan sınıflara erişmek için #winapp/bindings öğesini içe aktarın. #winapp/bindings paketinin içe aktarılması, @microsoft/dynwinrt-codegen0.1.0-preview.8 gerektirir; eski projeler, içe aktaran dosyaya göreli bir yolu koruyabilir (örneğin, src/index.js içinden require('../.winapp/bindings/index.js')) veya npm i -D @microsoft/dynwinrt-codegen@latest && npx winapp init --add-js-bindings ile yükseltebilir.

3. İsteğe bağlı: Yerel Eklenti Oluşturma

Oluşturulan JS bağlamaları ihtiyacınız olan Windows Uygulama SDK'sı API'yi kapsıyorsa bu adımı atlayın. Yerel eklentiyi yalnızca Win32, saf COM, yerel C/C++ kitaplıkları veya yönetilen .NET derlemeleri gibi yerel bir sınıra ihtiyacınız olduğunda oluşturun.

Seçenek A: C++ Bildirim Eklentisi Oluşturma

Windows Uygulama SDK'sı bildirim API'lerini çağıran bir C++ eklentisi oluşturmayı öğrenin. Bu, daha karmaşık senaryolara geçmeden önce yerel eklentileri anlamak için harika bir başlangıç noktasıdır.

C++ Bildirim Eklentisi oluşturma →

Seçenek B: Phi Silika Eklentisi Oluşturma

Cihazdaki metni özetlemek için Phi Silika AI modelini kullanan bir C# eklentisi oluşturmayı öğrenin. Phi Silica, NPU'ları olan Windows 11 cihazlarda yerel olarak çalışan küçük bir dil modelidir.

Phi Silica Addon → oluşturma

Seçenek C: WinML Eklentisi Oluşturma

Görüntü sınıflandırma, nesne algılama ve daha fazlası için özel ONNX modelleri çalıştırmak için Windows Machine Learning (WinML) kullanan bir C# eklentisi oluşturmayı öğrenin.

WinML Eklentisi → oluşturma

4. Dağıtım için Paketleme

Son olarak, uygulamanızı dağıtım için bir MSIX olarak paketleyeceksiniz. Buna aşağıdakiler dahildir:

  • Uygulamanızı üretim için oluşturma
  • MSIX paketi oluşturma ve imzalama
  • Yüklü paketi test etme
  • Dağıtım seçeneklerini anlama

Uygulamanızı paketleme →

Hızlı Gezinti

Aşama Guide Öğrenecekler
1️⃣ Kurulum Araçları yükleme, SDK'ları başlatma, derleme işlem hattını yapılandırma
2️⃣ Bildirim JS bağlamaları Windows Uygulama SDK'sı bildirimini doğrudan JavaScript'ten gösterme
2️⃣ Windows API’leri JS bağlamaları Windows Uygulama SDK'sı API'sini çağırın, ardından bağlamaları Windows SDK API'lerine genişletin
2️⃣ Phi Silika JS bağlamaları Yerel dil modelini doğrudan JavaScript'ten çağırma
2️⃣ WinML JS bağlamaları WinML yürütme sağlayıcılarını kaydetme ve JavaScript'ten ONNX Çalışma Zamanı çalıştırma
3️⃣ C++ Bildirim Eklentisi C++ eklentisi oluşturma, bildirim API'lerini çağırma, hata ayıklama kimliğiyle test
3️⃣ Phi Silika Eklentisi AI API'leri için C# eklentisi alternatifi oluşturma
3️⃣ WinML Eklentisi WinML için C# eklentisi alternatifi oluşturma
4️⃣ Paketleme Üretim uygulaması oluşturma, MSIX oluşturma, dağıtma

Ek Kaynaklar

Yardım Alın