Loopback
|
Posted: Sat Nov 01, 2025 19:31 Post subject: |
|
|
| Orion9 wrote: | | Почему-то вызов не работает |
Макрос еrror возвращает ошибку 2 - отсутствие функции в dll.
А всё потому, что это не реальная функция в dll, а враппер. В файле VersionHelpers.h он задается так:
| Code: |
VERSIONHELPERAPI
IsWindows8Point1OrGreater()
{
return IsWindowsVersionOrGreater(HIBYTE(_WIN32_WINNT_WINBLUE), LOBYTE(_WIN32_WINNT_WINBLUE), 0);
}
VERSIONHELPERAPI
IsWindowsVersionOrGreater(WORD wMajorVersion, WORD wMinorVersion, WORD wServicePackMajor)
{
OSVERSIONINFOEXW osvi = { sizeof(osvi), 0, 0, 0, 0, {0}, 0, 0 };
DWORDLONG const dwlConditionMask = VerSetConditionMask(
VerSetConditionMask(
VerSetConditionMask(
0, VER_MAJORVERSION, VER_GREATER_EQUAL),
VER_MINORVERSION, VER_GREATER_EQUAL),
VER_SERVICEPACKMAJOR, VER_GREATER_EQUAL);
osvi.dwMajorVersion = wMajorVersion;
osvi.dwMinorVersion = wMinorVersion;
osvi.wServicePackMajor = wServicePackMajor;
return VerifyVersionInfoW(&osvi, VER_MAJORVERSION | VER_MINORVERSION | VER_SERVICEPACKMAJOR, dwlConditionMask) != FALSE;
}
|
| Orion9 wrote: | | Так задумано, или ошибка? |
Так задумано. Если файл содержит BOM, он всегда читается в кодировке, определяемой BOM. Указываемые здесь значения служат для интерпретации файла без BOM. Наверно, это стоит уточнить в справке. |
|