#pragma once #include "error.hpp" #include #include namespace resource { HMODULE load_exe_module() { const auto module = GetModuleHandle(NULL); if (module == NULL) error::raise("GetModuleHandle"); return module; } std::wstring load_string(unsigned int id) { wchar_t* s = nullptr; const auto ret = LoadStringW( load_exe_module(), id, reinterpret_cast(&s), 0); if (ret <= 0) error::raise("LoadStringW"); return {s, static_cast(ret)}; } }