mirror of
https://github.com/reactos/reactos.git
synced 2025-04-30 02:58:48 +00:00

CORE-13525 Notes: - Most of the exported functions have been turned from default cdecl to explicit stdcall / "NTAPI". - The two InitializeSetup() phases have been collapsed to make the initialization simpler. Average reductions (percentages; see PR #7523 for actual numbers): x86 Debug builds: reactos.exe: 35.1% smss.exe : 39.8% Total (including setuplib.dll): 17.9% x86 Release builds: reactos.exe: 22.3% smss.exe : 25.0% Total (including setuplib.dll): 10.6% x64 Debug builds: reactos.exe: 40.6% smss.exe : 41.6% Total (including setuplib.dll): 20.0% x64 Release builds: reactos.exe: 22.8% smss.exe : 22.3% Total (including setuplib.dll): 10.1%
43 lines
1.4 KiB
C
43 lines
1.4 KiB
C
/*
|
|
* PROJECT: ReactOS Setup Library
|
|
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
|
* PURPOSE: NT 5.x family (MS Windows <= 2003, and ReactOS)
|
|
* operating systems detection code.
|
|
* COPYRIGHT: Copyright 2017-2024 Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
/* Language-independent Vendor strings */
|
|
#define VENDOR_REACTOS L"ReactOS"
|
|
#define VENDOR_MICROSOFT L"Microsoft"
|
|
|
|
typedef struct _NTOS_INSTALLATION
|
|
{
|
|
LIST_ENTRY ListEntry;
|
|
// BOOLEAN IsDefault; // TRUE / FALSE whether this installation is marked as "default" in its corresponding loader configuration file.
|
|
USHORT Machine; // Target architecture of the NTOS installation
|
|
UNICODE_STRING SystemArcPath; // Normalized ARC path ("ArcSystemRoot")
|
|
UNICODE_STRING SystemNtPath; // Corresponding NT path ("NtSystemRoot")
|
|
PCWSTR PathComponent; // Pointer inside SystemNtPath.Buffer
|
|
ULONG DiskNumber;
|
|
ULONG PartitionNumber;
|
|
PVOLENTRY Volume; // PVOLINFO
|
|
WCHAR InstallationName[MAX_PATH];
|
|
WCHAR VendorName[MAX_PATH];
|
|
// CHAR Data[ANYSIZE_ARRAY];
|
|
} NTOS_INSTALLATION, *PNTOS_INSTALLATION;
|
|
|
|
// EnumerateNTOSInstallations
|
|
PGENERIC_LIST
|
|
NTAPI
|
|
CreateNTOSInstallationsList(
|
|
_In_ PPARTLIST PartList);
|
|
|
|
PCWSTR
|
|
NTAPI
|
|
FindSubStrI(
|
|
_In_ PCWSTR str,
|
|
_In_ PCWSTR strSearch);
|
|
|
|
/* EOF */
|