尝试调用 GetImmersiveColorTypeFromName
以获取 Windows 10 通知区域的颜色。
但它总是返回 -1
typedef int(WINAPI*pGetImmersiveColorTypeFromName)(char* name);
const pGetImmersiveColorTypeFromName GetImmersiveColorTypeFromName = (pGetImmersiveColorTypeFromName)GetProcAddress(hModule, (LPCSTR)96);
if (GetImmersiveColorTypeFromName)
{
colorType = GetImmersiveColorTypeFromName("ImmersiveApplicationTextDarkTheme");
}
我尝试了很多其他名称,但总是得到 -1
最佳答案
GetImmersiveColorTypeFromName
需要一个宽字符串,因此将声明从 char*
更改为 wchar_t*
:
typedef int(WINAPI*pGetImmersiveColorTypeFromName)(wchar_t* name);
const pGetImmersiveColorTypeFromName GetImmersiveColorTypeFromName = (pGetImmersiveColorTypeFromName)GetProcAddress(hModule, (LPCSTR)96);
if (GetImmersiveColorTypeFromName)
{
colorType = GetImmersiveColorTypeFromName(L"ImmersiveApplicationTextDarkTheme");
}
关于c++ - GetImmersiveColorTypeFromName 总是返回 -1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33680359/