IsWindowsServer сам по себе не является API. Это действительно макрос, определенный в <versionhelpers.h>
, который охватывает VerifyVersionInfo . Это реализация:
#include <windows.h>
bool IsWindowsServer()
{
OSVERSIONINFOEXW osvi = { sizeof(osvi), 0, 0, 0, 0, {0}, 0, 0, 0, VER_NT_WORKSTATION };
DWORDLONG const dwlConditionMask = VerSetConditionMask( 0, VER_PRODUCT_TYPE, VER_EQUAL );
return !VerifyVersionInfoW(&osvi, VER_PRODUCT_TYPE, dwlConditionMask);
}
Два зависимых API VerSetConditionMask и VerifyVersionInfo должны быть доступны в SDK, который входит в комплект VS2008.