#include "pch.h" #include "powertoy_module.h" #include "lowlevel_keyboard_event.h" #include std::unordered_map& modules() { static std::unordered_map modules; return modules; } PowertoyModule load_powertoy(const std::wstring& filename) { auto handle = winrt::check_pointer(LoadLibraryW(filename.c_str())); auto create = reinterpret_cast(GetProcAddress(handle, "powertoy_create")); if (!create) { FreeLibrary(handle); winrt::throw_last_error(); } auto module = create(); if (!module) { FreeLibrary(handle); winrt::throw_last_error(); } module->register_system_menu_helper(&SystemMenuHelperInstace()); return PowertoyModule(module, handle); }