zigwin32/win32/system/system_information.zig

1340 lines
55 KiB
Zig

//! NOTE: this file is autogenerated, DO NOT MODIFY
//--------------------------------------------------------------------------------
// Section: Constants (113)
//--------------------------------------------------------------------------------
pub const NTDDI_WIN2K = @as(u32, 83886080);
pub const NTDDI_WINXP = @as(u32, 83951616);
pub const NTDDI_WINXPSP2 = @as(u32, 83952128);
pub const NTDDI_WS03SP1 = @as(u32, 84017408);
pub const NTDDI_VISTA = @as(u32, 100663296);
pub const NTDDI_VISTASP1 = @as(u32, 100663552);
pub const NTDDI_WIN7 = @as(u32, 100728832);
pub const NTDDI_WIN8 = @as(u32, 100794368);
pub const NTDDI_WINBLUE = @as(u32, 100859904);
pub const NTDDI_WINTHRESHOLD = @as(u32, 167772160);
pub const SYSTEM_CPU_SET_INFORMATION_PARKED = @as(u32, 1);
pub const SYSTEM_CPU_SET_INFORMATION_ALLOCATED = @as(u32, 2);
pub const SYSTEM_CPU_SET_INFORMATION_ALLOCATED_TO_TARGET_PROCESS = @as(u32, 4);
pub const SYSTEM_CPU_SET_INFORMATION_REALTIME = @as(u32, 8);
pub const _WIN32_WINNT_NT4 = @as(u32, 1024);
pub const _WIN32_WINNT_WIN2K = @as(u32, 1280);
pub const _WIN32_WINNT_WINXP = @as(u32, 1281);
pub const _WIN32_WINNT_WS03 = @as(u32, 1282);
pub const _WIN32_WINNT_WIN6 = @as(u32, 1536);
pub const _WIN32_WINNT_VISTA = @as(u32, 1536);
pub const _WIN32_WINNT_WS08 = @as(u32, 1536);
pub const _WIN32_WINNT_LONGHORN = @as(u32, 1536);
pub const _WIN32_WINNT_WIN7 = @as(u32, 1537);
pub const _WIN32_WINNT_WIN8 = @as(u32, 1538);
pub const _WIN32_WINNT_WINBLUE = @as(u32, 1539);
pub const _WIN32_WINNT_WINTHRESHOLD = @as(u32, 2560);
pub const _WIN32_WINNT_WIN10 = @as(u32, 2560);
pub const _WIN32_IE_IE20 = @as(u32, 512);
pub const _WIN32_IE_IE30 = @as(u32, 768);
pub const _WIN32_IE_IE302 = @as(u32, 770);
pub const _WIN32_IE_IE40 = @as(u32, 1024);
pub const _WIN32_IE_IE401 = @as(u32, 1025);
pub const _WIN32_IE_IE50 = @as(u32, 1280);
pub const _WIN32_IE_IE501 = @as(u32, 1281);
pub const _WIN32_IE_IE55 = @as(u32, 1360);
pub const _WIN32_IE_IE60 = @as(u32, 1536);
pub const _WIN32_IE_IE60SP1 = @as(u32, 1537);
pub const _WIN32_IE_IE60SP2 = @as(u32, 1539);
pub const _WIN32_IE_IE70 = @as(u32, 1792);
pub const _WIN32_IE_IE80 = @as(u32, 2048);
pub const _WIN32_IE_IE90 = @as(u32, 2304);
pub const _WIN32_IE_IE100 = @as(u32, 2560);
pub const _WIN32_IE_IE110 = @as(u32, 2560);
pub const _WIN32_IE_NT4 = @as(u32, 512);
pub const _WIN32_IE_NT4SP1 = @as(u32, 512);
pub const _WIN32_IE_NT4SP2 = @as(u32, 512);
pub const _WIN32_IE_NT4SP3 = @as(u32, 770);
pub const _WIN32_IE_NT4SP4 = @as(u32, 1025);
pub const _WIN32_IE_NT4SP5 = @as(u32, 1025);
pub const _WIN32_IE_NT4SP6 = @as(u32, 1280);
pub const _WIN32_IE_WIN98 = @as(u32, 1025);
pub const _WIN32_IE_WIN98SE = @as(u32, 1280);
pub const _WIN32_IE_WINME = @as(u32, 1360);
pub const _WIN32_IE_WIN2K = @as(u32, 1281);
pub const _WIN32_IE_WIN2KSP1 = @as(u32, 1281);
pub const _WIN32_IE_WIN2KSP2 = @as(u32, 1281);
pub const _WIN32_IE_WIN2KSP3 = @as(u32, 1281);
pub const _WIN32_IE_WIN2KSP4 = @as(u32, 1281);
pub const _WIN32_IE_XP = @as(u32, 1536);
pub const _WIN32_IE_XPSP1 = @as(u32, 1537);
pub const _WIN32_IE_XPSP2 = @as(u32, 1539);
pub const _WIN32_IE_WS03 = @as(u32, 1538);
pub const _WIN32_IE_WS03SP1 = @as(u32, 1539);
pub const _WIN32_IE_WIN6 = @as(u32, 1792);
pub const _WIN32_IE_LONGHORN = @as(u32, 1792);
pub const _WIN32_IE_WIN7 = @as(u32, 2048);
pub const _WIN32_IE_WIN8 = @as(u32, 2560);
pub const _WIN32_IE_WINBLUE = @as(u32, 2560);
pub const _WIN32_IE_WINTHRESHOLD = @as(u32, 2560);
pub const _WIN32_IE_WIN10 = @as(u32, 2560);
pub const NTDDI_WIN4 = @as(u32, 67108864);
pub const NTDDI_WIN2KSP1 = @as(u32, 83886336);
pub const NTDDI_WIN2KSP2 = @as(u32, 83886592);
pub const NTDDI_WIN2KSP3 = @as(u32, 83886848);
pub const NTDDI_WIN2KSP4 = @as(u32, 83887104);
pub const NTDDI_WINXPSP1 = @as(u32, 83951872);
pub const NTDDI_WINXPSP3 = @as(u32, 83952384);
pub const NTDDI_WINXPSP4 = @as(u32, 83952640);
pub const NTDDI_WS03 = @as(u32, 84017152);
pub const NTDDI_WS03SP2 = @as(u32, 84017664);
pub const NTDDI_WS03SP3 = @as(u32, 84017920);
pub const NTDDI_WS03SP4 = @as(u32, 84018176);
pub const NTDDI_WIN6 = @as(u32, 100663296);
pub const NTDDI_WIN6SP1 = @as(u32, 100663552);
pub const NTDDI_WIN6SP2 = @as(u32, 100663808);
pub const NTDDI_WIN6SP3 = @as(u32, 100664064);
pub const NTDDI_WIN6SP4 = @as(u32, 100664320);
pub const NTDDI_VISTASP2 = @as(u32, 100663808);
pub const NTDDI_VISTASP3 = @as(u32, 100664064);
pub const NTDDI_VISTASP4 = @as(u32, 100664320);
pub const NTDDI_LONGHORN = @as(u32, 100663296);
pub const NTDDI_WS08 = @as(u32, 100663552);
pub const NTDDI_WS08SP2 = @as(u32, 100663808);
pub const NTDDI_WS08SP3 = @as(u32, 100664064);
pub const NTDDI_WS08SP4 = @as(u32, 100664320);
pub const NTDDI_WIN10 = @as(u32, 167772160);
pub const NTDDI_WIN10_TH2 = @as(u32, 167772161);
pub const NTDDI_WIN10_RS1 = @as(u32, 167772162);
pub const NTDDI_WIN10_RS2 = @as(u32, 167772163);
pub const NTDDI_WIN10_RS3 = @as(u32, 167772164);
pub const NTDDI_WIN10_RS4 = @as(u32, 167772165);
pub const NTDDI_WIN10_RS5 = @as(u32, 167772166);
pub const NTDDI_WIN10_19H1 = @as(u32, 167772167);
pub const NTDDI_WIN10_VB = @as(u32, 167772168);
pub const NTDDI_WIN10_MN = @as(u32, 167772169);
pub const NTDDI_WIN10_FE = @as(u32, 167772170);
pub const NTDDI_WIN10_CO = @as(u32, 167772171);
pub const WDK_NTDDI_VERSION = @as(u32, 167772171);
pub const OSVERSION_MASK = @as(u32, 4294901760);
pub const SPVERSION_MASK = @as(u32, 65280);
pub const SUBVERSION_MASK = @as(u32, 255);
pub const NTDDI_VERSION = @as(u32, 167772171);
pub const SCEX2_ALT_NETBIOS_NAME = @as(u32, 1);
//--------------------------------------------------------------------------------
// Section: Types (37)
//--------------------------------------------------------------------------------
pub const VER_FLAGS = enum(u32) {
MINORVERSION = 1,
MAJORVERSION = 2,
BUILDNUMBER = 4,
PLATFORMID = 8,
SERVICEPACKMINOR = 16,
SERVICEPACKMAJOR = 32,
SUITENAME = 64,
PRODUCT_TYPE = 128,
_,
pub fn initFlags(o: struct {
MINORVERSION: u1 = 0,
MAJORVERSION: u1 = 0,
BUILDNUMBER: u1 = 0,
PLATFORMID: u1 = 0,
SERVICEPACKMINOR: u1 = 0,
SERVICEPACKMAJOR: u1 = 0,
SUITENAME: u1 = 0,
PRODUCT_TYPE: u1 = 0,
}) VER_FLAGS {
return @as(VER_FLAGS, @enumFromInt(
(if (o.MINORVERSION == 1) @intFromEnum(VER_FLAGS.MINORVERSION) else 0)
| (if (o.MAJORVERSION == 1) @intFromEnum(VER_FLAGS.MAJORVERSION) else 0)
| (if (o.BUILDNUMBER == 1) @intFromEnum(VER_FLAGS.BUILDNUMBER) else 0)
| (if (o.PLATFORMID == 1) @intFromEnum(VER_FLAGS.PLATFORMID) else 0)
| (if (o.SERVICEPACKMINOR == 1) @intFromEnum(VER_FLAGS.SERVICEPACKMINOR) else 0)
| (if (o.SERVICEPACKMAJOR == 1) @intFromEnum(VER_FLAGS.SERVICEPACKMAJOR) else 0)
| (if (o.SUITENAME == 1) @intFromEnum(VER_FLAGS.SUITENAME) else 0)
| (if (o.PRODUCT_TYPE == 1) @intFromEnum(VER_FLAGS.PRODUCT_TYPE) else 0)
));
}
};
pub const VER_MINORVERSION = VER_FLAGS.MINORVERSION;
pub const VER_MAJORVERSION = VER_FLAGS.MAJORVERSION;
pub const VER_BUILDNUMBER = VER_FLAGS.BUILDNUMBER;
pub const VER_PLATFORMID = VER_FLAGS.PLATFORMID;
pub const VER_SERVICEPACKMINOR = VER_FLAGS.SERVICEPACKMINOR;
pub const VER_SERVICEPACKMAJOR = VER_FLAGS.SERVICEPACKMAJOR;
pub const VER_SUITENAME = VER_FLAGS.SUITENAME;
pub const VER_PRODUCT_TYPE = VER_FLAGS.PRODUCT_TYPE;
pub const FIRMWARE_TABLE_PROVIDER = enum(u32) {
ACPI = 1094930505,
FIRM = 1179210317,
RSMB = 1381190978,
};
pub const ACPI = FIRMWARE_TABLE_PROVIDER.ACPI;
pub const FIRM = FIRMWARE_TABLE_PROVIDER.FIRM;
pub const RSMB = FIRMWARE_TABLE_PROVIDER.RSMB;
pub const USER_CET_ENVIRONMENT = enum(u32) {
WIN32_PROCESS = 0,
SGX2_ENCLAVE = 2,
VBS_ENCLAVE = 16,
VBS_BASIC_ENCLAVE = 17,
};
pub const USER_CET_ENVIRONMENT_WIN32_PROCESS = USER_CET_ENVIRONMENT.WIN32_PROCESS;
pub const USER_CET_ENVIRONMENT_SGX2_ENCLAVE = USER_CET_ENVIRONMENT.SGX2_ENCLAVE;
pub const USER_CET_ENVIRONMENT_VBS_ENCLAVE = USER_CET_ENVIRONMENT.VBS_ENCLAVE;
pub const USER_CET_ENVIRONMENT_VBS_BASIC_ENCLAVE = USER_CET_ENVIRONMENT.VBS_BASIC_ENCLAVE;
pub const OS_PRODUCT_TYPE = enum(u32) {
BUSINESS = 6,
BUSINESS_N = 16,
CLUSTER_SERVER = 18,
CLUSTER_SERVER_V = 64,
CORE = 101,
CORE_COUNTRYSPECIFIC = 99,
CORE_N = 98,
CORE_SINGLELANGUAGE = 100,
DATACENTER_EVALUATION_SERVER = 80,
DATACENTER_A_SERVER_CORE = 145,
STANDARD_A_SERVER_CORE = 146,
DATACENTER_SERVER = 8,
DATACENTER_SERVER_CORE = 12,
DATACENTER_SERVER_CORE_V = 39,
DATACENTER_SERVER_V = 37,
EDUCATION = 121,
EDUCATION_N = 122,
ENTERPRISE = 4,
ENTERPRISE_E = 70,
ENTERPRISE_EVALUATION = 72,
ENTERPRISE_N = 27,
ENTERPRISE_N_EVALUATION = 84,
ENTERPRISE_S = 125,
ENTERPRISE_S_EVALUATION = 129,
ENTERPRISE_S_N = 126,
ENTERPRISE_S_N_EVALUATION = 130,
ENTERPRISE_SERVER = 10,
ENTERPRISE_SERVER_CORE = 14,
ENTERPRISE_SERVER_CORE_V = 41,
ENTERPRISE_SERVER_IA64 = 15,
ENTERPRISE_SERVER_V = 38,
ESSENTIALBUSINESS_SERVER_ADDL = 60,
ESSENTIALBUSINESS_SERVER_ADDLSVC = 62,
ESSENTIALBUSINESS_SERVER_MGMT = 59,
ESSENTIALBUSINESS_SERVER_MGMTSVC = 61,
HOME_BASIC = 2,
HOME_BASIC_E = 67,
HOME_BASIC_N = 5,
HOME_PREMIUM = 3,
HOME_PREMIUM_E = 68,
HOME_PREMIUM_N = 26,
HOME_PREMIUM_SERVER = 34,
HOME_SERVER = 19,
HYPERV = 42,
IOTUAP = 123,
IOTUAPCOMMERCIAL = 131,
MEDIUMBUSINESS_SERVER_MANAGEMENT = 30,
MEDIUMBUSINESS_SERVER_MESSAGING = 32,
MEDIUMBUSINESS_SERVER_SECURITY = 31,
MOBILE_CORE = 104,
MOBILE_ENTERPRISE = 133,
MULTIPOINT_PREMIUM_SERVER = 77,
MULTIPOINT_STANDARD_SERVER = 76,
PRO_WORKSTATION = 161,
PRO_WORKSTATION_N = 162,
PROFESSIONAL = 48,
PROFESSIONAL_E = 69,
PROFESSIONAL_N = 49,
PROFESSIONAL_WMC = 103,
SB_SOLUTION_SERVER = 50,
SB_SOLUTION_SERVER_EM = 54,
SERVER_FOR_SB_SOLUTIONS = 51,
SERVER_FOR_SB_SOLUTIONS_EM = 55,
SERVER_FOR_SMALLBUSINESS = 24,
SERVER_FOR_SMALLBUSINESS_V = 35,
SERVER_FOUNDATION = 33,
SMALLBUSINESS_SERVER = 9,
SMALLBUSINESS_SERVER_PREMIUM = 25,
SMALLBUSINESS_SERVER_PREMIUM_CORE = 63,
SOLUTION_EMBEDDEDSERVER = 56,
STANDARD_EVALUATION_SERVER = 79,
STANDARD_SERVER = 7,
STANDARD_SERVER_CORE_ = 13,
STANDARD_SERVER_CORE_V = 40,
STANDARD_SERVER_V = 36,
STANDARD_SERVER_SOLUTIONS = 52,
STANDARD_SERVER_SOLUTIONS_CORE = 53,
STARTER = 11,
STARTER_E = 66,
STARTER_N = 47,
STORAGE_ENTERPRISE_SERVER = 23,
STORAGE_ENTERPRISE_SERVER_CORE = 46,
STORAGE_EXPRESS_SERVER = 20,
STORAGE_EXPRESS_SERVER_CORE = 43,
STORAGE_STANDARD_EVALUATION_SERVER = 96,
STORAGE_STANDARD_SERVER = 21,
STORAGE_STANDARD_SERVER_CORE = 44,
STORAGE_WORKGROUP_EVALUATION_SERVER = 95,
STORAGE_WORKGROUP_SERVER = 22,
STORAGE_WORKGROUP_SERVER_CORE = 45,
ULTIMATE = 1,
ULTIMATE_E = 71,
ULTIMATE_N = 28,
UNDEFINED = 0,
WEB_SERVER = 17,
WEB_SERVER_CORE = 29,
};
pub const PRODUCT_BUSINESS = OS_PRODUCT_TYPE.BUSINESS;
pub const PRODUCT_BUSINESS_N = OS_PRODUCT_TYPE.BUSINESS_N;
pub const PRODUCT_CLUSTER_SERVER = OS_PRODUCT_TYPE.CLUSTER_SERVER;
pub const PRODUCT_CLUSTER_SERVER_V = OS_PRODUCT_TYPE.CLUSTER_SERVER_V;
pub const PRODUCT_CORE = OS_PRODUCT_TYPE.CORE;
pub const PRODUCT_CORE_COUNTRYSPECIFIC = OS_PRODUCT_TYPE.CORE_COUNTRYSPECIFIC;
pub const PRODUCT_CORE_N = OS_PRODUCT_TYPE.CORE_N;
pub const PRODUCT_CORE_SINGLELANGUAGE = OS_PRODUCT_TYPE.CORE_SINGLELANGUAGE;
pub const PRODUCT_DATACENTER_EVALUATION_SERVER = OS_PRODUCT_TYPE.DATACENTER_EVALUATION_SERVER;
pub const PRODUCT_DATACENTER_A_SERVER_CORE = OS_PRODUCT_TYPE.DATACENTER_A_SERVER_CORE;
pub const PRODUCT_STANDARD_A_SERVER_CORE = OS_PRODUCT_TYPE.STANDARD_A_SERVER_CORE;
pub const PRODUCT_DATACENTER_SERVER = OS_PRODUCT_TYPE.DATACENTER_SERVER;
pub const PRODUCT_DATACENTER_SERVER_CORE = OS_PRODUCT_TYPE.DATACENTER_SERVER_CORE;
pub const PRODUCT_DATACENTER_SERVER_CORE_V = OS_PRODUCT_TYPE.DATACENTER_SERVER_CORE_V;
pub const PRODUCT_DATACENTER_SERVER_V = OS_PRODUCT_TYPE.DATACENTER_SERVER_V;
pub const PRODUCT_EDUCATION = OS_PRODUCT_TYPE.EDUCATION;
pub const PRODUCT_EDUCATION_N = OS_PRODUCT_TYPE.EDUCATION_N;
pub const PRODUCT_ENTERPRISE = OS_PRODUCT_TYPE.ENTERPRISE;
pub const PRODUCT_ENTERPRISE_E = OS_PRODUCT_TYPE.ENTERPRISE_E;
pub const PRODUCT_ENTERPRISE_EVALUATION = OS_PRODUCT_TYPE.ENTERPRISE_EVALUATION;
pub const PRODUCT_ENTERPRISE_N = OS_PRODUCT_TYPE.ENTERPRISE_N;
pub const PRODUCT_ENTERPRISE_N_EVALUATION = OS_PRODUCT_TYPE.ENTERPRISE_N_EVALUATION;
pub const PRODUCT_ENTERPRISE_S = OS_PRODUCT_TYPE.ENTERPRISE_S;
pub const PRODUCT_ENTERPRISE_S_EVALUATION = OS_PRODUCT_TYPE.ENTERPRISE_S_EVALUATION;
pub const PRODUCT_ENTERPRISE_S_N = OS_PRODUCT_TYPE.ENTERPRISE_S_N;
pub const PRODUCT_ENTERPRISE_S_N_EVALUATION = OS_PRODUCT_TYPE.ENTERPRISE_S_N_EVALUATION;
pub const PRODUCT_ENTERPRISE_SERVER = OS_PRODUCT_TYPE.ENTERPRISE_SERVER;
pub const PRODUCT_ENTERPRISE_SERVER_CORE = OS_PRODUCT_TYPE.ENTERPRISE_SERVER_CORE;
pub const PRODUCT_ENTERPRISE_SERVER_CORE_V = OS_PRODUCT_TYPE.ENTERPRISE_SERVER_CORE_V;
pub const PRODUCT_ENTERPRISE_SERVER_IA64 = OS_PRODUCT_TYPE.ENTERPRISE_SERVER_IA64;
pub const PRODUCT_ENTERPRISE_SERVER_V = OS_PRODUCT_TYPE.ENTERPRISE_SERVER_V;
pub const PRODUCT_ESSENTIALBUSINESS_SERVER_ADDL = OS_PRODUCT_TYPE.ESSENTIALBUSINESS_SERVER_ADDL;
pub const PRODUCT_ESSENTIALBUSINESS_SERVER_ADDLSVC = OS_PRODUCT_TYPE.ESSENTIALBUSINESS_SERVER_ADDLSVC;
pub const PRODUCT_ESSENTIALBUSINESS_SERVER_MGMT = OS_PRODUCT_TYPE.ESSENTIALBUSINESS_SERVER_MGMT;
pub const PRODUCT_ESSENTIALBUSINESS_SERVER_MGMTSVC = OS_PRODUCT_TYPE.ESSENTIALBUSINESS_SERVER_MGMTSVC;
pub const PRODUCT_HOME_BASIC = OS_PRODUCT_TYPE.HOME_BASIC;
pub const PRODUCT_HOME_BASIC_E = OS_PRODUCT_TYPE.HOME_BASIC_E;
pub const PRODUCT_HOME_BASIC_N = OS_PRODUCT_TYPE.HOME_BASIC_N;
pub const PRODUCT_HOME_PREMIUM = OS_PRODUCT_TYPE.HOME_PREMIUM;
pub const PRODUCT_HOME_PREMIUM_E = OS_PRODUCT_TYPE.HOME_PREMIUM_E;
pub const PRODUCT_HOME_PREMIUM_N = OS_PRODUCT_TYPE.HOME_PREMIUM_N;
pub const PRODUCT_HOME_PREMIUM_SERVER = OS_PRODUCT_TYPE.HOME_PREMIUM_SERVER;
pub const PRODUCT_HOME_SERVER = OS_PRODUCT_TYPE.HOME_SERVER;
pub const PRODUCT_HYPERV = OS_PRODUCT_TYPE.HYPERV;
pub const PRODUCT_IOTUAP = OS_PRODUCT_TYPE.IOTUAP;
pub const PRODUCT_IOTUAPCOMMERCIAL = OS_PRODUCT_TYPE.IOTUAPCOMMERCIAL;
pub const PRODUCT_MEDIUMBUSINESS_SERVER_MANAGEMENT = OS_PRODUCT_TYPE.MEDIUMBUSINESS_SERVER_MANAGEMENT;
pub const PRODUCT_MEDIUMBUSINESS_SERVER_MESSAGING = OS_PRODUCT_TYPE.MEDIUMBUSINESS_SERVER_MESSAGING;
pub const PRODUCT_MEDIUMBUSINESS_SERVER_SECURITY = OS_PRODUCT_TYPE.MEDIUMBUSINESS_SERVER_SECURITY;
pub const PRODUCT_MOBILE_CORE = OS_PRODUCT_TYPE.MOBILE_CORE;
pub const PRODUCT_MOBILE_ENTERPRISE = OS_PRODUCT_TYPE.MOBILE_ENTERPRISE;
pub const PRODUCT_MULTIPOINT_PREMIUM_SERVER = OS_PRODUCT_TYPE.MULTIPOINT_PREMIUM_SERVER;
pub const PRODUCT_MULTIPOINT_STANDARD_SERVER = OS_PRODUCT_TYPE.MULTIPOINT_STANDARD_SERVER;
pub const PRODUCT_PRO_WORKSTATION = OS_PRODUCT_TYPE.PRO_WORKSTATION;
pub const PRODUCT_PRO_WORKSTATION_N = OS_PRODUCT_TYPE.PRO_WORKSTATION_N;
pub const PRODUCT_PROFESSIONAL = OS_PRODUCT_TYPE.PROFESSIONAL;
pub const PRODUCT_PROFESSIONAL_E = OS_PRODUCT_TYPE.PROFESSIONAL_E;
pub const PRODUCT_PROFESSIONAL_N = OS_PRODUCT_TYPE.PROFESSIONAL_N;
pub const PRODUCT_PROFESSIONAL_WMC = OS_PRODUCT_TYPE.PROFESSIONAL_WMC;
pub const PRODUCT_SB_SOLUTION_SERVER = OS_PRODUCT_TYPE.SB_SOLUTION_SERVER;
pub const PRODUCT_SB_SOLUTION_SERVER_EM = OS_PRODUCT_TYPE.SB_SOLUTION_SERVER_EM;
pub const PRODUCT_SERVER_FOR_SB_SOLUTIONS = OS_PRODUCT_TYPE.SERVER_FOR_SB_SOLUTIONS;
pub const PRODUCT_SERVER_FOR_SB_SOLUTIONS_EM = OS_PRODUCT_TYPE.SERVER_FOR_SB_SOLUTIONS_EM;
pub const PRODUCT_SERVER_FOR_SMALLBUSINESS = OS_PRODUCT_TYPE.SERVER_FOR_SMALLBUSINESS;
pub const PRODUCT_SERVER_FOR_SMALLBUSINESS_V = OS_PRODUCT_TYPE.SERVER_FOR_SMALLBUSINESS_V;
pub const PRODUCT_SERVER_FOUNDATION = OS_PRODUCT_TYPE.SERVER_FOUNDATION;
pub const PRODUCT_SMALLBUSINESS_SERVER = OS_PRODUCT_TYPE.SMALLBUSINESS_SERVER;
pub const PRODUCT_SMALLBUSINESS_SERVER_PREMIUM = OS_PRODUCT_TYPE.SMALLBUSINESS_SERVER_PREMIUM;
pub const PRODUCT_SMALLBUSINESS_SERVER_PREMIUM_CORE = OS_PRODUCT_TYPE.SMALLBUSINESS_SERVER_PREMIUM_CORE;
pub const PRODUCT_SOLUTION_EMBEDDEDSERVER = OS_PRODUCT_TYPE.SOLUTION_EMBEDDEDSERVER;
pub const PRODUCT_STANDARD_EVALUATION_SERVER = OS_PRODUCT_TYPE.STANDARD_EVALUATION_SERVER;
pub const PRODUCT_STANDARD_SERVER = OS_PRODUCT_TYPE.STANDARD_SERVER;
pub const PRODUCT_STANDARD_SERVER_CORE_ = OS_PRODUCT_TYPE.STANDARD_SERVER_CORE_;
pub const PRODUCT_STANDARD_SERVER_CORE_V = OS_PRODUCT_TYPE.STANDARD_SERVER_CORE_V;
pub const PRODUCT_STANDARD_SERVER_V = OS_PRODUCT_TYPE.STANDARD_SERVER_V;
pub const PRODUCT_STANDARD_SERVER_SOLUTIONS = OS_PRODUCT_TYPE.STANDARD_SERVER_SOLUTIONS;
pub const PRODUCT_STANDARD_SERVER_SOLUTIONS_CORE = OS_PRODUCT_TYPE.STANDARD_SERVER_SOLUTIONS_CORE;
pub const PRODUCT_STARTER = OS_PRODUCT_TYPE.STARTER;
pub const PRODUCT_STARTER_E = OS_PRODUCT_TYPE.STARTER_E;
pub const PRODUCT_STARTER_N = OS_PRODUCT_TYPE.STARTER_N;
pub const PRODUCT_STORAGE_ENTERPRISE_SERVER = OS_PRODUCT_TYPE.STORAGE_ENTERPRISE_SERVER;
pub const PRODUCT_STORAGE_ENTERPRISE_SERVER_CORE = OS_PRODUCT_TYPE.STORAGE_ENTERPRISE_SERVER_CORE;
pub const PRODUCT_STORAGE_EXPRESS_SERVER = OS_PRODUCT_TYPE.STORAGE_EXPRESS_SERVER;
pub const PRODUCT_STORAGE_EXPRESS_SERVER_CORE = OS_PRODUCT_TYPE.STORAGE_EXPRESS_SERVER_CORE;
pub const PRODUCT_STORAGE_STANDARD_EVALUATION_SERVER = OS_PRODUCT_TYPE.STORAGE_STANDARD_EVALUATION_SERVER;
pub const PRODUCT_STORAGE_STANDARD_SERVER = OS_PRODUCT_TYPE.STORAGE_STANDARD_SERVER;
pub const PRODUCT_STORAGE_STANDARD_SERVER_CORE = OS_PRODUCT_TYPE.STORAGE_STANDARD_SERVER_CORE;
pub const PRODUCT_STORAGE_WORKGROUP_EVALUATION_SERVER = OS_PRODUCT_TYPE.STORAGE_WORKGROUP_EVALUATION_SERVER;
pub const PRODUCT_STORAGE_WORKGROUP_SERVER = OS_PRODUCT_TYPE.STORAGE_WORKGROUP_SERVER;
pub const PRODUCT_STORAGE_WORKGROUP_SERVER_CORE = OS_PRODUCT_TYPE.STORAGE_WORKGROUP_SERVER_CORE;
pub const PRODUCT_ULTIMATE = OS_PRODUCT_TYPE.ULTIMATE;
pub const PRODUCT_ULTIMATE_E = OS_PRODUCT_TYPE.ULTIMATE_E;
pub const PRODUCT_ULTIMATE_N = OS_PRODUCT_TYPE.ULTIMATE_N;
pub const PRODUCT_UNDEFINED = OS_PRODUCT_TYPE.UNDEFINED;
pub const PRODUCT_WEB_SERVER = OS_PRODUCT_TYPE.WEB_SERVER;
pub const PRODUCT_WEB_SERVER_CORE = OS_PRODUCT_TYPE.WEB_SERVER_CORE;
pub const DEVICEFAMILYINFOENUM = enum(u32) {
UAP = 0,
WINDOWS_8X = 1,
WINDOWS_PHONE_8X = 2,
DESKTOP = 3,
MOBILE = 4,
XBOX = 5,
TEAM = 6,
IOT = 7,
IOT_HEADLESS = 8,
SERVER = 9,
HOLOGRAPHIC = 10,
XBOXSRA = 11,
XBOXERA = 12,
SERVER_NANO = 13,
@"8828080" = 14,
@"7067329" = 15,
WINDOWS_CORE = 16,
WINDOWS_CORE_HEADLESS = 17,
// MAX = 17, this enum value conflicts with WINDOWS_CORE_HEADLESS
};
pub const DEVICEFAMILYINFOENUM_UAP = DEVICEFAMILYINFOENUM.UAP;
pub const DEVICEFAMILYINFOENUM_WINDOWS_8X = DEVICEFAMILYINFOENUM.WINDOWS_8X;
pub const DEVICEFAMILYINFOENUM_WINDOWS_PHONE_8X = DEVICEFAMILYINFOENUM.WINDOWS_PHONE_8X;
pub const DEVICEFAMILYINFOENUM_DESKTOP = DEVICEFAMILYINFOENUM.DESKTOP;
pub const DEVICEFAMILYINFOENUM_MOBILE = DEVICEFAMILYINFOENUM.MOBILE;
pub const DEVICEFAMILYINFOENUM_XBOX = DEVICEFAMILYINFOENUM.XBOX;
pub const DEVICEFAMILYINFOENUM_TEAM = DEVICEFAMILYINFOENUM.TEAM;
pub const DEVICEFAMILYINFOENUM_IOT = DEVICEFAMILYINFOENUM.IOT;
pub const DEVICEFAMILYINFOENUM_IOT_HEADLESS = DEVICEFAMILYINFOENUM.IOT_HEADLESS;
pub const DEVICEFAMILYINFOENUM_SERVER = DEVICEFAMILYINFOENUM.SERVER;
pub const DEVICEFAMILYINFOENUM_HOLOGRAPHIC = DEVICEFAMILYINFOENUM.HOLOGRAPHIC;
pub const DEVICEFAMILYINFOENUM_XBOXSRA = DEVICEFAMILYINFOENUM.XBOXSRA;
pub const DEVICEFAMILYINFOENUM_XBOXERA = DEVICEFAMILYINFOENUM.XBOXERA;
pub const DEVICEFAMILYINFOENUM_SERVER_NANO = DEVICEFAMILYINFOENUM.SERVER_NANO;
pub const DEVICEFAMILYINFOENUM_8828080 = DEVICEFAMILYINFOENUM.@"8828080";
pub const DEVICEFAMILYINFOENUM_7067329 = DEVICEFAMILYINFOENUM.@"7067329";
pub const DEVICEFAMILYINFOENUM_WINDOWS_CORE = DEVICEFAMILYINFOENUM.WINDOWS_CORE;
pub const DEVICEFAMILYINFOENUM_WINDOWS_CORE_HEADLESS = DEVICEFAMILYINFOENUM.WINDOWS_CORE_HEADLESS;
pub const DEVICEFAMILYINFOENUM_MAX = DEVICEFAMILYINFOENUM.WINDOWS_CORE_HEADLESS;
pub const DEVICEFAMILYDEVICEFORM = enum(u32) {
UNKNOWN = 0,
PHONE = 1,
TABLET = 2,
DESKTOP = 3,
NOTEBOOK = 4,
CONVERTIBLE = 5,
DETACHABLE = 6,
ALLINONE = 7,
STICKPC = 8,
PUCK = 9,
LARGESCREEN = 10,
HMD = 11,
INDUSTRY_HANDHELD = 12,
INDUSTRY_TABLET = 13,
BANKING = 14,
BUILDING_AUTOMATION = 15,
DIGITAL_SIGNAGE = 16,
GAMING = 17,
HOME_AUTOMATION = 18,
INDUSTRIAL_AUTOMATION = 19,
KIOSK = 20,
MAKER_BOARD = 21,
MEDICAL = 22,
NETWORKING = 23,
POINT_OF_SERVICE = 24,
PRINTING = 25,
THIN_CLIENT = 26,
TOY = 27,
VENDING = 28,
INDUSTRY_OTHER = 29,
XBOX_ONE = 30,
XBOX_ONE_S = 31,
XBOX_ONE_X = 32,
XBOX_ONE_X_DEVKIT = 33,
XBOX_SERIES_X = 34,
XBOX_SERIES_X_DEVKIT = 35,
XBOX_RESERVED_00 = 36,
XBOX_RESERVED_01 = 37,
XBOX_RESERVED_02 = 38,
XBOX_RESERVED_03 = 39,
XBOX_RESERVED_04 = 40,
XBOX_RESERVED_05 = 41,
XBOX_RESERVED_06 = 42,
XBOX_RESERVED_07 = 43,
XBOX_RESERVED_08 = 44,
XBOX_RESERVED_09 = 45,
// MAX = 45, this enum value conflicts with XBOX_RESERVED_09
};
pub const DEVICEFAMILYDEVICEFORM_UNKNOWN = DEVICEFAMILYDEVICEFORM.UNKNOWN;
pub const DEVICEFAMILYDEVICEFORM_PHONE = DEVICEFAMILYDEVICEFORM.PHONE;
pub const DEVICEFAMILYDEVICEFORM_TABLET = DEVICEFAMILYDEVICEFORM.TABLET;
pub const DEVICEFAMILYDEVICEFORM_DESKTOP = DEVICEFAMILYDEVICEFORM.DESKTOP;
pub const DEVICEFAMILYDEVICEFORM_NOTEBOOK = DEVICEFAMILYDEVICEFORM.NOTEBOOK;
pub const DEVICEFAMILYDEVICEFORM_CONVERTIBLE = DEVICEFAMILYDEVICEFORM.CONVERTIBLE;
pub const DEVICEFAMILYDEVICEFORM_DETACHABLE = DEVICEFAMILYDEVICEFORM.DETACHABLE;
pub const DEVICEFAMILYDEVICEFORM_ALLINONE = DEVICEFAMILYDEVICEFORM.ALLINONE;
pub const DEVICEFAMILYDEVICEFORM_STICKPC = DEVICEFAMILYDEVICEFORM.STICKPC;
pub const DEVICEFAMILYDEVICEFORM_PUCK = DEVICEFAMILYDEVICEFORM.PUCK;
pub const DEVICEFAMILYDEVICEFORM_LARGESCREEN = DEVICEFAMILYDEVICEFORM.LARGESCREEN;
pub const DEVICEFAMILYDEVICEFORM_HMD = DEVICEFAMILYDEVICEFORM.HMD;
pub const DEVICEFAMILYDEVICEFORM_INDUSTRY_HANDHELD = DEVICEFAMILYDEVICEFORM.INDUSTRY_HANDHELD;
pub const DEVICEFAMILYDEVICEFORM_INDUSTRY_TABLET = DEVICEFAMILYDEVICEFORM.INDUSTRY_TABLET;
pub const DEVICEFAMILYDEVICEFORM_BANKING = DEVICEFAMILYDEVICEFORM.BANKING;
pub const DEVICEFAMILYDEVICEFORM_BUILDING_AUTOMATION = DEVICEFAMILYDEVICEFORM.BUILDING_AUTOMATION;
pub const DEVICEFAMILYDEVICEFORM_DIGITAL_SIGNAGE = DEVICEFAMILYDEVICEFORM.DIGITAL_SIGNAGE;
pub const DEVICEFAMILYDEVICEFORM_GAMING = DEVICEFAMILYDEVICEFORM.GAMING;
pub const DEVICEFAMILYDEVICEFORM_HOME_AUTOMATION = DEVICEFAMILYDEVICEFORM.HOME_AUTOMATION;
pub const DEVICEFAMILYDEVICEFORM_INDUSTRIAL_AUTOMATION = DEVICEFAMILYDEVICEFORM.INDUSTRIAL_AUTOMATION;
pub const DEVICEFAMILYDEVICEFORM_KIOSK = DEVICEFAMILYDEVICEFORM.KIOSK;
pub const DEVICEFAMILYDEVICEFORM_MAKER_BOARD = DEVICEFAMILYDEVICEFORM.MAKER_BOARD;
pub const DEVICEFAMILYDEVICEFORM_MEDICAL = DEVICEFAMILYDEVICEFORM.MEDICAL;
pub const DEVICEFAMILYDEVICEFORM_NETWORKING = DEVICEFAMILYDEVICEFORM.NETWORKING;
pub const DEVICEFAMILYDEVICEFORM_POINT_OF_SERVICE = DEVICEFAMILYDEVICEFORM.POINT_OF_SERVICE;
pub const DEVICEFAMILYDEVICEFORM_PRINTING = DEVICEFAMILYDEVICEFORM.PRINTING;
pub const DEVICEFAMILYDEVICEFORM_THIN_CLIENT = DEVICEFAMILYDEVICEFORM.THIN_CLIENT;
pub const DEVICEFAMILYDEVICEFORM_TOY = DEVICEFAMILYDEVICEFORM.TOY;
pub const DEVICEFAMILYDEVICEFORM_VENDING = DEVICEFAMILYDEVICEFORM.VENDING;
pub const DEVICEFAMILYDEVICEFORM_INDUSTRY_OTHER = DEVICEFAMILYDEVICEFORM.INDUSTRY_OTHER;
pub const DEVICEFAMILYDEVICEFORM_XBOX_ONE = DEVICEFAMILYDEVICEFORM.XBOX_ONE;
pub const DEVICEFAMILYDEVICEFORM_XBOX_ONE_S = DEVICEFAMILYDEVICEFORM.XBOX_ONE_S;
pub const DEVICEFAMILYDEVICEFORM_XBOX_ONE_X = DEVICEFAMILYDEVICEFORM.XBOX_ONE_X;
pub const DEVICEFAMILYDEVICEFORM_XBOX_ONE_X_DEVKIT = DEVICEFAMILYDEVICEFORM.XBOX_ONE_X_DEVKIT;
pub const DEVICEFAMILYDEVICEFORM_XBOX_SERIES_X = DEVICEFAMILYDEVICEFORM.XBOX_SERIES_X;
pub const DEVICEFAMILYDEVICEFORM_XBOX_SERIES_X_DEVKIT = DEVICEFAMILYDEVICEFORM.XBOX_SERIES_X_DEVKIT;
pub const DEVICEFAMILYDEVICEFORM_XBOX_RESERVED_00 = DEVICEFAMILYDEVICEFORM.XBOX_RESERVED_00;
pub const DEVICEFAMILYDEVICEFORM_XBOX_RESERVED_01 = DEVICEFAMILYDEVICEFORM.XBOX_RESERVED_01;
pub const DEVICEFAMILYDEVICEFORM_XBOX_RESERVED_02 = DEVICEFAMILYDEVICEFORM.XBOX_RESERVED_02;
pub const DEVICEFAMILYDEVICEFORM_XBOX_RESERVED_03 = DEVICEFAMILYDEVICEFORM.XBOX_RESERVED_03;
pub const DEVICEFAMILYDEVICEFORM_XBOX_RESERVED_04 = DEVICEFAMILYDEVICEFORM.XBOX_RESERVED_04;
pub const DEVICEFAMILYDEVICEFORM_XBOX_RESERVED_05 = DEVICEFAMILYDEVICEFORM.XBOX_RESERVED_05;
pub const DEVICEFAMILYDEVICEFORM_XBOX_RESERVED_06 = DEVICEFAMILYDEVICEFORM.XBOX_RESERVED_06;
pub const DEVICEFAMILYDEVICEFORM_XBOX_RESERVED_07 = DEVICEFAMILYDEVICEFORM.XBOX_RESERVED_07;
pub const DEVICEFAMILYDEVICEFORM_XBOX_RESERVED_08 = DEVICEFAMILYDEVICEFORM.XBOX_RESERVED_08;
pub const DEVICEFAMILYDEVICEFORM_XBOX_RESERVED_09 = DEVICEFAMILYDEVICEFORM.XBOX_RESERVED_09;
pub const DEVICEFAMILYDEVICEFORM_MAX = DEVICEFAMILYDEVICEFORM.XBOX_RESERVED_09;
pub const FIRMWARE_TABLE_ID = u32;
pub const GROUP_AFFINITY = extern struct {
Mask: usize,
Group: u16,
Reserved: [3]u16,
};
pub const SYSTEM_INFO = extern struct {
Anonymous: extern union {
dwOemId: u32,
Anonymous: extern struct {
wProcessorArchitecture: PROCESSOR_ARCHITECTURE,
wReserved: u16,
},
},
dwPageSize: u32,
lpMinimumApplicationAddress: ?*anyopaque,
lpMaximumApplicationAddress: ?*anyopaque,
dwActiveProcessorMask: usize,
dwNumberOfProcessors: u32,
dwProcessorType: u32,
dwAllocationGranularity: u32,
wProcessorLevel: u16,
wProcessorRevision: u16,
};
pub const MEMORYSTATUSEX = extern struct {
dwLength: u32,
dwMemoryLoad: u32,
ullTotalPhys: u64,
ullAvailPhys: u64,
ullTotalPageFile: u64,
ullAvailPageFile: u64,
ullTotalVirtual: u64,
ullAvailVirtual: u64,
ullAvailExtendedVirtual: u64,
};
pub const COMPUTER_NAME_FORMAT = enum(i32) {
NetBIOS = 0,
DnsHostname = 1,
DnsDomain = 2,
DnsFullyQualified = 3,
PhysicalNetBIOS = 4,
PhysicalDnsHostname = 5,
PhysicalDnsDomain = 6,
PhysicalDnsFullyQualified = 7,
Max = 8,
};
pub const ComputerNameNetBIOS = COMPUTER_NAME_FORMAT.NetBIOS;
pub const ComputerNameDnsHostname = COMPUTER_NAME_FORMAT.DnsHostname;
pub const ComputerNameDnsDomain = COMPUTER_NAME_FORMAT.DnsDomain;
pub const ComputerNameDnsFullyQualified = COMPUTER_NAME_FORMAT.DnsFullyQualified;
pub const ComputerNamePhysicalNetBIOS = COMPUTER_NAME_FORMAT.PhysicalNetBIOS;
pub const ComputerNamePhysicalDnsHostname = COMPUTER_NAME_FORMAT.PhysicalDnsHostname;
pub const ComputerNamePhysicalDnsDomain = COMPUTER_NAME_FORMAT.PhysicalDnsDomain;
pub const ComputerNamePhysicalDnsFullyQualified = COMPUTER_NAME_FORMAT.PhysicalDnsFullyQualified;
pub const ComputerNameMax = COMPUTER_NAME_FORMAT.Max;
pub const FIRMWARE_TYPE = enum(i32) {
Unknown = 0,
Bios = 1,
Uefi = 2,
Max = 3,
};
pub const FirmwareTypeUnknown = FIRMWARE_TYPE.Unknown;
pub const FirmwareTypeBios = FIRMWARE_TYPE.Bios;
pub const FirmwareTypeUefi = FIRMWARE_TYPE.Uefi;
pub const FirmwareTypeMax = FIRMWARE_TYPE.Max;
pub const LOGICAL_PROCESSOR_RELATIONSHIP = enum(i32) {
ProcessorCore = 0,
NumaNode = 1,
Cache = 2,
ProcessorPackage = 3,
Group = 4,
ProcessorDie = 5,
NumaNodeEx = 6,
ProcessorModule = 7,
All = 65535,
};
pub const RelationProcessorCore = LOGICAL_PROCESSOR_RELATIONSHIP.ProcessorCore;
pub const RelationNumaNode = LOGICAL_PROCESSOR_RELATIONSHIP.NumaNode;
pub const RelationCache = LOGICAL_PROCESSOR_RELATIONSHIP.Cache;
pub const RelationProcessorPackage = LOGICAL_PROCESSOR_RELATIONSHIP.ProcessorPackage;
pub const RelationGroup = LOGICAL_PROCESSOR_RELATIONSHIP.Group;
pub const RelationProcessorDie = LOGICAL_PROCESSOR_RELATIONSHIP.ProcessorDie;
pub const RelationNumaNodeEx = LOGICAL_PROCESSOR_RELATIONSHIP.NumaNodeEx;
pub const RelationProcessorModule = LOGICAL_PROCESSOR_RELATIONSHIP.ProcessorModule;
pub const RelationAll = LOGICAL_PROCESSOR_RELATIONSHIP.All;
pub const PROCESSOR_CACHE_TYPE = enum(i32) {
Unified = 0,
Instruction = 1,
Data = 2,
Trace = 3,
};
pub const CacheUnified = PROCESSOR_CACHE_TYPE.Unified;
pub const CacheInstruction = PROCESSOR_CACHE_TYPE.Instruction;
pub const CacheData = PROCESSOR_CACHE_TYPE.Data;
pub const CacheTrace = PROCESSOR_CACHE_TYPE.Trace;
pub const CACHE_DESCRIPTOR = extern struct {
Level: u8,
Associativity: u8,
LineSize: u16,
Size: u32,
Type: PROCESSOR_CACHE_TYPE,
};
pub const SYSTEM_LOGICAL_PROCESSOR_INFORMATION = extern struct {
ProcessorMask: usize,
Relationship: LOGICAL_PROCESSOR_RELATIONSHIP,
Anonymous: extern union {
ProcessorCore: extern struct {
Flags: u8,
},
NumaNode: extern struct {
NodeNumber: u32,
},
Cache: CACHE_DESCRIPTOR,
Reserved: [2]u64,
},
};
pub const PROCESSOR_RELATIONSHIP = extern struct {
Flags: u8,
EfficiencyClass: u8,
Reserved: [20]u8,
GroupCount: u16,
GroupMask: [1]GROUP_AFFINITY,
};
pub const NUMA_NODE_RELATIONSHIP = extern struct {
NodeNumber: u32,
Reserved: [18]u8,
GroupCount: u16,
Anonymous: extern union {
GroupMask: GROUP_AFFINITY,
GroupMasks: [1]GROUP_AFFINITY,
},
};
pub const CACHE_RELATIONSHIP = extern struct {
Level: u8,
Associativity: u8,
LineSize: u16,
CacheSize: u32,
Type: PROCESSOR_CACHE_TYPE,
Reserved: [18]u8,
GroupCount: u16,
Anonymous: extern union {
GroupMask: GROUP_AFFINITY,
GroupMasks: [1]GROUP_AFFINITY,
},
};
pub const PROCESSOR_GROUP_INFO = extern struct {
MaximumProcessorCount: u8,
ActiveProcessorCount: u8,
Reserved: [38]u8,
ActiveProcessorMask: usize,
};
pub const GROUP_RELATIONSHIP = extern struct {
MaximumGroupCount: u16,
ActiveGroupCount: u16,
Reserved: [20]u8,
GroupInfo: [1]PROCESSOR_GROUP_INFO,
};
pub const SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX = extern struct {
Relationship: LOGICAL_PROCESSOR_RELATIONSHIP,
Size: u32,
Anonymous: extern union {
Processor: PROCESSOR_RELATIONSHIP,
NumaNode: NUMA_NODE_RELATIONSHIP,
Cache: CACHE_RELATIONSHIP,
Group: GROUP_RELATIONSHIP,
},
};
pub const CPU_SET_INFORMATION_TYPE = enum(i32) {
n = 0,
};
pub const CpuSetInformation = CPU_SET_INFORMATION_TYPE.n;
pub const SYSTEM_CPU_SET_INFORMATION = extern struct {
Size: u32,
Type: CPU_SET_INFORMATION_TYPE,
Anonymous: extern union {
CpuSet: extern struct {
Id: u32,
Group: u16,
LogicalProcessorIndex: u8,
CoreIndex: u8,
LastLevelCacheIndex: u8,
NumaNodeIndex: u8,
EfficiencyClass: u8,
Anonymous1: extern union {
AllFlags: u8,
Anonymous: extern struct {
_bitfield: u8,
},
},
Anonymous2: extern union {
Reserved: u32,
SchedulingClass: u8,
},
AllocationTag: u64,
},
},
};
pub const SYSTEM_POOL_ZEROING_INFORMATION = extern struct {
PoolZeroingSupportPresent: BOOLEAN,
};
pub const SYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION = extern struct {
CycleTime: u64,
};
pub const SYSTEM_SUPPORTED_PROCESSOR_ARCHITECTURES_INFORMATION = extern struct {
_bitfield: u32,
};
pub const OSVERSIONINFOA = extern struct {
dwOSVersionInfoSize: u32,
dwMajorVersion: u32,
dwMinorVersion: u32,
dwBuildNumber: u32,
dwPlatformId: u32,
szCSDVersion: [128]CHAR,
};
pub const OSVERSIONINFOW = extern struct {
dwOSVersionInfoSize: u32,
dwMajorVersion: u32,
dwMinorVersion: u32,
dwBuildNumber: u32,
dwPlatformId: u32,
szCSDVersion: [128]u16,
};
pub const OSVERSIONINFOEXA = extern struct {
dwOSVersionInfoSize: u32,
dwMajorVersion: u32,
dwMinorVersion: u32,
dwBuildNumber: u32,
dwPlatformId: u32,
szCSDVersion: [128]CHAR,
wServicePackMajor: u16,
wServicePackMinor: u16,
wSuiteMask: u16,
wProductType: u8,
wReserved: u8,
};
pub const OSVERSIONINFOEXW = extern struct {
dwOSVersionInfoSize: u32,
dwMajorVersion: u32,
dwMinorVersion: u32,
dwBuildNumber: u32,
dwPlatformId: u32,
szCSDVersion: [128]u16,
wServicePackMajor: u16,
wServicePackMinor: u16,
wSuiteMask: u16,
wProductType: u8,
wReserved: u8,
};
pub const OS_DEPLOYEMENT_STATE_VALUES = enum(i32) {
STANDARD = 1,
COMPACT = 2,
};
pub const OS_DEPLOYMENT_STANDARD = OS_DEPLOYEMENT_STATE_VALUES.STANDARD;
pub const OS_DEPLOYMENT_COMPACT = OS_DEPLOYEMENT_STATE_VALUES.COMPACT;
pub const RTL_SYSTEM_GLOBAL_DATA_ID = enum(i32) {
Unknown = 0,
RngSeedVersion = 1,
InterruptTime = 2,
TimeZoneBias = 3,
ImageNumberLow = 4,
ImageNumberHigh = 5,
TimeZoneId = 6,
NtMajorVersion = 7,
NtMinorVersion = 8,
SystemExpirationDate = 9,
KdDebuggerEnabled = 10,
CyclesPerYield = 11,
SafeBootMode = 12,
LastSystemRITEventTickCount = 13,
};
pub const GlobalDataIdUnknown = RTL_SYSTEM_GLOBAL_DATA_ID.Unknown;
pub const GlobalDataIdRngSeedVersion = RTL_SYSTEM_GLOBAL_DATA_ID.RngSeedVersion;
pub const GlobalDataIdInterruptTime = RTL_SYSTEM_GLOBAL_DATA_ID.InterruptTime;
pub const GlobalDataIdTimeZoneBias = RTL_SYSTEM_GLOBAL_DATA_ID.TimeZoneBias;
pub const GlobalDataIdImageNumberLow = RTL_SYSTEM_GLOBAL_DATA_ID.ImageNumberLow;
pub const GlobalDataIdImageNumberHigh = RTL_SYSTEM_GLOBAL_DATA_ID.ImageNumberHigh;
pub const GlobalDataIdTimeZoneId = RTL_SYSTEM_GLOBAL_DATA_ID.TimeZoneId;
pub const GlobalDataIdNtMajorVersion = RTL_SYSTEM_GLOBAL_DATA_ID.NtMajorVersion;
pub const GlobalDataIdNtMinorVersion = RTL_SYSTEM_GLOBAL_DATA_ID.NtMinorVersion;
pub const GlobalDataIdSystemExpirationDate = RTL_SYSTEM_GLOBAL_DATA_ID.SystemExpirationDate;
pub const GlobalDataIdKdDebuggerEnabled = RTL_SYSTEM_GLOBAL_DATA_ID.KdDebuggerEnabled;
pub const GlobalDataIdCyclesPerYield = RTL_SYSTEM_GLOBAL_DATA_ID.CyclesPerYield;
pub const GlobalDataIdSafeBootMode = RTL_SYSTEM_GLOBAL_DATA_ID.SafeBootMode;
pub const GlobalDataIdLastSystemRITEventTickCount = RTL_SYSTEM_GLOBAL_DATA_ID.LastSystemRITEventTickCount;
pub const MEMORYSTATUS = extern struct {
dwLength: u32,
dwMemoryLoad: u32,
dwTotalPhys: usize,
dwAvailPhys: usize,
dwTotalPageFile: usize,
dwAvailPageFile: usize,
dwTotalVirtual: usize,
dwAvailVirtual: usize,
};
pub const DEP_SYSTEM_POLICY_TYPE = enum(i32) {
PolicyAlwaysOff = 0,
PolicyAlwaysOn = 1,
PolicyOptIn = 2,
PolicyOptOut = 3,
TotalPolicyCount = 4,
};
pub const DEPPolicyAlwaysOff = DEP_SYSTEM_POLICY_TYPE.PolicyAlwaysOff;
pub const DEPPolicyAlwaysOn = DEP_SYSTEM_POLICY_TYPE.PolicyAlwaysOn;
pub const DEPPolicyOptIn = DEP_SYSTEM_POLICY_TYPE.PolicyOptIn;
pub const DEPPolicyOptOut = DEP_SYSTEM_POLICY_TYPE.PolicyOptOut;
pub const DEPTotalPolicyCount = DEP_SYSTEM_POLICY_TYPE.TotalPolicyCount;
pub const PGET_SYSTEM_WOW64_DIRECTORY_A = switch (@import("builtin").zig_backend) {
.stage1 => fn(
lpBuffer: ?[*:0]u8,
uSize: u32,
) callconv(@import("std").os.windows.WINAPI) u32,
else => *const fn(
lpBuffer: ?[*:0]u8,
uSize: u32,
) callconv(@import("std").os.windows.WINAPI) u32,
} ;
pub const PGET_SYSTEM_WOW64_DIRECTORY_W = switch (@import("builtin").zig_backend) {
.stage1 => fn(
lpBuffer: ?[*:0]u16,
uSize: u32,
) callconv(@import("std").os.windows.WINAPI) u32,
else => *const fn(
lpBuffer: ?[*:0]u16,
uSize: u32,
) callconv(@import("std").os.windows.WINAPI) u32,
} ;
//--------------------------------------------------------------------------------
// Section: Functions (62)
//--------------------------------------------------------------------------------
// TODO: this type is limited to platform 'windows5.1.2600'
pub extern "kernel32" fn GlobalMemoryStatusEx(
lpBuffer: ?*MEMORYSTATUSEX,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn GetSystemInfo(
lpSystemInfo: ?*SYSTEM_INFO,
) callconv(@import("std").os.windows.WINAPI) void;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn GetSystemTime(
lpSystemTime: ?*SYSTEMTIME,
) callconv(@import("std").os.windows.WINAPI) void;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn GetSystemTimeAsFileTime(
lpSystemTimeAsFileTime: ?*FILETIME,
) callconv(@import("std").os.windows.WINAPI) void;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn GetLocalTime(
lpSystemTime: ?*SYSTEMTIME,
) callconv(@import("std").os.windows.WINAPI) void;
pub extern "kernel32" fn IsUserCetAvailableInEnvironment(
UserCetEnvironment: USER_CET_ENVIRONMENT,
) callconv(@import("std").os.windows.WINAPI) BOOL;
pub extern "kernel32" fn GetSystemLeapSecondInformation(
Enabled: ?*BOOL,
Flags: ?*u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn GetVersion(
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn SetLocalTime(
lpSystemTime: ?*const SYSTEMTIME,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn GetTickCount(
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "kernel32" fn GetTickCount64(
) callconv(@import("std").os.windows.WINAPI) u64;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn GetSystemTimeAdjustment(
lpTimeAdjustment: ?*u32,
lpTimeIncrement: ?*u32,
lpTimeAdjustmentDisabled: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows10.0.10240'
pub extern "api-ms-win-core-sysinfo-l1-2-4" fn GetSystemTimeAdjustmentPrecise(
lpTimeAdjustment: ?*u64,
lpTimeIncrement: ?*u64,
lpTimeAdjustmentDisabled: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn GetSystemDirectoryA(
lpBuffer: ?[*:0]u8,
uSize: u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn GetSystemDirectoryW(
lpBuffer: ?[*:0]u16,
uSize: u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn GetWindowsDirectoryA(
lpBuffer: ?[*:0]u8,
uSize: u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn GetWindowsDirectoryW(
lpBuffer: ?[*:0]u16,
uSize: u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn GetSystemWindowsDirectoryA(
lpBuffer: ?[*:0]u8,
uSize: u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn GetSystemWindowsDirectoryW(
lpBuffer: ?[*:0]u16,
uSize: u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn GetComputerNameExA(
NameType: COMPUTER_NAME_FORMAT,
lpBuffer: ?[*:0]u8,
nSize: ?*u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn GetComputerNameExW(
NameType: COMPUTER_NAME_FORMAT,
lpBuffer: ?[*:0]u16,
nSize: ?*u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn SetComputerNameExW(
NameType: COMPUTER_NAME_FORMAT,
lpBuffer: ?[*:0]const u16,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn SetSystemTime(
lpSystemTime: ?*const SYSTEMTIME,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn GetVersionExA(
lpVersionInformation: ?*OSVERSIONINFOA,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn GetVersionExW(
lpVersionInformation: ?*OSVERSIONINFOW,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "kernel32" fn GetLogicalProcessorInformation(
// TODO: what to do with BytesParamIndex 1?
Buffer: ?*SYSTEM_LOGICAL_PROCESSOR_INFORMATION,
ReturnedLength: ?*u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows6.1'
pub extern "kernel32" fn GetLogicalProcessorInformationEx(
RelationshipType: LOGICAL_PROCESSOR_RELATIONSHIP,
// TODO: what to do with BytesParamIndex 2?
Buffer: ?*SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX,
ReturnedLength: ?*u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.1.2600'
pub extern "kernel32" fn GetNativeSystemInfo(
lpSystemInfo: ?*SYSTEM_INFO,
) callconv(@import("std").os.windows.WINAPI) void;
// TODO: this type is limited to platform 'windows8.0'
pub extern "kernel32" fn GetSystemTimePreciseAsFileTime(
lpSystemTimeAsFileTime: ?*FILETIME,
) callconv(@import("std").os.windows.WINAPI) void;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "kernel32" fn GetProductInfo(
dwOSMajorVersion: u32,
dwOSMinorVersion: u32,
dwSpMajorVersion: u32,
dwSpMinorVersion: u32,
pdwReturnedProductType: ?*OS_PRODUCT_TYPE,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn VerSetConditionMask(
ConditionMask: u64,
TypeMask: VER_FLAGS,
Condition: u8,
) callconv(@import("std").os.windows.WINAPI) u64;
pub extern "api-ms-win-core-sysinfo-l1-2-0" fn GetOsSafeBootMode(
Flags: ?*u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "kernel32" fn EnumSystemFirmwareTables(
FirmwareTableProviderSignature: FIRMWARE_TABLE_PROVIDER,
// TODO: what to do with BytesParamIndex 2?
pFirmwareTableEnumBuffer: ?*FIRMWARE_TABLE_ID,
BufferSize: u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "kernel32" fn GetSystemFirmwareTable(
FirmwareTableProviderSignature: FIRMWARE_TABLE_PROVIDER,
FirmwareTableID: FIRMWARE_TABLE_ID,
// TODO: what to do with BytesParamIndex 3?
pFirmwareTableBuffer: ?*anyopaque,
BufferSize: u32,
) callconv(@import("std").os.windows.WINAPI) u32;
pub extern "kernel32" fn DnsHostnameToComputerNameExW(
Hostname: ?[*:0]const u16,
ComputerName: ?[*:0]u16,
nSize: ?*u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "kernel32" fn GetPhysicallyInstalledSystemMemory(
TotalMemoryInKilobytes: ?*u64,
) callconv(@import("std").os.windows.WINAPI) BOOL;
pub extern "kernel32" fn SetComputerNameEx2W(
NameType: COMPUTER_NAME_FORMAT,
Flags: u32,
lpBuffer: ?[*:0]const u16,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn SetSystemTimeAdjustment(
dwTimeAdjustment: u32,
bTimeAdjustmentDisabled: BOOL,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows10.0.10240'
pub extern "api-ms-win-core-sysinfo-l1-2-4" fn SetSystemTimeAdjustmentPrecise(
dwTimeAdjustment: u64,
bTimeAdjustmentDisabled: BOOL,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows6.1'
pub extern "kernel32" fn GetProcessorSystemCycleTime(
Group: u16,
// TODO: what to do with BytesParamIndex 2?
Buffer: ?*SYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION,
ReturnedLength: ?*u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
pub extern "api-ms-win-core-sysinfo-l1-2-3" fn GetOsManufacturingMode(
pbEnabled: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows10.0.10240'
pub extern "api-ms-win-core-sysinfo-l1-2-3" fn GetIntegratedDisplaySize(
sizeInInches: ?*f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn SetComputerNameA(
lpComputerName: ?[*:0]const u8,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn SetComputerNameW(
lpComputerName: ?[*:0]const u16,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn SetComputerNameExA(
NameType: COMPUTER_NAME_FORMAT,
lpBuffer: ?[*:0]const u8,
) callconv(@import("std").os.windows.WINAPI) BOOL;
pub extern "kernel32" fn GetSystemCpuSetInformation(
// TODO: what to do with BytesParamIndex 1?
Information: ?*SYSTEM_CPU_SET_INFORMATION,
BufferLength: u32,
ReturnedLength: ?*u32,
Process: ?HANDLE,
Flags: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.1.2600'
pub extern "kernel32" fn GetSystemWow64DirectoryA(
lpBuffer: ?[*:0]u8,
uSize: u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.1.2600'
pub extern "kernel32" fn GetSystemWow64DirectoryW(
lpBuffer: ?[*:0]u16,
uSize: u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows10.0.10586'
pub extern "api-ms-win-core-wow64-l1-1-1" fn GetSystemWow64Directory2A(
lpBuffer: ?[*:0]u8,
uSize: u32,
ImageFileMachineType: u16,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows10.0.10586'
pub extern "api-ms-win-core-wow64-l1-1-1" fn GetSystemWow64Directory2W(
lpBuffer: ?[*:0]u16,
uSize: u32,
ImageFileMachineType: u16,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows10.0.16299'
pub extern "kernel32" fn IsWow64GuestMachineSupported(
WowGuestMachine: u16,
MachineIsSupported: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "ntdll" fn RtlGetProductInfo(
OSMajorVersion: u32,
OSMinorVersion: u32,
SpMajorVersion: u32,
SpMinorVersion: u32,
ReturnedProductType: ?*u32,
) callconv(@import("std").os.windows.WINAPI) BOOLEAN;
pub extern "ntdll" fn RtlOsDeploymentState(
Flags: u32,
) callconv(@import("std").os.windows.WINAPI) OS_DEPLOYEMENT_STATE_VALUES;
pub extern "ntdllk" fn RtlGetSystemGlobalData(
DataId: RTL_SYSTEM_GLOBAL_DATA_ID,
Buffer: ?*anyopaque,
Size: u32,
) callconv(@import("std").os.windows.WINAPI) u32;
pub extern "ntdll" fn RtlGetDeviceFamilyInfoEnum(
pullUAPInfo: ?*u64,
pulDeviceFamily: ?*DEVICEFAMILYINFOENUM,
pulDeviceForm: ?*DEVICEFAMILYDEVICEFORM,
) callconv(@import("std").os.windows.WINAPI) void;
pub extern "ntdll" fn RtlConvertDeviceFamilyInfoToString(
pulDeviceFamilyBufferSize: ?*u32,
pulDeviceFormBufferSize: ?*u32,
// TODO: what to do with BytesParamIndex 0?
DeviceFamily: ?PWSTR,
// TODO: what to do with BytesParamIndex 1?
DeviceForm: ?PWSTR,
) callconv(@import("std").os.windows.WINAPI) u32;
pub extern "ntdll" fn RtlSwitchedVVI(
VersionInfo: ?*OSVERSIONINFOEXW,
TypeMask: u32,
ConditionMask: u64,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.1.2600'
pub extern "kernel32" fn GlobalMemoryStatus(
lpBuffer: ?*MEMORYSTATUS,
) callconv(@import("std").os.windows.WINAPI) void;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "kernel32" fn GetSystemDEPPolicy(
) callconv(@import("std").os.windows.WINAPI) DEP_SYSTEM_POLICY_TYPE;
// TODO: this type is limited to platform 'windows8.0'
pub extern "kernel32" fn GetFirmwareType(
FirmwareType: ?*FIRMWARE_TYPE,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn VerifyVersionInfoA(
lpVersionInformation: ?*OSVERSIONINFOEXA,
dwTypeMask: VER_FLAGS,
dwlConditionMask: u64,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "kernel32" fn VerifyVersionInfoW(
lpVersionInformation: ?*OSVERSIONINFOEXW,
dwTypeMask: VER_FLAGS,
dwlConditionMask: u64,
) callconv(@import("std").os.windows.WINAPI) BOOL;
//--------------------------------------------------------------------------------
// Section: Unicode Aliases (13)
//--------------------------------------------------------------------------------
const thismodule = @This();
pub usingnamespace switch (@import("../zig.zig").unicode_mode) {
.ansi => struct {
pub const OSVERSIONINFO = thismodule.OSVERSIONINFOA;
pub const OSVERSIONINFOEX = thismodule.OSVERSIONINFOEXA;
pub const PGET_SYSTEM_WOW64_DIRECTORY_ = thismodule.PGET_SYSTEM_WOW64_DIRECTORY_A;
pub const GetSystemDirectory = thismodule.GetSystemDirectoryA;
pub const GetWindowsDirectory = thismodule.GetWindowsDirectoryA;
pub const GetSystemWindowsDirectory = thismodule.GetSystemWindowsDirectoryA;
pub const GetComputerNameEx = thismodule.GetComputerNameExA;
pub const SetComputerNameEx = thismodule.SetComputerNameExA;
pub const GetVersionEx = thismodule.GetVersionExA;
pub const SetComputerName = thismodule.SetComputerNameA;
pub const GetSystemWow64Directory = thismodule.GetSystemWow64DirectoryA;
pub const GetSystemWow64Directory2 = thismodule.GetSystemWow64Directory2A;
pub const VerifyVersionInfo = thismodule.VerifyVersionInfoA;
},
.wide => struct {
pub const OSVERSIONINFO = thismodule.OSVERSIONINFOW;
pub const OSVERSIONINFOEX = thismodule.OSVERSIONINFOEXW;
pub const PGET_SYSTEM_WOW64_DIRECTORY_ = thismodule.PGET_SYSTEM_WOW64_DIRECTORY_W;
pub const GetSystemDirectory = thismodule.GetSystemDirectoryW;
pub const GetWindowsDirectory = thismodule.GetWindowsDirectoryW;
pub const GetSystemWindowsDirectory = thismodule.GetSystemWindowsDirectoryW;
pub const GetComputerNameEx = thismodule.GetComputerNameExW;
pub const SetComputerNameEx = thismodule.SetComputerNameExW;
pub const GetVersionEx = thismodule.GetVersionExW;
pub const SetComputerName = thismodule.SetComputerNameW;
pub const GetSystemWow64Directory = thismodule.GetSystemWow64DirectoryW;
pub const GetSystemWow64Directory2 = thismodule.GetSystemWow64Directory2W;
pub const VerifyVersionInfo = thismodule.VerifyVersionInfoW;
},
.unspecified => if (@import("builtin").is_test) struct {
pub const OSVERSIONINFO = *opaque{};
pub const OSVERSIONINFOEX = *opaque{};
pub const PGET_SYSTEM_WOW64_DIRECTORY_ = *opaque{};
pub const GetSystemDirectory = *opaque{};
pub const GetWindowsDirectory = *opaque{};
pub const GetSystemWindowsDirectory = *opaque{};
pub const GetComputerNameEx = *opaque{};
pub const SetComputerNameEx = *opaque{};
pub const GetVersionEx = *opaque{};
pub const SetComputerName = *opaque{};
pub const GetSystemWow64Directory = *opaque{};
pub const GetSystemWow64Directory2 = *opaque{};
pub const VerifyVersionInfo = *opaque{};
} else struct {
pub const OSVERSIONINFO = @compileError("'OSVERSIONINFO' requires that UNICODE be set to true or false in the root module");
pub const OSVERSIONINFOEX = @compileError("'OSVERSIONINFOEX' requires that UNICODE be set to true or false in the root module");
pub const PGET_SYSTEM_WOW64_DIRECTORY_ = @compileError("'PGET_SYSTEM_WOW64_DIRECTORY_' requires that UNICODE be set to true or false in the root module");
pub const GetSystemDirectory = @compileError("'GetSystemDirectory' requires that UNICODE be set to true or false in the root module");
pub const GetWindowsDirectory = @compileError("'GetWindowsDirectory' requires that UNICODE be set to true or false in the root module");
pub const GetSystemWindowsDirectory = @compileError("'GetSystemWindowsDirectory' requires that UNICODE be set to true or false in the root module");
pub const GetComputerNameEx = @compileError("'GetComputerNameEx' requires that UNICODE be set to true or false in the root module");
pub const SetComputerNameEx = @compileError("'SetComputerNameEx' requires that UNICODE be set to true or false in the root module");
pub const GetVersionEx = @compileError("'GetVersionEx' requires that UNICODE be set to true or false in the root module");
pub const SetComputerName = @compileError("'SetComputerName' requires that UNICODE be set to true or false in the root module");
pub const GetSystemWow64Directory = @compileError("'GetSystemWow64Directory' requires that UNICODE be set to true or false in the root module");
pub const GetSystemWow64Directory2 = @compileError("'GetSystemWow64Directory2' requires that UNICODE be set to true or false in the root module");
pub const VerifyVersionInfo = @compileError("'VerifyVersionInfo' requires that UNICODE be set to true or false in the root module");
},
};
//--------------------------------------------------------------------------------
// Section: Imports (10)
//--------------------------------------------------------------------------------
const BOOL = @import("../foundation.zig").BOOL;
const BOOLEAN = @import("../foundation.zig").BOOLEAN;
const CHAR = @import("../foundation.zig").CHAR;
const FILETIME = @import("../foundation.zig").FILETIME;
const HANDLE = @import("../foundation.zig").HANDLE;
const HRESULT = @import("../foundation.zig").HRESULT;
const PROCESSOR_ARCHITECTURE = @import("../system/diagnostics/debug.zig").PROCESSOR_ARCHITECTURE;
const PSTR = @import("../foundation.zig").PSTR;
const PWSTR = @import("../foundation.zig").PWSTR;
const SYSTEMTIME = @import("../foundation.zig").SYSTEMTIME;
test {
// The following '_ = <FuncPtrType>' lines are a workaround for https://github.com/ziglang/zig/issues/4476
if (@hasDecl(@This(), "PGET_SYSTEM_WOW64_DIRECTORY_A")) { _ = PGET_SYSTEM_WOW64_DIRECTORY_A; }
if (@hasDecl(@This(), "PGET_SYSTEM_WOW64_DIRECTORY_W")) { _ = PGET_SYSTEM_WOW64_DIRECTORY_W; }
@setEvalBranchQuota(
comptime @import("std").meta.declarations(@This()).len * 3
);
// reference all the pub declarations
if (!@import("builtin").is_test) return;
inline for (comptime @import("std").meta.declarations(@This())) |decl| {
_ = @field(@This(), decl.name);
}
}