ReactOS
0.4.16-dev-250-g3ecd236
osdetect.h
Go to the documentation of this file.
1
/*
2
* PROJECT: ReactOS Setup Library
3
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
4
* PURPOSE: NT 5.x family (MS Windows <= 2003, and ReactOS)
5
* operating systems detection code.
6
* COPYRIGHT: Copyright 2017-2024 Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
7
*/
8
9
#pragma once
10
11
/* Language-independent Vendor strings */
12
#define VENDOR_REACTOS L"ReactOS"
13
#define VENDOR_MICROSOFT L"Microsoft"
14
15
typedef
struct
_NTOS_INSTALLATION
16
{
17
LIST_ENTRY
ListEntry
;
18
// BOOLEAN IsDefault; // TRUE / FALSE whether this installation is marked as "default" in its corresponding loader configuration file.
19
USHORT
Machine
;
// Target architecture of the NTOS installation
20
UNICODE_STRING
SystemArcPath
;
// Normalized ARC path ("ArcSystemRoot")
21
UNICODE_STRING
SystemNtPath
;
// Corresponding NT path ("NtSystemRoot")
22
PCWSTR
PathComponent
;
// Pointer inside SystemNtPath.Buffer
23
ULONG
DiskNumber
;
24
ULONG
PartitionNumber
;
25
PVOLENTRY
Volume
;
// PVOLINFO
26
WCHAR
InstallationName
[
MAX_PATH
];
27
WCHAR
VendorName
[
MAX_PATH
];
28
// CHAR Data[ANYSIZE_ARRAY];
29
}
NTOS_INSTALLATION
, *
PNTOS_INSTALLATION
;
30
31
// EnumerateNTOSInstallations
32
PGENERIC_LIST
33
CreateNTOSInstallationsList
(
34
_In_
PPARTLIST
PartList);
35
36
/*
37
* FindSubStrI(PCWSTR str, PCWSTR strSearch) :
38
* Searches for a sub-string 'strSearch' inside 'str', similarly to what
39
* wcsstr(str, strSearch) does, but ignores the case during the comparisons.
40
*/
41
PCWSTR
FindSubStrI
(
PCWSTR
str
,
PCWSTR
strSearch);
42
43
/* EOF */
MAX_PATH
#define MAX_PATH
Definition:
compat.h:34
_In_
#define _In_
Definition:
no_sal2.h:158
NTOS_INSTALLATION
struct _NTOS_INSTALLATION NTOS_INSTALLATION
CreateNTOSInstallationsList
PGENERIC_LIST CreateNTOSInstallationsList(_In_ PPARTLIST PartList)
Create a list of available NT OS installations on the computer, by searching for recognized ones on e...
Definition:
osdetect.c:763
PNTOS_INSTALLATION
struct _NTOS_INSTALLATION * PNTOS_INSTALLATION
FindSubStrI
PCWSTR FindSubStrI(PCWSTR str, PCWSTR strSearch)
Definition:
osdetect.c:217
USHORT
unsigned short USHORT
Definition:
pedump.c:61
str
const WCHAR * str
Definition:
rpc_transport.c:2724
_GENERIC_LIST
Definition:
genlist.h:19
_LIST_ENTRY
Definition:
typedefs.h:120
_NTOS_INSTALLATION
Definition:
osdetect.h:16
_NTOS_INSTALLATION::PartitionNumber
ULONG PartitionNumber
Definition:
osdetect.h:24
_NTOS_INSTALLATION::DiskNumber
ULONG DiskNumber
Definition:
osdetect.h:23
_NTOS_INSTALLATION::Machine
USHORT Machine
Definition:
osdetect.h:19
_NTOS_INSTALLATION::InstallationName
WCHAR InstallationName[MAX_PATH]
Definition:
osdetect.h:26
_NTOS_INSTALLATION::SystemNtPath
UNICODE_STRING SystemNtPath
Definition:
osdetect.h:21
_NTOS_INSTALLATION::ListEntry
LIST_ENTRY ListEntry
Definition:
osdetect.h:17
_NTOS_INSTALLATION::VendorName
WCHAR VendorName[MAX_PATH]
Definition:
osdetect.h:27
_NTOS_INSTALLATION::Volume
PVOLENTRY Volume
Definition:
osdetect.h:25
_NTOS_INSTALLATION::SystemArcPath
UNICODE_STRING SystemArcPath
Definition:
osdetect.h:20
_NTOS_INSTALLATION::PathComponent
PCWSTR PathComponent
Definition:
osdetect.h:22
_PARTLIST
Definition:
partlist.h:171
_UNICODE_STRING
Definition:
env_spec_w32.h:368
_VOLENTRY
Definition:
partlist.h:44
PCWSTR
const uint16_t * PCWSTR
Definition:
typedefs.h:57
ULONG
uint32_t ULONG
Definition:
typedefs.h:59
WCHAR
__wchar_t WCHAR
Definition:
xmlstorage.h:180
base
setup
lib
utils
osdetect.h
Generated on Fri Nov 8 2024 06:02:34 for ReactOS by
1.9.6