diff --git a/dlls/wbemprox/builtin.c b/dlls/wbemprox/builtin.c index b86326327fb..6bb26a9d17b 100644 --- a/dlls/wbemprox/builtin.c +++ b/dlls/wbemprox/builtin.c @@ -246,6 +246,7 @@ static const struct column col_operatingsystem[] = { L"OSProductSuite", CIM_UINT32 }, { L"OSType", CIM_UINT16 }, { L"Primary", CIM_BOOLEAN }, + { L"ProductType", CIM_UINT32 }, { L"SerialNumber", CIM_STRING|COL_FLAG_DYNAMIC }, { L"ServicePackMajorVersion", CIM_UINT16 }, { L"ServicePackMinorVersion", CIM_UINT16 }, @@ -654,6 +655,7 @@ struct record_operatingsystem UINT32 osproductsuite; UINT16 ostype; int primary; + UINT32 producttype; const WCHAR *serialnumber; UINT16 servicepackmajor; UINT16 servicepackminor; @@ -3543,6 +3545,7 @@ static enum fill_status fill_operatingsystem( struct table *table, const struct rec->osproductsuite = 2461140; /* Windows XP Professional */ rec->ostype = 18; /* WINNT */ rec->primary = -1; + rec->producttype = 1; rec->serialnumber = get_osserialnumber(); rec->servicepackmajor = ver.wServicePackMajor; rec->servicepackminor = ver.wServicePackMinor; diff --git a/dlls/wbemprox/tests/query.c b/dlls/wbemprox/tests/query.c index a0488f40e52..2cb9e3c54bd 100644 --- a/dlls/wbemprox/tests/query.c +++ b/dlls/wbemprox/tests/query.c @@ -1289,6 +1289,7 @@ static void test_Win32_OperatingSystem( IWbemServices *services ) check_property( obj, L"CurrentTimeZone", VT_I2, CIM_SINT16 ); check_property( obj, L"Manufacturer", VT_BSTR, CIM_STRING ); check_property( obj, L"OSType", VT_I4, CIM_UINT16 ); + check_property( obj, L"ProductType", VT_I4, CIM_UINT32 ); check_property( obj, L"ServicePackMajorVersion", VT_I4, CIM_UINT16 ); check_property( obj, L"ServicePackMinorVersion", VT_I4, CIM_UINT16 ); check_property( obj, L"SuiteMask", VT_I4, CIM_UINT32 );