Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Deze handleiding laat zien hoe u een systeemeigen C++-invoegtoepassing maakt die gebruikmaakt van de Windows App SDK meldings-API's in uw Electron-app. Dit is een goed uitgangspunt voor het begrijpen van systeemeigen invoegtoepassingen voordat u dieper ingaat op complexere scenario's.
Vereiste voorwaarden
- De installatie van de ontwikkelomgeving is voltooid
- Windows 11
Stap 1: Een systeemeigen C++-invoegtoepassing maken
Gebruik de winapp CLI om een C++-invoegtoepassingssjabloon te genereren:
npx winapp node create-addon --template cpp --name nativeWindowsAddon
Hiermee maakt u een nativeWindowsAddon/ map met:
-
addon.cc- Uw C++-code die Windows-API's aanroept -
binding.gyp- Buildconfiguratie voor systeemeigen compilatie
Met de opdracht wordt ook een build-addon script toegevoegd aan uw package.json.
Bouw de invoegtoepassing:
npm run build-addon
Stap 2: Meldingscode toevoegen
Open nativeWindowsAddon/addon.cc en werk deze bij om de Windows App SDK meldings-API's te gebruiken. De gegenereerde sjabloon bevat de benodigde Windows SDK en Windows App SDK headers.
Voeg invoegingen toe voor de meldings-API.
#include <winrt/Microsoft.Windows.AppNotifications.h>
#include <winrt/Microsoft.Windows.AppNotifications.Builder.h>
Voeg een functie toe waarin een Windows-melding wordt weergegeven:
Napi::Value ShowNotification(const Napi::CallbackInfo& info) {
Napi::Env env = info.Env();
try {
std::string title = info[0].As<Napi::String>().Utf8Value();
std::string message = info[1].As<Napi::String>().Utf8Value();
winrt::Microsoft::Windows::AppNotifications::Builder::AppNotificationBuilder builder;
builder.AddText(winrt::to_hstring(title));
builder.AddText(winrt::to_hstring(message));
auto notification = builder.BuildNotification();
winrt::Microsoft::Windows::AppNotifications::AppNotificationManager::Default().Show(notification);
return Napi::Boolean::New(env, true);
} catch (const winrt::hresult_error& e) {
Napi::Error::New(env, winrt::to_string(e.message())).ThrowAsJavaScriptException();
return env.Null();
}
}
Registreer de functie in de Init methode:
exports.Set("showNotification", Napi::Function::New(env, ShowNotification));
Stap 3: De invoegtoepassing bouwen
npm run build-addon
Stap 4: De melding testen
Open src/index.js de invoegtoepassing en laad deze:
const addon = require('../nativeWindowsAddon/build/Release/nativeWindowsAddon.node');
Een testgesprek toevoegen:
addon.showNotification('Hello from Electron!', 'This notification uses the Windows App SDK.');
Voer de app uit:
npm start
U ziet nu dat er een Windows-melding wordt weergegeven.
Stap 5: Foutopsporingsidentiteit bijwerken
Wanneer u het wijzigt appxmanifest.xml, voert u het volgende uit:
npx winapp node add-electron-debug-identity
Volgende stappen
- Een Phi Silicium-invoegtoepassing maken - AI-API's op apparaat gebruiken
- Een WinML-invoegtoepassing maken - Machine learning-modellen uitvoeren
- Pakketten voor distributie - Een ondertekend MSIX-pakket maken
Verwante onderwerpen
Windows developer