1 // Licensed to the .NET Foundation under one or more agreements. 2 // The .NET Foundation licenses this file to you under the MIT license. 3 // See the LICENSE file in the project root for more information. 4 5 internal partial class Interop 6 { 7 internal partial class mincore 8 { 9 internal partial class RegistryOptions 10 { 11 internal const int REG_OPTION_NON_VOLATILE = 0x0000; // (default) keys are persisted beyond reboot/unload 12 internal const int REG_OPTION_VOLATILE = 0x0001; // All keys created by the function are volatile 13 internal const int REG_OPTION_CREATE_LINK = 0x0002; // They key is a symbolic link 14 internal const int REG_OPTION_BACKUP_RESTORE = 0x0004; // Use SE_BACKUP_NAME process special privileges 15 } 16 17 internal partial class RegistryView 18 { 19 internal const int KEY_WOW64_64KEY = 0x0100; 20 internal const int KEY_WOW64_32KEY = 0x0200; 21 } 22 23 internal partial class RegistryOperations 24 { 25 internal const int KEY_QUERY_VALUE = 0x0001; 26 internal const int KEY_SET_VALUE = 0x0002; 27 internal const int KEY_CREATE_SUB_KEY = 0x0004; 28 internal const int KEY_ENUMERATE_SUB_KEYS = 0x0008; 29 internal const int KEY_NOTIFY = 0x0010; 30 internal const int KEY_CREATE_LINK = 0x0020; 31 internal const int KEY_READ = ((STANDARD_RIGHTS_READ | 32 KEY_QUERY_VALUE | 33 KEY_ENUMERATE_SUB_KEYS | 34 KEY_NOTIFY) 35 & 36 (~SYNCHRONIZE)); 37 38 internal const int KEY_WRITE = ((STANDARD_RIGHTS_WRITE | 39 KEY_SET_VALUE | 40 KEY_CREATE_SUB_KEY) 41 & 42 (~SYNCHRONIZE)); 43 44 internal const int SYNCHRONIZE = 0x00100000; 45 internal const int READ_CONTROL = 0x00020000; 46 internal const int STANDARD_RIGHTS_READ = READ_CONTROL; 47 internal const int STANDARD_RIGHTS_WRITE = READ_CONTROL; 48 } 49 50 internal partial class RegistryValues 51 { 52 internal const int REG_NONE = 0; // No value type 53 internal const int REG_SZ = 1; // Unicode nul terminated string 54 internal const int REG_EXPAND_SZ = 2; // Unicode nul terminated string 55 // (with environment variable references) 56 internal const int REG_BINARY = 3; // Free form binary 57 internal const int REG_DWORD = 4; // 32-bit number 58 internal const int REG_DWORD_LITTLE_ENDIAN = 4; // 32-bit number (same as REG_DWORD) 59 internal const int REG_DWORD_BIG_ENDIAN = 5; // 32-bit number 60 internal const int REG_LINK = 6; // Symbolic Link (Unicode) 61 internal const int REG_MULTI_SZ = 7; // Multiple Unicode strings 62 internal const int REG_QWORD = 11; // 64-bit number 63 } 64 } 65 } 66