mirror of
https://codeberg.org/ziglang/zig.git
synced 2025-12-06 22:04:21 +00:00
73 lines
2.1 KiB
Zig
73 lines
2.1 KiB
Zig
const std = @import("../../std.zig");
|
|
const windows = std.os.windows;
|
|
const BOOL = windows.BOOL;
|
|
const DWORD = windows.DWORD;
|
|
const HKEY = windows.HKEY;
|
|
const BYTE = windows.BYTE;
|
|
const LPCWSTR = windows.LPCWSTR;
|
|
const LSTATUS = windows.LSTATUS;
|
|
const REGSAM = windows.REGSAM;
|
|
const ULONG = windows.ULONG;
|
|
const WINAPI = windows.WINAPI;
|
|
|
|
pub extern "advapi32" fn RegOpenKeyExW(
|
|
hKey: HKEY,
|
|
lpSubKey: LPCWSTR,
|
|
ulOptions: DWORD,
|
|
samDesired: REGSAM,
|
|
phkResult: *HKEY,
|
|
) callconv(WINAPI) LSTATUS;
|
|
|
|
pub extern "advapi32" fn RegQueryValueExW(
|
|
hKey: HKEY,
|
|
lpValueName: LPCWSTR,
|
|
lpReserved: ?*DWORD,
|
|
lpType: ?*DWORD,
|
|
lpData: ?*BYTE,
|
|
lpcbData: ?*DWORD,
|
|
) callconv(WINAPI) LSTATUS;
|
|
|
|
pub extern "advapi32" fn RegCloseKey(hKey: HKEY) callconv(WINAPI) LSTATUS;
|
|
|
|
// RtlGenRandom is known as SystemFunction036 under advapi32
|
|
// http://msdn.microsoft.com/en-us/library/windows/desktop/aa387694.aspx */
|
|
pub extern "advapi32" fn SystemFunction036(output: [*]u8, length: ULONG) callconv(WINAPI) BOOL;
|
|
pub const RtlGenRandom = SystemFunction036;
|
|
|
|
pub const RRF = struct {
|
|
pub const RT_ANY: DWORD = 0x0000ffff;
|
|
|
|
pub const RT_DWORD: DWORD = 0x00000018;
|
|
pub const RT_QWORD: DWORD = 0x00000048;
|
|
|
|
pub const RT_REG_BINARY: DWORD = 0x00000008;
|
|
pub const RT_REG_DWORD: DWORD = 0x00000010;
|
|
pub const RT_REG_EXPAND_SZ: DWORD = 0x00000004;
|
|
pub const RT_REG_MULTI_SZ: DWORD = 0x00000020;
|
|
pub const RT_REG_NONE: DWORD = 0x00000001;
|
|
pub const RT_REG_QWORD: DWORD = 0x00000040;
|
|
pub const RT_REG_SZ: DWORD = 0x00000002;
|
|
|
|
pub const NOEXPAND: DWORD = 0x10000000;
|
|
pub const ZEROONFAILURE: DWORD = 0x20000000;
|
|
pub const SUBKEY_WOW6464KEY: DWORD = 0x00010000;
|
|
pub const SUBKEY_WOW6432KEY: DWORD = 0x00020000;
|
|
};
|
|
|
|
pub extern "advapi32" fn RegGetValueW(
|
|
hkey: HKEY,
|
|
lpSubKey: LPCWSTR,
|
|
lpValue: LPCWSTR,
|
|
dwFlags: DWORD,
|
|
pdwType: ?*DWORD,
|
|
pvData: ?*anyopaque,
|
|
pcbData: ?*DWORD,
|
|
) callconv(WINAPI) LSTATUS;
|
|
|
|
pub extern "advapi32" fn RegLoadAppKeyW(
|
|
lpFile: LPCWSTR,
|
|
phkResult: *HKEY,
|
|
samDesired: REGSAM,
|
|
dwOptions: DWORD,
|
|
reserved: DWORD,
|
|
) callconv(WINAPI) LSTATUS;
|