24 ULONG ProductType = 0xDEADBEEF;
27 ok_(__FILE__,
Line)(
Result == ExpectedResult,
"RtlGetProductInfo wrong return value. Got %u, expected %u\n",
Result, ExpectedResult);
28 ok_(__FILE__,
Line)(ProductType == ExpectedProductType,
"RtlGetProductInfo wrong product type. Got 0x%x, expected 0x%x\n", ProductType, ExpectedProductType);
30#define Test_Product(OSMajorVersion, OSMinorVersion, SpMajorVersion, SpMinorVersion, ExpectedResult, ExpectedProductType) \
31 Test_Product_(__LINE__, OSMajorVersion, OSMinorVersion, SpMajorVersion, SpMinorVersion, ExpectedResult, ExpectedProductType)
41 skip(
"RtlGetProductInfo not found\n");
62 ULONG CurrentProductType = 0xDEADBEEF;
84 "Unexpected product type for Vista: 0x%x\n", CurrentProductType);
97 "Unexpected product type for Windows 7: 0x%x\n", CurrentProductType);
109 "Unexpected product type for Windows 8: 0x%x\n", CurrentProductType);
120 "Unexpected product type for Windows 8.1: 0x%x\n", CurrentProductType);
134 "Unexpected product type for Windows 10: 0x%x\n", CurrentProductType);
139 ULONG VistaProductType = CurrentProductType;
#define Test_Product(OSMajorVersion, OSMinorVersion, SpMajorVersion, SpMinorVersion, ExpectedResult, ExpectedProductType)
void Test_Product_(ULONG Line, ULONG OSMajorVersion, ULONG OSMinorVersion, ULONG SpMajorVersion, ULONG SpMinorVersion, BOOLEAN ExpectedResult, ULONG ExpectedProductType)
BOOLEAN WINAPI FN_RtlGetProductInfo(_In_ ULONG OSMajorVersion, _In_ ULONG OSMinorVersion, _In_ ULONG SpMajorVersion, _In_ ULONG SpMinorVersion, _Out_ PULONG ReturnedProductType)
FN_RtlGetProductInfo * pRtlGetProductInfo
#define ok_eq_bool(value, expected)
#define GetProcAddress(x, y)
HMODULE WINAPI GetModuleHandleW(LPCWSTR lpModuleName)
BOOL WINAPI GetVersionExA(IN LPOSVERSIONINFOA lpVersionInformation)
#define PRODUCT_EDUCATION
#define PRODUCT_HOME_BASIC
#define PRODUCT_HOME_PREMIUM
#define PRODUCT_ENTERPRISE_SERVER
#define PRODUCT_PRO_WORKSTATION
#define PRODUCT_IOTENTERPRISES
#define PRODUCT_PROFESSIONAL_WMC
#define PRODUCT_PRO_FOR_EDUCATION
#define PRODUCT_UNDEFINED
#define PRODUCT_STANDARD_SERVER
#define PRODUCT_DATACENTER_SERVER
#define PRODUCT_HOME_SERVER
#define PRODUCT_ENTERPRISE
#define PRODUCT_PROFESSIONAL
#define PRODUCT_SERVER_FOUNDATION
#define _WIN32_WINNT_WIN10
#define _WIN32_WINNT_WINBLUE
#define _WIN32_WINNT_WIN8
#define _WIN32_WINNT_WIN7
#define _WIN32_WINNT_VISTA
OSVERSIONINFOEXW OsVersionInfo
ULONG dwOSVersionInfoSize
NTSYSAPI BOOLEAN WINAPI RtlGetProductInfo(DWORD, DWORD, DWORD, DWORD, PDWORD)
_At_(*)(_In_ PWSK_CLIENT Client, _In_opt_ PUNICODE_STRING NodeName, _In_opt_ PUNICODE_STRING ServiceName, _In_opt_ ULONG NameSpace, _In_opt_ GUID *Provider, _In_opt_ PADDRINFOEXW Hints, _Outptr_ PADDRINFOEXW *Result, _In_opt_ PEPROCESS OwningProcess, _In_opt_ PETHREAD OwningThread, _Inout_ PIRP Irp Result)(Mem)) NTSTATUS(WSKAPI *PFN_WSK_GET_ADDRESS_INFO