Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys.

This commit is contained in:
Colin Finck 2017-10-03 07:45:34 +00:00
parent b94e2d8ca0
commit c2c66aff7d
24198 changed files with 0 additions and 37285 deletions

0
base/setup/.gitignore vendored Normal file
View file

View file

@ -0,0 +1,5 @@
add_subdirectory(reactos)
add_subdirectory(setup)
add_subdirectory(usetup)
add_subdirectory(welcome)

View file

@ -0,0 +1,14 @@
list(APPEND SOURCE
drivepage.c
reactos.c
reactos.h)
file(GLOB reactos_rc_deps res/*.*)
add_rc_deps(reactos.rc ${reactos_rc_deps})
add_executable(reactos ${SOURCE} reactos.rc)
add_pch(reactos reactos.h SOURCE)
target_link_libraries(reactos uuid)
set_module_type(reactos win32gui UNICODE)
add_importlibs(reactos advapi32 gdi32 user32 comctl32 setupapi msvcrt kernel32 ntdll)
add_cd_file(TARGET reactos DESTINATION reactos NO_CAB FOR bootcd)

View file

@ -0,0 +1,269 @@
/*
* ReactOS applications
* Copyright (C) 2004-2008 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS GUI first stage setup application
* FILE: base/setup/reactos/drivepage.c
* PROGRAMMERS: Eric Kohl
* Matthias Kupfer
* Dmitry Chapyshev (dmitry@reactos.org)
*/
#include "reactos.h"
#include "resource.h"
/* GLOBALS ******************************************************************/
#define MAX_LIST_COLUMNS (IDS_LIST_COLUMN_LAST - IDS_LIST_COLUMN_FIRST + 1)
static const int default_column_widths[MAX_LIST_COLUMNS] = {200, 150, 150};
static const int column_alignment[MAX_LIST_COLUMNS] = {LVCFMT_LEFT, LVCFMT_LEFT, LVCFMT_LEFT};
/* FUNCTIONS ****************************************************************/
static INT_PTR CALLBACK
MoreOptDlgProc(HWND hwndDlg,
UINT uMsg,
WPARAM wParam,
LPARAM lParam)
{
PSETUPDATA pSetupData;
/* Retrieve pointer to the global setup data */
pSetupData = (PSETUPDATA)GetWindowLongPtr (hwndDlg, GWL_USERDATA);
switch (uMsg)
{
case WM_INITDIALOG:
/* Save pointer to the global setup data */
pSetupData = (PSETUPDATA)((LPPROPSHEETPAGE)lParam)->lParam;
SetWindowLongPtr(hwndDlg, GWL_USERDATA, (DWORD_PTR)pSetupData);
CheckDlgButton(hwndDlg, IDC_INSTFREELDR, BST_CHECKED);
SendMessage(GetDlgItem(hwndDlg, IDC_PATH),
WM_SETTEXT,
(WPARAM)0,
(LPARAM)pSetupData->InstallDir);
break;
case WM_COMMAND:
switch(LOWORD(wParam))
{
case IDOK:
SendMessage(GetDlgItem(hwndDlg, IDC_PATH),
WM_GETTEXT,
(WPARAM)sizeof(pSetupData->InstallDir) / sizeof(TCHAR),
(LPARAM)pSetupData->InstallDir);
EndDialog(hwndDlg, IDOK);
return TRUE;
case IDCANCEL:
EndDialog(hwndDlg, IDCANCEL);
return TRUE;
}
break;
}
return FALSE;
}
static INT_PTR CALLBACK
PartitionDlgProc(HWND hwndDlg,
UINT uMsg,
WPARAM wParam,
LPARAM lParam)
{
switch (uMsg)
{
case WM_INITDIALOG:
break;
case WM_COMMAND:
{
switch(LOWORD(wParam))
{
case IDOK:
EndDialog(hwndDlg, IDOK);
return TRUE;
case IDCANCEL:
EndDialog(hwndDlg, IDCANCEL);
return TRUE;
}
}
}
return FALSE;
}
static
BOOL
CreateListViewColumns(
HINSTANCE hInstance,
HWND hWndListView)
{
WCHAR szText[50];
int index;
LVCOLUMN lvC;
/* Create columns. */
lvC.mask = LVCF_FMT | LVCF_WIDTH | LVCF_TEXT | LVCF_SUBITEM;
lvC.pszText = szText;
/* Load the column labels from the resource file. */
for (index = 0; index < MAX_LIST_COLUMNS; index++)
{
lvC.iSubItem = index;
lvC.cx = default_column_widths[index];
lvC.fmt = column_alignment[index];
LoadStringW(hInstance, IDS_LIST_COLUMN_FIRST + index, szText, 50);
if (ListView_InsertColumn(hWndListView, index, &lvC) == -1)
return FALSE;
}
return TRUE;
}
INT_PTR
CALLBACK
DriveDlgProc(
HWND hwndDlg,
UINT uMsg,
WPARAM wParam,
LPARAM lParam)
{
PSETUPDATA pSetupData;
#if 1
HDEVINFO h;
HWND hList;
SP_DEVINFO_DATA DevInfoData;
DWORD i;
#endif
/* Retrieve pointer to the global setup data */
pSetupData = (PSETUPDATA)GetWindowLongPtr (hwndDlg, GWL_USERDATA);
switch (uMsg)
{
case WM_INITDIALOG:
{
/* Save pointer to the global setup data */
pSetupData = (PSETUPDATA)((LPPROPSHEETPAGE)lParam)->lParam;
SetWindowLongPtr(hwndDlg, GWL_USERDATA, (DWORD_PTR)pSetupData);
CreateListViewColumns(pSetupData->hInstance,
GetDlgItem(hwndDlg, IDC_PARTITION));
#if 1
h = SetupDiGetClassDevs(&GUID_DEVCLASS_DISKDRIVE, NULL, NULL, DIGCF_PRESENT);
if (h != INVALID_HANDLE_VALUE)
{
hList =GetDlgItem(hwndDlg, IDC_PARTITION);
DevInfoData.cbSize = sizeof(SP_DEVINFO_DATA);
for (i=0; SetupDiEnumDeviceInfo(h, i, &DevInfoData); i++)
{
DWORD DataT;
LPTSTR buffer = NULL;
DWORD buffersize = 0;
while (!SetupDiGetDeviceRegistryProperty(h,
&DevInfoData,
SPDRP_DEVICEDESC,
&DataT,
(PBYTE)buffer,
buffersize,
&buffersize))
{
if (GetLastError() == ERROR_INSUFFICIENT_BUFFER)
{
if (buffer) LocalFree(buffer);
buffer = LocalAlloc(LPTR, buffersize * 2);
}
else
break;
}
if (buffer)
{
SendMessage(hList, LB_ADDSTRING, (WPARAM) 0, (LPARAM) buffer);
LocalFree(buffer);
}
}
SetupDiDestroyDeviceInfoList(h);
}
#endif
}
break;
case WM_COMMAND:
{
switch(LOWORD(wParam))
{
case IDC_PARTMOREOPTS:
DialogBoxParam(pSetupData->hInstance,
MAKEINTRESOURCE(IDD_BOOTOPTIONS),
hwndDlg,
(DLGPROC)MoreOptDlgProc,
(LPARAM)pSetupData);
break;
case IDC_PARTCREATE:
DialogBox(pSetupData->hInstance,
MAKEINTRESOURCE(IDD_PARTITION),
hwndDlg,
(DLGPROC) PartitionDlgProc);
break;
case IDC_PARTDELETE:
break;
}
break;
}
case WM_NOTIFY:
{
LPNMHDR lpnm = (LPNMHDR)lParam;
switch (lpnm->code)
{
case PSN_SETACTIVE:
PropSheet_SetWizButtons(GetParent(hwndDlg), PSWIZB_NEXT | PSWIZB_BACK);
break;
case PSN_QUERYCANCEL:
SetWindowLongPtr(hwndDlg,
DWL_MSGRESULT,
MessageBox(GetParent(hwndDlg),
pSetupData->szAbortMessage,
pSetupData->szAbortTitle,
MB_YESNO | MB_ICONQUESTION) != IDYES);
return TRUE;
default:
break;
}
}
break;
default:
break;
}
return FALSE;
}
/* EOF */

View file

@ -0,0 +1,137 @@
LANGUAGE LANG_BULGARIAN, SUBLANG_DEFAULT
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Настройка на РеактОС"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Съветникът за настройка на РеактОС ви приветства!", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "Все още не можете да сложите РеактОС направо от този КД! Презапуснете компютъра с този КД, за да сложите РеактОС.", IDC_STATIC, 115, 40, 195, 100
LTEXT "Натиснете „Приключване“ за изход от настройването.", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Настройка на РеактОС"
FONT 8, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "Слагане на РеактОС", IDC_INSTALL, 7, 7, 277, 10
LTEXT "Install a new copy of ReactOS. This option does not keep your files, settings and programs. You can make changes to disks and partitions.", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "Поправка или осъвременяване на сложен РеактОС", IDC_UPDATE, 7, 50, 277, 10
LTEXT "Update or repair an installed copy of ReactOS. This option keeps your files, settings and programs. This option is only available if ReactOS is already installed on this computer.", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "Натиснете „Напред“ за настройка на устройствата.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Настройка на РеактОС"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Компютър:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 150, 80
LTEXT " Екран:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 150, 80
LTEXT "Клавиатура", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 150, 80
LTEXT "Натиснете „Напред“ за избор на устройство за слагане.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Настройка на РеактОС"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "&Създаване", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "Из&триване", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "Драйвер", IDC_DEVICEDRIVER, 174, 122, 50, 15, WS_DISABLED
PUSHBUTTON "Раз&ширани възможности...", IDC_PARTMOREOPTS, 230, 122, 80, 15
LTEXT "Натиснете „Напред“, за да започне слагането.", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Създаване на дял"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "Създаване и форматиране на дял", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "Размер:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "ГБ", IDC_UNIT, 117, 24, 14, 9
LTEXT "Файлова уредба:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "&Добре", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "&Отказ", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Разширени дялови настройски"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "Папка за слагане", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "Слагане на зареждач", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "Слагане на начален зареждач (MBR и VBR) на твърдия диск", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "Слагане на начален зареждач (само VBR) на твърдия диск", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "Без слагане на начален зареждач", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "&Добре", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "&Отказ", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Слагане на РеактОС"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Натиснете „Напред“ за за начало на слагането.", IDC_STATIC, 7, 180, 303, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Настройка на РеактОС"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Слагане на файлове...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Завършване настройката на РеактОС"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Първата степен от настройването на РеактОС приключи успешно.", IDC_STATIC, 20, 50, 277, 10
LTEXT "Когато натиснете „Край”, компютърът ви ще се презапусне.", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "Ако в устройството има КД, го извадете. След това натиснете „Приключване“, за да презапуснете компютъра.", IDC_STATIC, 10, 180, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "РеактОС ви приветства!"
IDS_TYPESUBTITLE "Изберете вид на настройването."
IDS_DEVICETITLE "Настройване на основните устройства"
IDS_DEVICESUBTITLE "Настройка на екрана и клавиатурата."
IDS_DRIVETITLE "Приготвяне на дял за слагане и системна папка"
IDS_DRIVESUBTITLE "Приготвяне на дял за слагане, системна папка и зареждач."
IDS_PROCESSTITLE "Подготвяне на дял, презапис на файлове и настройване на уредбата"
IDS_PROCESSSUBTITLE "Създаване и оразмеряване на дял, презапис на файлове, слагане и настройка на зареждач"
IDS_RESTARTTITLE "Първата степен на настройването приключи"
IDS_RESTARTSUBTITLE "Първата степен приключи, презапуснете, за да продължите към втора степен"
IDS_SUMMARYTITLE "Обобщение на слагането"
IDS_SUMMARYSUBTITLE "Списък на възможностите за слагане за проверка преди прилагане върху устройството за слагане"
IDS_ABORTSETUP "РеактОС не е напълно сложен на компютъра ви. Ако излезете от настройването сега, ще трябва да пуснете настройването отново, за да сложите Реактос. Наистина ли излизате?"
IDS_ABORTSETUP2 "Прекъсване на слагането?"
IDS_NO_TXTSETUP_SIF "Unable to find 'txtsetup.sif'\nSetup is unable to continue."
IDS_CAPTION "Настройка на РеактОС"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "Name"
IDS_PARTITION_SIZE "Size"
IDS_PARTITION_TYPE "Type"
END

View file

@ -0,0 +1,143 @@
/* FILE: base/setup/reactos/lang/cs-CZ.rc
* TRANSLATOR: Radek Liska aka Black_Fox (radekliska at gmail dot com)
* THANKS TO: kario for introducing the file
* UPDATED: 2011-03-31
*/
LANGUAGE LANG_CZECH, SUBLANG_DEFAULT
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalace systému ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Vítejte v průvodci instalace systému ReactOS.", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "Systém ReactOS zatím nelze nainstalovat přímo z tohoto CD! Pro instalaci restartuje počítač z tohoto CD.", IDC_STATIC, 115, 40, 195, 100
LTEXT "Klepnutím na Dokončit ukončíte instalaci.", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalace systému ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "Nainstalovat systém ReactOS", IDC_INSTALL, 7, 7, 277, 10
LTEXT "Instalovat novou kopii systému ReactOS. Tato možnost odstraní Vaše soubory, nastavení a programy. Můžete provést úpravu disků a oddílů.", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "Opravit nebo aktualizovat již nainstalovaný systém ReactOS", IDC_UPDATE, 7, 50, 277, 10
LTEXT "Aktualizovat nebo opravit kopii systémy ReactOS. Tato možnost zachová Vaše soubory, nastavení a programy. Tato možnost je dostupná pouze pokud je již na Vašem počítači systém ReactOS nainstalován.", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "Po klepnutí na Další bude možné nastavit zařízení.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalace systému ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Počítač:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 150, 80
LTEXT "Obrazovka:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 150, 80
LTEXT "Klávesnice:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 150, 80
LTEXT "Po klepnutí na Další bude možné nastavit instalační zařízení.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalace systému ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "&Vytvořit", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "&Smazat", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "&Ovladač", IDC_DEVICEDRIVER, 174, 122, 50, 15, WS_DISABLED
PUSHBUTTON "&Pokročilé volby...", IDC_PARTMOREOPTS, 230, 122, 80, 15
LTEXT "Po klepnutí na Další bude možné zkontrolovat všechna nastavení.", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Vytvořit oddíl"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "Vytvořit a naformátovat oddíl", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "Velikost:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "GB", IDC_UNIT, 117, 24, 14, 9
LTEXT "Souborový systém:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "&OK", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "&Storno", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Pokročilá nastavení oddílu"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "Instalační složka", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "Instalace zavaděče", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "Nainstalovat zavaděč na pevný disk (MBR a VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "Nainstalovat zavaděč na pevný disk (jen VBR)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "Zavaděč neinstalovat", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "&OK", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "&Storno", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalace systému ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Klepnutím na Další zahájíte instalační proces.", IDC_STATIC, 7, 180, 303, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalace systému ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Instalace souborů...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Dokončení instalace systému ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "První část instalace systému ReactOS byla úspěšně dokončena.", IDC_STATIC, 20, 50, 277, 10
LTEXT "Po klepnutí na Dokončit bude počítač restartován.", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "Pokud je v mechanice instalační CD, vyjměte jej. Poté kliknutím na Dokončit restartujte počítač.", IDC_STATIC, 10, 180, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "Vítejte v průvodci instalace systému ReactOS"
IDS_TYPESUBTITLE "Volba typu instalace."
IDS_DEVICETITLE "Nastavení základních zařízení"
IDS_DEVICESUBTITLE "Volba nastavení obrazovky a klávesnice."
IDS_DRIVETITLE "Nastavení instalačního oddílu a systémové složky"
IDS_DRIVESUBTITLE "Příprava instalačního oddílu, systémové složky a zavaděče."
IDS_PROCESSTITLE "Příprava oddílu, kopírování souborů a nastavení systému"
IDS_PROCESSSUBTITLE "Vytvoření a naformátování oddílu, kopírování souborů, instalace a nastavení zavaděče"
IDS_RESTARTTITLE "První část instalace dokončena"
IDS_RESTARTSUBTITLE "První část instalace byla dokončena, po restartování počítače se bude pokračovat druhou částí"
IDS_SUMMARYTITLE "Shrnutí instalace"
IDS_SUMMARYSUBTITLE "Výpis voleb instalace k ověření před tím, než začne instalace"
IDS_ABORTSETUP "Systém ReactOS není na tomto počítači kompletně nainstalovaný. Pokud nyní ukončíte instalaci, bude ji pro nainstalování systému ReactOS nutné provést znova. Opravdu ukončit?"
IDS_ABORTSETUP2 "Přerušit instalaci?"
IDS_NO_TXTSETUP_SIF "Soubor 'txtsetup.sif' nenalezen.\nInstalace nemůže pokračovat.."
IDS_CAPTION "Instalace systému ReactOS"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "Name"
IDS_PARTITION_SIZE "Size"
IDS_PARTITION_TYPE "Type"
END

View file

@ -0,0 +1,137 @@
LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS-Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Willkommen beim ReactOS-Setup-Assistenten.", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "ReactOS kann noch nicht direkt von dieser CD installiert werden! Bitte starten Sie Ihren Computer mit dieser CD um ReactOS zu installieren.", IDC_STATIC, 115, 40, 195, 100
LTEXT "Klicken Sie auf Beenden um das Setup zu verlassen.", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS-Setup"
FONT 8, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "Installiere ReactOS", IDC_INSTALL, 7, 7, 277, 10
LTEXT "Installiert eine neue Kopie von ReactOS. Diese Option behält nicht Ihre Dateien, Einstellungen und Programme bei. Sie können Änderungen an Festplatten und Partitionen durchführen.", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "Aktualisiere oder repariere ein installiertes ReactOS", IDC_UPDATE, 7, 50, 277, 10
LTEXT "Aktualisieren oder reparieren einer installierten Kopie von ReactOS. Diese Option behält Ihre Dateien, Einstellungen und Programme bei. Diese Option ist nur verfügbar, wenn ReactOS bereits auf diesem Computer installiert ist.", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "Klicken Sie auf Weiter um die Geräte einzustellen.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS-Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Computer:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 180, 80
LTEXT "Anzeige:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 180, 80
LTEXT "Tastatur:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 180, 80
LTEXT "Klicken Sie auf Weiter um den Installationsort zu konfigurieren.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS-Setup"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "&Erstellen", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "&Löschen", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "&Treiber", IDC_DEVICEDRIVER, 174, 122, 50, 15, WS_DISABLED
PUSHBUTTON "E&rweiterte Optionen...", IDC_PARTMOREOPTS, 230, 122, 80, 15
LTEXT "Klicken Sie auf Weiter um die Zusammenfassung zu überprüfen.", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Erstelle Partition"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "Erstelle und formatiere Partition", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "Größe:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "GB", IDC_UNIT, 117, 24, 14, 9
LTEXT "Dateisystem:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "&OK", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "&Abbrechen", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Erweiterte Partitionseinstellungen"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "Installationsverzeichnis", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "Bootloader-Installation", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "Installiere Bootloader auf Festplatte (MBR und VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "Installiere Bootloader auf Festplatte (nur VBR)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "Keine Bootloader-Installation", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "&OK", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "&Abbrechen", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS-Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Klicken Sie auf Weiter um die Installation zu starten.", IDC_STATIC, 7, 180, 303, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS-Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Installation der Dateien...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Vervollständige ReactOS-Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Sie haben die erste Stufe des ReactOS-Setup erfolgreich abgeschlossen.", IDC_STATIC, 20, 50, 277, 10
LTEXT "Wenn Sie auf Beenden klicken, wird der Computer neu gestartet.", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "Wenn eine CD im Laufwerk ist, entfernen Sie sie. Klicken Sie zum Neustart auf Beenden.", IDC_STATIC, 10, 180, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "Willkommen zum ReactOS-Setup"
IDS_TYPESUBTITLE "Wählen Sie einen Setuptyp."
IDS_DEVICETITLE "Einstellen der Basisgeräte"
IDS_DEVICESUBTITLE "Einstellungen der Anzeigegeräte und der Tastatur."
IDS_DRIVETITLE "Richte Installationspartition und Systemverzeichnis ein"
IDS_DRIVESUBTITLE "Vorbereiten von Installationspartition, Systemverzeichnis und Bootloader."
IDS_PROCESSTITLE "Richte Partition ein, kopiere Dateien und richte System ein."
IDS_PROCESSSUBTITLE "Erstelle und formatiere Partition, kopiere Dateien, installiere und konfiguriere Bootloader"
IDS_RESTARTTITLE "Erste Stufe des Setup wurde abgeschlossen."
IDS_RESTARTSUBTITLE "Die erste Stufe des Setup wurde abgeschlossen, starten Sie den Rechner neu, um mit der zweiten Stufe fortzufahren."
IDS_SUMMARYTITLE "Installationszusammenfassung"
IDS_SUMMARYSUBTITLE "Liste alle Installationseinstellungen vor Anwendung auf die Geräte auf"
IDS_ABORTSETUP "ReactOS ist nicht vollständig auf Ihrem Computer installiert. Wenn Sie das Setup verlassen, dann müssen Sie das Setup nochmals ausführen, um ReactOS zu installieren. Wirklich beenden?"
IDS_ABORTSETUP2 "Installation abbrechen?"
IDS_NO_TXTSETUP_SIF "Die Datei 'txtsetup.sif' konnte nicht gefunden werden.\nSetup kann nicht fortfahren."
IDS_CAPTION "ReactOS Setup"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "Name"
IDS_PARTITION_SIZE "Size"
IDS_PARTITION_TYPE "Type"
END

View file

@ -0,0 +1,137 @@
LANGUAGE LANG_GREEK, SUBLANG_DEFAULT
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Εγκατάσταση του ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Καλώς ήλθατε στον οδηγό εγκατάστασης του ReactOS.", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "Δε μπορείτε να εγκαταστήσετε το ReactOS απευθείας από αυτό το CD ακόμα! Παρακαλούμε επανεκκινήστε τον υπολογιστή σας από αυτό το CD για να μπορέσετε να εγκαταστήσετε το ReactOS.", IDC_STATIC, 115, 40, 195, 100
LTEXT "Πατήστε Ολοκλήρωση για να βγείτε από την Εγκατάσταση.", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Εγκατάσταση του ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "Install ReactOS", IDC_INSTALL, 7, 7, 277, 10
LTEXT "Install a new copy of ReactOS. This option does not keep your files, settings and programs. You can make changes to disks and partitions.", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "Update or repair an installed ReactOS", IDC_UPDATE, 7, 50, 277, 10
LTEXT "Update or repair an installed copy of ReactOS. This option keeps your files, settings and programs. This option is only available if ReactOS is already installed on this computer.", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "Πατήστε Επόμενο για να ρυθμίσετε τις συσκευές.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Εγκατάσταση του ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Υπολογιστής:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 150, 80
LTEXT "Εμφάνιση:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 150, 80
LTEXT "Πληκτρολόγιο:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 150, 80
LTEXT "Click Next setup of the installation device.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Εγκατάσταση του ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "&Δημιουργία", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "&Διαγραφή", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "D&river", IDC_DEVICEDRIVER, 174, 122, 50, 15, WS_DISABLED
PUSHBUTTON "&Επιλογές για προχωρημένους...", IDC_PARTMOREOPTS, 230, 122, 80, 15
LTEXT "Πατήστε Επόμενο για να ξεκινήσετε τη διαδικασία εγκατάστασης.", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Δημιουργία Partition"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "Create and format partition", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "Μέγεθος:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "GB", IDC_UNIT, 117, 24, 14, 9
LTEXT "Τύπος συστήματος:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "&OK", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "&Άκυρο", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Ρυθμίσεις Partition για προχωρημένους"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "Φάκελος εγκατάστασης", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "Εγκατάσταση Boot loader", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "Εγκατάσταση boot loader στο σκληρό δίσκο (MBR and VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "Εγκατάσταση boot loader στο σκληρό δίσκο (VBR only)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "Να μη γίνει εγκατάσταση του bootloader", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "&OK", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "&Άκυρο", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Click Next to start the installation process.", IDC_STATIC, 7, 180, 303, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Εγκατάσταση του ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Install files...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Ολοκληρώνεται η εγκατάσταση του ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Ολοκληρώσατε επιτυχώς το πρώτο στάδιο της εγκατάστασης του ReactOS.", IDC_STATIC, 20, 50, 277, 10
LTEXT "Όταν πατήσετε Ολοκλήρωση, θα γίνει επανεκκίνηση του υπολογιστή σας.", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "Αν υπάρχει κάποιο CD, αφαιρέστε το. Έπειτα, για να γίνει επανεκκίνηση, πατήστε Ολοκλήρωση.", IDC_STATIC, 10, 180, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "Καλώς ήλθατε στην Εγκατάσταση του ReactOS"
IDS_TYPESUBTITLE "Επιλέξτε τύπο εγκατάστασης."
IDS_DEVICETITLE "Setup the basic devices"
IDS_DEVICESUBTITLE "Ορισμός ρυθμίσεων για εμφάνιση και πληκτρολόγιο."
IDS_DRIVETITLE "Ρύθμιση του partition εγκατάστασης και του φακέλου συστήματος"
IDS_DRIVESUBTITLE "Προετοιμασία του partition εγκατάστασης, φακέλου συστήματος και boot loader."
IDS_PROCESSTITLE "Prepare partition, copy files and setup system"
IDS_PROCESSSUBTITLE "Create and format partition, copy files, install and setup boot loader"
IDS_RESTARTTITLE "Το πρώτο στάδιο της εγκατάστασης ολοκληρώθηκε"
IDS_RESTARTSUBTITLE "Το πρώτο στάδιο της εγκατάστασης ολοκληρώθηκε, κάντε επανεκκίνηση για να συνεχίσετε με το δεύτερο στάδιο."
IDS_SUMMARYTITLE "Installation Summary"
IDS_SUMMARYSUBTITLE "List installation properties to check before apply to the installation device"
IDS_ABORTSETUP "ReactOS is not completely installed on your computer. If you quit Setup now, you will need to run Setup again to install ReactOS. Really quit?"
IDS_ABORTSETUP2 "Abort installation?"
IDS_NO_TXTSETUP_SIF "Unable to find 'txtsetup.sif'\nSetup is unable to continue."
IDS_CAPTION "ReactOS Setup"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "Name"
IDS_PARTITION_SIZE "Size"
IDS_PARTITION_TYPE "Type"
END

View file

@ -0,0 +1,137 @@
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Welcome to the ReactOS Setup Wizard.", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "You cannot install ReactOS directly from this CD yet! Please restart your computer from this CD in order to install ReactOS.", IDC_STATIC, 115, 40, 195, 100
LTEXT "Click Finish to exit the Setup.", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "Install ReactOS", IDC_INSTALL, 7, 7, 277, 10
LTEXT "Install a new copy of ReactOS. This option does not keep your files, settings and programs. You can make changes to disks and partitions.", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "Update or repair ReactOS", IDC_UPDATE, 7, 50, 277, 10
LTEXT "Update or repair an installed copy of ReactOS. This option keeps your files, settings and programs. This option is only available if ReactOS is already installed on this computer.", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "Click Next to continue.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Computer:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 180, 80
LTEXT "Display:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 180, 80
LTEXT "Keyboard:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 180, 80
LTEXT "Click Next to setup of the installation device.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "&Create", IDC_PARTCREATE, 7, 122, 50, 14
PUSHBUTTON "&Delete", IDC_PARTDELETE, 63, 122, 50, 14
PUSHBUTTON "D&river", IDC_DEVICEDRIVER, 174, 122, 50, 14, WS_DISABLED
PUSHBUTTON "&Advanced Options...", IDC_PARTMOREOPTS, 230, 122, 80, 14
/* LTEXT "Click Next to check the summary.", IDC_STATIC, 7, 128, 277, 8 */
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Create Partition"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "Create and format partition", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "Size:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "GB", IDC_UNIT, 117, 24, 14, 9
LTEXT "Filesystem:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "&OK", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "&Cancel", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Advanced Partition Settings"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "Installation folder", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "Boot loader installation", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "Install boot loader on the hard disk (MBR and VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "Install boot loader on the hard disk (VBR only)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "No installation of bootloader", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "&OK", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "&Cancel", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Click Next to start the installation process.", IDC_STATIC, 7, 128, 303, 8
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Install files...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 7, 120, 303, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Completing ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "You have successfully completed the first stage of ReactOS Setup.", IDC_STATIC, 115, 50, 195, 10
LTEXT "When you click Finish, your computer will restart.", IDC_STATIC, 115, 80, 195, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 115, 110, 195, 8
LTEXT "If there is a CD in a drive, remove it. Then, to restart your computer, click Finish.", IDC_STATIC, 115, 169, 195, 17
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "Welcome to ReactOS Setup"
IDS_TYPESUBTITLE "Choose setup type."
IDS_DEVICETITLE "Setup the basic devices"
IDS_DEVICESUBTITLE "Set the settings of display and keyboard."
IDS_DRIVETITLE "Setup the installation partition and system folder"
IDS_DRIVESUBTITLE "Prepare installation partition, system folder and boot loader."
IDS_PROCESSTITLE "Setup partition, copy files and setup system"
IDS_PROCESSSUBTITLE "Create and format partition, copy files, install and setup boot loader"
IDS_RESTARTTITLE "First stage of setup finished"
IDS_RESTARTSUBTITLE "The first stage of setup has been completed, restart to continue with second stage"
IDS_SUMMARYTITLE "Installation Summary"
IDS_SUMMARYSUBTITLE "List installation properties to check before apply to the installation device"
IDS_ABORTSETUP "ReactOS is not completely installed on your computer. If you quit Setup now, you will need to run Setup again to install ReactOS. Really quit?"
IDS_ABORTSETUP2 "Abort installation?"
IDS_NO_TXTSETUP_SIF "Unable to find 'txtsetup.sif'\nSetup is unable to continue"
IDS_CAPTION "ReactOS Setup"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "Name"
IDS_PARTITION_SIZE "Size"
IDS_PARTITION_TYPE "Type"
END

View file

@ -0,0 +1,139 @@
/* Spanish translation by Javier Remacha <2008> */
LANGUAGE LANG_SPANISH, SUBLANG_NEUTRAL
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalación de ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Bienvenido al Asistente de Instalación de ReactOS.", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "¡Aún no puede instalar ReactOS directamente desde este CD! Por favor, reinicie su equipo desde este CD para instalar ReactOS.", IDC_STATIC, 115, 40, 200, 100
LTEXT "Pulse Finalizar para salir del instalador.", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalación de ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "Instalar ReactOS", IDC_INSTALL, 7, 7, 277, 10
LTEXT "Install a new copy of ReactOS. This option does not keep your files, settings and programs. You can make changes to disks and partitions.", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "Actualizar o reparar una versión instalada de ReactOS", IDC_UPDATE, 7, 50, 277, 10
LTEXT "Update or repair an installed copy of ReactOS. This option keeps your files, settings and programs. This option is only available if ReactOS is already installed on this computer.", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "Presione Siguiente para instalar los dispositivos.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalación de ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Equipo:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 150, 80
LTEXT "Pantalla:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 150, 80
LTEXT "Teclado:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 150, 80
LTEXT "Presione Siguiente para configurar la instalación de dispositivos.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalación de ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "&Crear", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "&Borrar", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "D&river", IDC_DEVICEDRIVER, 174, 122, 50, 15, WS_DISABLED
PUSHBUTTON "&Opciones avanzadas...", IDC_PARTMOREOPTS, 230, 122, 80, 15
LTEXT "Presione Siguiente para verificar el resumen.", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Crear Partición"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "Crear y formatear una partición", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "Tamaño:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "GB", IDC_UNIT, 117, 24, 14, 9
LTEXT "Sistema de archivos:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "&Aceptar", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "&Cancelar", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Ajustes avanzados de la partición"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "Carpeta de instalación", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "Instalación del cargador de arranque", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "Instalar el cargador de arranque en el disco duro (MBR y VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "Instalar el cargador de arranque en el disco duro (solo VBR)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "No instalar el cargador de arranque", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "&Aceptar", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "&Cancelar", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalación de ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Presione Siguiente para comenzar con el proceso de instalación.", IDC_STATIC, 7, 180, 303, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalación de ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Instalando archivos...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Completando la instalación de ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "La primera parte de la instalación de ReactOS se ha completado satisfactoriamente.", IDC_STATIC, 20, 50, 277, 10
LTEXT "Cuando presione Finalizar, su equipo será reiniciado.", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "Si hay un CD en alguna unidad, retírelo. Luego, para reiniciar su equipo, presione Finalizar.", IDC_STATIC, 10, 180, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "Bienvenido a la instalación de ReactOS"
IDS_TYPESUBTITLE "Seleccione el tipo de instalación."
IDS_DEVICETITLE "Instalación de los dispositivos básicos"
IDS_DEVICESUBTITLE "Seleccione los ajustes de la pantalla y el teclado."
IDS_DRIVETITLE "Crear la partición para la instalación y la carpeta del sistema"
IDS_DRIVESUBTITLE "Preparar la partición para la instalación, la carpeta del sistema y el cargador de arranque."
IDS_PROCESSTITLE "Preparar partición, copiar archivos e instalar sistema"
IDS_PROCESSSUBTITLE "Crear y formatear partición, copiar archivos, instalar e instalar el cargador de arranque"
IDS_RESTARTTITLE "Primera parte de la instalación finalizada"
IDS_RESTARTSUBTITLE "La primera parte de la instalación ha sido completada, reinicie para continuar con la segunda parte"
IDS_SUMMARYTITLE "Resumen de la instalación"
IDS_SUMMARYSUBTITLE "Lista las propiedades de la instalación para su verificación antes de aplicarlas al dispositivo instalado"
IDS_ABORTSETUP "ReactOS no está completamente instalado en su equipo. Si sale de la instalación ahora, tendrá que ejecutar el instalador otra vez para instalar ReactOS. ¿Realmente quiere salir?"
IDS_ABORTSETUP2 "¿Abortar instalación?"
IDS_NO_TXTSETUP_SIF "Unable to find 'txtsetup.sif'\nSetup is unable to continue."
IDS_CAPTION "Instalación de ReactOS"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "Name"
IDS_PARTITION_SIZE "Size"
IDS_PARTITION_TYPE "Type"
END

View file

@ -0,0 +1,137 @@
LANGUAGE LANG_ESTONIAN, SUBLANG_DEFAULT
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Tere tulemast ReactOSi paigaldamisprogrammi.", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "Selle CD pealt ei saa praegu veel ReactOSi paigaldada! ReactOSi paigaldamiseks on tarvis arvuti taaskäivitada selle CD-ga.", IDC_STATIC, 115, 40, 195, 100
LTEXT "Vajuta lõpeta, et installeerimine lõpetada.", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOSi paigaldamine"
FONT 8, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "Installeeri ReactOS", IDC_INSTALL, 7, 7, 277, 10
LTEXT "Install a new copy of ReactOS. This option does not keep your files, settings and programs. You can make changes to disks and partitions.", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "Paranda või uuenda installeeritud ReactOS", IDC_UPDATE, 7, 50, 277, 10
LTEXT "Update or repair an installed copy of ReactOS. This option keeps your files, settings and programs. This option is only available if ReactOS is already installed on this computer.", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "Vajuta Järgmine, et seadmeid paigaldada.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOSi paigaldamine"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Arvuti:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 180, 80
LTEXT "Monitor:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 180, 80
LTEXT "Klaviatuur:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 180, 80
LTEXT "Vajuta Järgmine, et seadistada sihtketas.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOSi paigaldamine"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "&Loo uus", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "&Kustuta", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "D&raiver", IDC_DEVICEDRIVER, 174, 122, 50, 15, WS_DISABLED
PUSHBUTTON "&Täpsemad seaded...", IDC_PARTMOREOPTS, 230, 122, 80, 15
LTEXT "Vajuta Järgmine, et seaded üle kontrollida.", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Partitsiooni loomine"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "Loo ja vorminda ketas", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "Suurus:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "GB", IDC_UNIT, 117, 24, 14, 9
LTEXT "Failisüsteem:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "&Olgu", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "&Tühista", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Täpsemad vormindamise seaded"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "Paigaldamise kaust", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "Alglaaduri paigaldamine", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "Paigalda alglaadur kõvakettale (MBR and VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "Paigalda alglaadur kõvakettale (VBR only)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "Ära paigalda alglaadurit", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "&Olgu", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "&Tühista", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOSi paigaldamine"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Vajuta Järgmine, et paigaldamist alustada.", IDC_STATIC, 7, 180, 303, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOSi paigaldamine"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Install files...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOSi paigaldamise lõpetamine"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "ReactOSi paigaldamise esimene järk on edukalt lõpetatud.", IDC_STATIC, 20, 50, 277, 10
LTEXT "Vajuta Lõpeta, et arvuti taaskäivitada.", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "Võta CD välja ja vajuta Lõpeta, et arvuti taaskäivitada.", IDC_STATIC, 10, 180, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "Tere tulemast ReactOSi paigaldama"
IDS_TYPESUBTITLE "Vali paigalduse tüüp."
IDS_DEVICETITLE "Põhiliste seadmete paigaldamine"
IDS_DEVICESUBTITLE "Monitori ja klaviatuuri seadistamine."
IDS_DRIVETITLE "Partitsioonide ja süsteemikausta seadistamine"
IDS_DRIVESUBTITLE "Sihtpartitsiooni, süsteemikausta ja alglaaduri ettevalmistamine."
IDS_PROCESSTITLE "Partitsiooni ettevalmistamine, failide kopeerimine ja süsteemi üles seadmine"
IDS_PROCESSSUBTITLE "Partitsiooni loomine ja vormindamine, failide kopeerimine, alglaaduri seadistamine"
IDS_RESTARTTITLE "Paigaldamise esimene järk lõpetatud"
IDS_RESTARTSUBTITLE "Paigaldamise esimene järk on lõpetatud, teise järgu alustamiseks taaskäivita arvuti"
IDS_SUMMARYTITLE "Paigaldamise kokkuvõte"
IDS_SUMMARYSUBTITLE "Seadete kontrollimine enne paigaldamise alustamist"
IDS_ABORTSETUP "ReactOS ei ole veel täielikult paigaldatud. Kas tõesti lahkuda?"
IDS_ABORTSETUP2 "Katkestada paigaldamine?"
IDS_NO_TXTSETUP_SIF "Unable to find 'txtsetup.sif'\nSetup is unable to continue."
IDS_CAPTION "ReactOSi paigaldamine"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "Name"
IDS_PARTITION_SIZE "Size"
IDS_PARTITION_TYPE "Type"
END

View file

@ -0,0 +1,137 @@
LANGUAGE LANG_FINNISH, SUBLANG_DEFAULT
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Asennus"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Welcome to the ReactOS Setup Wizard.", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "Et voi asentaa ReactOS:ä suoraan tältä CDlevyltä! Käynnistä tietokoneesi tältä CD levyltä asentaaksesi ReactOS:ä.", IDC_STATIC, 115, 40, 195, 100
LTEXT "Click Finish to exit the Setup.", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "Install ReactOS", IDC_INSTALL, 7, 7, 277, 10
LTEXT "Install a new copy of ReactOS. This option does not keep your files, settings and programs. You can make changes to disks and partitions.", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "Update or repair an installed ReactOS", IDC_UPDATE, 7, 50, 277, 10
LTEXT "Update or repair an installed copy of ReactOS. This option keeps your files, settings and programs. This option is only available if ReactOS is already installed on this computer.", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "Click Next to setup the devices.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Computer:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 180, 80
LTEXT "Display:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 180, 80
LTEXT "Keyboard:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 180, 80
LTEXT "Click Next to setup of the installation device.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "&Create", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "&Delete", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "D&river", IDC_DEVICEDRIVER, 174, 122, 50, 15, WS_DISABLED
PUSHBUTTON "&Advanced Options...", IDC_PARTMOREOPTS, 230, 122, 80, 15
LTEXT "Click Next to check the summary.", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Create Partition"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "Create and format partition", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "Size:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "GB", IDC_UNIT, 117, 24, 14, 9
LTEXT "Filesystem:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "&OK", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "&Cancel", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Advanced Partition Settings"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "Installation folder", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "Boot loader installation", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "Install boot loader on the hard disk (MBR and VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "Install boot loader on the hard disk (VBR only)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "No installation of bootloader", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "&OK", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "&Cancel", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Click Next to start the installation process.", IDC_STATIC, 7, 180, 303, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Install files...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Completing ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "You have successfully completed the first stage of ReactOS Setup.", IDC_STATIC, 20, 50, 277, 10
LTEXT "When you click Finish, your computer will restart.", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "If there is a CD in a drive, remove it. Then, to restart your computer, click Finish.", IDC_STATIC, 10, 180, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "Welcome to ReactOS Setup"
IDS_TYPESUBTITLE "Choose setup type."
IDS_DEVICETITLE "Setup the basic devices"
IDS_DEVICESUBTITLE "Set the settings of display and keyboard."
IDS_DRIVETITLE "Setup the installation partition and system folder"
IDS_DRIVESUBTITLE "Prepare installation partition, system folder and boot loader."
IDS_PROCESSTITLE "Setup partition, copy files and setup system"
IDS_PROCESSSUBTITLE "Create and format partition, copy files, install and setup boot loader"
IDS_RESTARTTITLE "First stage of setup finished"
IDS_RESTARTSUBTITLE "The first stage of setup has been completed, restart to continue with second stage"
IDS_SUMMARYTITLE "Installation Summary"
IDS_SUMMARYSUBTITLE "List installation properties to check before apply to the installation device"
IDS_ABORTSETUP "ReactOS is not completely installed on your computer. If you quit Setup now, you will need to run Setup again to install ReactOS. Really quit?"
IDS_ABORTSETUP2 "Abort installation?"
IDS_NO_TXTSETUP_SIF "Unable to find 'txtsetup.sif'\nSetup is unable to continue."
IDS_CAPTION "ReactOS Setup"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "Name"
IDS_PARTITION_SIZE "Size"
IDS_PARTITION_TYPE "Type"
END

View file

@ -0,0 +1,137 @@
LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Installation de ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Bienvenue dans l'assistant d'installation de ReactOS.", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "Vous ne pouvez pas encore installer ReactOS directement depuis ce CD ! Veuillez redémarrer votre ordinateur depuis ce CD pour pouvoir installer ReactOS.", IDC_STATIC, 115, 40, 195, 100
LTEXT "Cliquez sur Terminer pour quitter l'installation.", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Installation de ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "Install ReactOS", IDC_INSTALL, 7, 7, 277, 10
LTEXT "Install a new copy of ReactOS. This option does not keep your files, settings and programs. You can make changes to disks and partitions.", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "Update or repair an installed ReactOS", IDC_UPDATE, 7, 50, 277, 10
LTEXT "Update or repair an installed copy of ReactOS. This option keeps your files, settings and programs. This option is only available if ReactOS is already installed on this computer.", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "Click Next to setup the devices.", IDC_STATIC, 7, 1280, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Installation de ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Computer:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 180, 80
LTEXT "Display:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 180, 80
LTEXT "Keyboard:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 180, 80
LTEXT "Click Next to setup of the installation device.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Installation de ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "&Create", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "&Delete", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "D&river", IDC_DEVICEDRIVER, 174, 122, 50, 15, WS_DISABLED
PUSHBUTTON "&Advanced Options...", IDC_PARTMOREOPTS, 230, 122, 80, 15
LTEXT "Click Next to check the summary.", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Create Partition"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "Create and format partition", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "Size:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "GB", IDC_UNIT, 117, 24, 14, 9
LTEXT "Filesystem:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "&OK", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "&Cancel", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Advanced Partition Settings"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "Installation folder", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "Boot loader installation", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "Install boot loader on the hard disk (MBR and VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "Install boot loader on the hard disk (VBR only)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "No installation of bootloader", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "&OK", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "&Cancel", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Click Next to start the installation process.", IDC_STATIC, 7, 180, 303, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Installation de ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Install files...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Completing ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "You have successfully completed the first stage of ReactOS Setup.", IDC_STATIC, 20, 50, 277, 10
LTEXT "When you click Finish, your computer will restart.", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "If there is a CD in a drive, remove it. Then, to restart your computer, click Finish.", IDC_STATIC, 10, 180, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "Welcome to ReactOS Setup"
IDS_TYPESUBTITLE "Choose setup type."
IDS_DEVICETITLE "Setup the basic devices"
IDS_DEVICESUBTITLE "Set the settings of display and keyboard."
IDS_DRIVETITLE "Setup the installation partition and system folder"
IDS_DRIVESUBTITLE "Prepare installation partition, system folder and boot loader."
IDS_PROCESSTITLE "Setup partition, copy files and setup system"
IDS_PROCESSSUBTITLE "Create and format partition, copy files, install and setup boot loader"
IDS_RESTARTTITLE "First stage of setup finished"
IDS_RESTARTSUBTITLE "The first stage of setup has been completed, restart to continue with second stage"
IDS_SUMMARYTITLE "Installation Summary"
IDS_SUMMARYSUBTITLE "List installation properties to check before apply to the installation device"
IDS_ABORTSETUP "ReactOS is not completely installed on your computer. If you quit Setup now, you will need to run Setup again to install ReactOS. Really quit?"
IDS_ABORTSETUP2 "Abort installation?"
IDS_NO_TXTSETUP_SIF "Unable to find 'txtsetup.sif'\nSetup is unable to continue."
IDS_CAPTION "Installation de ReactOS"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "Name"
IDS_PARTITION_SIZE "Size"
IDS_PARTITION_TYPE "Type"
END

View file

@ -0,0 +1,139 @@
/* Translated by Baruch Rutman */
LANGUAGE LANG_HEBREW, SUBLANG_DEFAULT
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "התקנת ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "ברוכים הבאים לאשף ההתקנה של ReactOS/", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "עדיין אי אפשר להתקין את ReactOS ישירות מהתקליטור הזה! נא אתחל מחדש מחשבך מהדיסק כדי להתקין את ReactOS.", IDC_STATIC, 115, 40, 195, 100
LTEXT "לחץ על סיום כדי לסיים את ההתקנה.", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "התקנת ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "התקנת ReactOS", IDC_INSTALL, 7, 7, 277, 10
LTEXT "Install a new copy of ReactOS. This option does not keep your files, settings and programs. You can make changes to disks and partitions.", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "תיקון או עדכון גרסה קיימת", IDC_UPDATE, 7, 50, 277, 10
LTEXT "Update or repair an installed copy of ReactOS. This option keeps your files, settings and programs. This option is only available if ReactOS is already installed on this computer.", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "לחץ על הבא כדי להגדיר את ההתקנים", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "התקנת ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "מחשב:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 180, 80
LTEXT "תצוגה:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 180, 80
LTEXT "תצוגה:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 180, 80
LTEXT "לחץ על הבא כדי להגדיר את התקן ההתקנה.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "התקנת ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "צור", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "מחק", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "טעינת מנהל התקן", IDC_DEVICEDRIVER, 174, 122, 50, 15, WS_DISABLED
PUSHBUTTON "אפשרויות מתקדמות...", IDC_PARTMOREOPTS, 230, 122, 80, 15
LTEXT "לחץ על הבא כדי לראות סיכום.", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "יצירת מחיצה"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "יצירת ואתחול המחיצה", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "גודל:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "ג""ב", IDC_UNIT, 117, 24, 14, 9
LTEXT "מערכת קבצים:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "אישור", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "ביטול", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "הגדרות מחיצה מתקדמות"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "תיקיית התקנה", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "Boot loader installation", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "Install boot loader on the hard disk (MBR and VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "Install boot loader on the hard disk (VBR only)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "No installation of bootloader", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "אישור", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "ביטול", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "התקנת ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "לחץ על הבא כדי להתחיל בתהליך ההתקנה.", IDC_STATIC, 7, 180, 303, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "התקנת ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Install files...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "השלמת התקנת ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "You have successfully completed the first stage of ReactOS Setup.", IDC_STATIC, 20, 50, 277, 10
LTEXT "When you click Finish, your computer will restart.", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "If there is a CD in a drive, remove it. Then, to restart your computer, click Finish.", IDC_STATIC, 10, 180, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "ברוכים הבאים אל תכנית ההתקנה של ReactOS"
IDS_TYPESUBTITLE "בחירת סוג התקנה."
IDS_DEVICETITLE "Setup the basic devices"
IDS_DEVICESUBTITLE "Set the settings of display and keyboard."
IDS_DRIVETITLE "Setup the installation partition and system folder"
IDS_DRIVESUBTITLE "Prepare installation partition, system folder and boot loader."
IDS_PROCESSTITLE "Setup partition, copy files and setup system"
IDS_PROCESSSUBTITLE "Create and format partition, copy files, install and setup boot loader"
IDS_RESTARTTITLE "First stage of setup finished"
IDS_RESTARTSUBTITLE "The first stage of setup has been completed, restart to continue with second stage"
IDS_SUMMARYTITLE "Installation Summary"
IDS_SUMMARYSUBTITLE "List installation properties to check before apply to the installation device"
IDS_ABORTSETUP "ReactOS is not completely installed on your computer. If you quit Setup now, you will need to run Setup again to install ReactOS. Really quit?"
IDS_ABORTSETUP2 "Abort installation?"
IDS_NO_TXTSETUP_SIF "Unable to find 'txtsetup.sif'\nSetup is unable to continue."
IDS_CAPTION "התקנת ReactOS"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "Name"
IDS_PARTITION_SIZE "Size"
IDS_PARTITION_TYPE "Type"
END

View file

@ -0,0 +1,139 @@
/* Hungarian translation by Robert Horvath - talley at cubeclub.hu */
LANGUAGE LANG_HUNGARIAN, SUBLANG_DEFAULT
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS telepítõ"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Welcome to the ReactOS Setup Wizard.", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "Nem tudod feltelepíteni a ReactOS rendszert így! Kérlek indítsd újra a számítógépet ezzel a CD-vel, hogy feltudjad telepíteni a ReactOS rendszert.", IDC_STATIC, 115, 40, 195, 100
LTEXT "Click Finish to exit the Setup.", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "Install ReactOS", IDC_INSTALL, 7, 7, 277, 10
LTEXT "Install a new copy of ReactOS. This option does not keep your files, settings and programs. You can make changes to disks and partitions.", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "Update or repair an installed ReactOS", IDC_UPDATE, 7, 50, 277, 10
LTEXT "Update or repair an installed copy of ReactOS. This option keeps your files, settings and programs. This option is only available if ReactOS is already installed on this computer.", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "Click Next to setup the devices.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Computer:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 180, 80
LTEXT "Display:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 180, 80
LTEXT "Keyboard:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 180, 80
LTEXT "Click Next to setup of the installation device.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "&Create", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "&Delete", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "D&river", IDC_DEVICEDRIVER, 174, 122, 50, 15, WS_DISABLED
PUSHBUTTON "&Advanced Options...", IDC_PARTMOREOPTS, 230, 122, 80, 15
LTEXT "Click Next to check the summary.", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Create Partition"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "Create and format partition", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "Size:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "GB", IDC_UNIT, 117, 24, 14, 9
LTEXT "Filesystem:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "&OK", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "&Cancel", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Advanced Partition Settings"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "Installation folder", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "Boot loader installation", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "Install boot loader on the hard disk (MBR and VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "Install boot loader on the hard disk (VBR only)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "No installation of bootloader", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "&OK", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "&Cancel", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Click Next to start the installation process.", IDC_STATIC, 7, 180, 303, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Install files...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Completing ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "You have successfully completed the first stage of ReactOS Setup.", IDC_STATIC, 20, 50, 277, 10
LTEXT "When you click Finish, your computer will restart.", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "If there is a CD in a drive, remove it. Then, to restart your computer, click Finish.", IDC_STATIC, 10, 180, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "Welcome to ReactOS Setup"
IDS_TYPESUBTITLE "Choose setup type."
IDS_DEVICETITLE "Setup the basic devices"
IDS_DEVICESUBTITLE "Set the settings of display and keyboard."
IDS_DRIVETITLE "Setup the installation partition and system folder"
IDS_DRIVESUBTITLE "Prepare installation partition, system folder and boot loader."
IDS_PROCESSTITLE "Setup partition, copy files and setup system"
IDS_PROCESSSUBTITLE "Create and format partition, copy files, install and setup boot loader"
IDS_RESTARTTITLE "First stage of setup finished"
IDS_RESTARTSUBTITLE "The first stage of setup has been completed, restart to continue with second stage"
IDS_SUMMARYTITLE "Installation Summary"
IDS_SUMMARYSUBTITLE "List installation properties to check before apply to the installation device"
IDS_ABORTSETUP "ReactOS is not completely installed on your computer. If you quit Setup now, you will need to run Setup again to install ReactOS. Really quit?"
IDS_ABORTSETUP2 "Abort installation?"
IDS_NO_TXTSETUP_SIF "Unable to find 'txtsetup.sif'\nSetup is unable to continue."
IDS_CAPTION "ReactOS Setup"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "Name"
IDS_PARTITION_SIZE "Size"
IDS_PARTITION_TYPE "Type"
END

View file

@ -0,0 +1,137 @@
LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Installazione di ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Benvenuto al wizard di installazione di ReactOS.", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "Non è ancora possibile installare ReactOS direttamente da questo CD! E' necessario riavviare il computer da questo CD per procedere alla installazione di ReactOS.", IDC_STATIC, 115, 40, 195, 100
LTEXT "Cliccare Fine per uscire.", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Installazione di ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "Installa ReactOS", IDC_INSTALL, 7, 7, 277, 10
LTEXT "Install a new copy of ReactOS. This option does not keep your files, settings and programs. You can make changes to disks and partitions.", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "Aggiorna o ripara una installazione precedente di ReactOS", IDC_UPDATE, 7, 50, 277, 10
LTEXT "Update or repair an installed copy of ReactOS. This option keeps your files, settings and programs. This option is only available if ReactOS is already installed on this computer.", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "Cliccare Avanti per impostare i dispositivi.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Installazione di ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Computer:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 150, 80
LTEXT "Display:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 150, 80
LTEXT "Tastiera:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 150, 80
LTEXT "Cliccare Avanti per scegliere dove effettuare l'installazione.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Installazione di ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "&Crea", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "&Rimuovi", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "D&river", IDC_DEVICEDRIVER, 174, 122, 50, 15, WS_DISABLED
PUSHBUTTON "&Opzioni avanzate...", IDC_PARTMOREOPTS, 230, 122, 80, 15
LTEXT "Cliccare Avanti per iniziare l'installazione.", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Creazione Partizioni"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "Crea e formatta la partizione", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "Dimensione:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "GB", IDC_UNIT, 117, 24, 14, 9
LTEXT "Filesystem:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "&OK", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "&Annulla", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Impostazioni avanzate delle partizioni"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "Cartella di installazione", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "Installazione del Boot loader", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "Installazione del Boot loader sul disco fisso (MBR e VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "Installazione del Boot loader sul disco fisso (solo VBR)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "Non installare il Boot loader", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "&OK", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "&Annulla", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Installazione di ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Cliccare Avanti per iniziare l'installazione.", IDC_STATIC, 7, 180, 303, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Installazione di ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "File da installare...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Completamento della installazione di ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "La prima fase è stata completata in modo regolare.", IDC_STATIC, 20, 50, 277, 10
LTEXT "Quando verrà premuto fine il computer si riavvierà.", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "Se presente rimuovere il CD dal lettore e cliccare Fine per riavviare il computer.", IDC_STATIC, 10, 180, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "Benvenuti alla installazione di ReactOS"
IDS_TYPESUBTITLE "Scegliere il tipo di installazione."
IDS_DEVICETITLE "Impostazione dei dispositivi di base"
IDS_DEVICESUBTITLE "Impostazione di monitor e tastiera."
IDS_DRIVETITLE "Impostazione della partizione e della cartella per la installazione"
IDS_DRIVESUBTITLE "Preparazione di partizione, cartella di sistema e Boot loader."
IDS_PROCESSTITLE "Preparazione della partizione, copia dei file e configurazione del sistema"
IDS_PROCESSSUBTITLE "Creazione e formattazione della partizione, copia dei file, installazione del Boot loader"
IDS_RESTARTTITLE "Prima fase della installazione completata"
IDS_RESTARTSUBTITLE "La prima fase della installazione è stata completata, riavviare il computer per procedere alla seconda fase"
IDS_SUMMARYTITLE "Sintesi della installazione"
IDS_SUMMARYSUBTITLE "Lista delle proprietà della installazione da controllare prima che siano eseguite sul dispositivo di installazione"
IDS_ABORTSETUP "ReactOS non è installato completamente sul computer. Se interropete l'installazione ora sarà necessario eseguire l'installazione di nuovo. Volete procedere?"
IDS_ABORTSETUP2 "Volete interrompere l'installazione?"
IDS_NO_TXTSETUP_SIF "Unable to find 'txtsetup.sif'\nSetup is unable to continue."
IDS_CAPTION "Installazione di ReactOS"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "Name"
IDS_PARTITION_SIZE "Size"
IDS_PARTITION_TYPE "Type"
END

View file

@ -0,0 +1,137 @@
LANGUAGE LANG_JAPANESE, SUBLANG_DEFAULT
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS セットアップ"
FONT 9, "MS UI Gothic"
BEGIN
LTEXT "ReactOS セットアップウィザードへようこそ。", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "このCDからまだ直接ReactOSをインストールできません。ReactOSをインストールするために、このCDからコンピュータを再起動して下さい。", IDC_STATIC, 115, 40, 195, 100
LTEXT "完了をクリックしてセットアップを終了して下さい。", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS セットアップ"
FONT 9, "MS UI Gothic"
BEGIN
AUTORADIOBUTTON "ReactOSをインストールする", IDC_INSTALL, 7, 7, 277, 10
LTEXT "ReactOSを新しくインストールします。このオプションは、あなたのファイル、設定、プログラムを維持しません。あなたはディスクとパーティションに変更を加えることができます。", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "ReactOSを更新または修正する", IDC_UPDATE, 7, 50, 277, 10
LTEXT "インストールされたReactOSを更新または修正します。このオプションはあなたのファイル、設定、プログラムを保持します。このオプションは、このコンピュータですでにReactOSがインストール済みのときのみ利用できます。", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "次へをクリックすると続行します", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS セットアップ"
FONT 9, "MS UI Gothic"
BEGIN
LTEXT "コンピュータ:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 180, 80
LTEXT "ディスプレイ:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 180, 80
LTEXT "キーボード:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 180, 80
LTEXT "デバイスをセットアップするために、次へをクリック", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS セットアップ"
FONT 9, "MS UI Gothic"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "作成(&C)", IDC_PARTCREATE, 7, 122, 50, 14
PUSHBUTTON "削除(&D)", IDC_PARTDELETE, 63, 122, 50, 14
PUSHBUTTON "ドライバ(&R)", IDC_DEVICEDRIVER, 174, 122, 50, 14, WS_DISABLED
PUSHBUTTON "上級者向け(&A)...", IDC_PARTMOREOPTS, 230, 122, 80, 14
/* LTEXT "次へをクリックすれば、要約をチェックできます。", IDC_STATIC, 7, 128, 277, 8 */
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "パーティションの作成"
FONT 9, "MS UI Gothic"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "パーティションを作成し、フォーマットします", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "サイズ:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "GB", IDC_UNIT, 117, 24, 14, 9
LTEXT "ファイルシステム:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "&OK", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "キャンセル(&C)", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "上級者向けパーティション設定"
FONT 9, "MS UI Gothic"
BEGIN
CONTROL "インストール先フォルダ", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "ブートローダのインストール", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "ハードディスクにブートローダをインストールする (MBRとVBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "ハードディスクにブートローダをインストールする (VBRのみ)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "ブートローダをインストールしない", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "&OK", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "キャンセル(&C)", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS セットアップ"
FONT 9, "MS UI Gothic"
BEGIN
LTEXT "次へをクリックすると、インストールの処理を開始します。", IDC_STATIC, 7, 128, 303, 8
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS セットアップ"
FONT 9, "MS UI Gothic"
BEGIN
LTEXT "ファイルをインストール中...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 7, 120, 303, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS セットアップの完了"
FONT 9, "MS UI Gothic"
BEGIN
LTEXT "ReactOS セットアップの最初の段階が正しく完了しました。", IDC_STATIC, 115, 50, 195, 10
LTEXT "完了をクリックすると、あなたのコンピュータは再起動されます。", IDC_STATIC, 115, 80, 195, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 115, 110, 195, 8
LTEXT "もしCDがドライブにあれば、取り除いて下さい。その後、あなたのコンピュータを再起動するには、完了をクリックして下さい。", IDC_STATIC, 115, 169, 195, 17
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "ReactOS セットアップにようこそ"
IDS_TYPESUBTITLE "セットアップの種類を選んで下さい"
IDS_DEVICETITLE "基本デバイスをセットアップします"
IDS_DEVICESUBTITLE "ディスプレイとキーボードの設定をします"
IDS_DRIVETITLE "インストール先パーティションとシステムフォルダをセットアップします"
IDS_DRIVESUBTITLE "インストール先のパーティション、システムフォルダ、ブートローダを準備します"
IDS_PROCESSTITLE "パーティションをセットアップし、ファイルをコピーし、システムをセットアップします"
IDS_PROCESSSUBTITLE "パーティションを作成・フォーマットし、ファイルをコピーし、ブートローダをインストール・セットアップします"
IDS_RESTARTTITLE "最初の段階は完了しました"
IDS_RESTARTSUBTITLE "セットアップの最初の段階が完了しました。第二の段階に進むために再起動します"
IDS_SUMMARYTITLE "インストールの要約"
IDS_SUMMARYSUBTITLE "インストールするデバイスを適用する前にチェックするインストール プロパティをリストアップします"
IDS_ABORTSETUP "ReactOSはあなたのコンピュータへのインストールが完了していません。もしセットアップをここで中断すれば、ReactOSをインストールするために、セットアップを再起動する必要があります。本当に中断しますか?"
IDS_ABORTSETUP2 "インストールを中断しますか?"
IDS_NO_TXTSETUP_SIF "'txtsetup.sif'が見つかりません。\nセットアップは続行できません"
IDS_CAPTION "ReactOS セットアップ"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "名前"
IDS_PARTITION_SIZE "サイズ"
IDS_PARTITION_TYPE "種類"
END

View file

@ -0,0 +1,139 @@
/* Malay translation by Henry Tang Ih 2016 (henrytang2@hotmail.com) */
LANGUAGE LANG_MALAY, SUBLANG_DEFAULT
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Persediaan"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Selamat datang ke Pendeta Persediaan ReactOS.", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "Anda tidak boleh memasang ReactOS terus dari CD ini lagi! Sila mula semula komputer anda dari CD ini untuk memasang ReactOS.", IDC_STATIC, 115, 40, 195, 100
LTEXT "Klik Selesai untuk keluar persediaan.", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Persediaan"
FONT 8, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "Pasang ReactOS", IDC_INSTALL, 7, 7, 277, 10
LTEXT "Install a new copy of ReactOS. This option does not keep your files, settings and programs. You can make changes to disks and partitions.", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "Membaiki atau mengemaskini ReactOS yang dipasang", IDC_UPDATE, 7, 50, 277, 10
LTEXT "Update or repair an installed copy of ReactOS. This option keeps your files, settings and programs. This option is only available if ReactOS is already installed on this computer.", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "Klik Seterusnya untuk memasang peranti.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Persediaan"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Komputer:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 180, 80
LTEXT "Paparan:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 180, 80
LTEXT "Papan Kekunci:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 180, 80
LTEXT "Klik di sebelah persediaan peranti pemasangan tersebut.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Persediaan"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "Men&cipta", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "Hapus(&D)", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "Pemacu(&R)", IDC_DEVICEDRIVER, 174, 122, 50, 15, WS_DISABLED
PUSHBUTTON "Opsyen l&anjutan...", IDC_PARTMOREOPTS, 230, 122, 80, 15
LTEXT "Klik Seterusnya untuk menyemak ringkasan.", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Membuat Partition"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "Cipta dan format partition", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "Saiz:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "GB", IDC_UNIT, 117, 24, 14, 9
LTEXT "Sistem fail:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "&OK", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "Batal(&C)", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Seting lanjutan Partition"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "Folder pemasangan", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "Boot loader pemasangan", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "Memasang boot loader pada cakera keras (MBR dan VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "Memasang boot loader pada cakera keras (VBR sahaja)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "Tiada pemasangan boot loader", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "&OK", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "Batal(&C)", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Persediaan"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Klik Seterusnya untuk memulakan proses pemasangan.", IDC_STATIC, 7, 180, 303, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Persediaan"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Memasang fail...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Melengkapkan persediaan ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Anda telah berjaya melengkapkan tahap pertama persediaan ReactOS.", IDC_STATIC, 20, 50, 277, 10
LTEXT "Apabila anda klik Selesai, komputer akan dimulakan semula.", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "Jika ada CD ke dalam pemacu, mengeluarkannya. Kemudian, untuk memulakan semula komputer anda, klik selesai.", IDC_STATIC, 10, 180, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "Selamat datang ke persediaan ReactOS"
IDS_TYPESUBTITLE "Pilih jenis persediaan."
IDS_DEVICETITLE "Sediakan peranti asas"
IDS_DEVICESUBTITLE "Setkan seting paparan dan papan kekunci."
IDS_DRIVETITLE "Sediakan folder pemasangan partition dan sistem"
IDS_DRIVESUBTITLE "Menyediakan pemasangan partition, folder sistem dan boot loader."
IDS_PROCESSTITLE "Persediaan partition, salinan fail dan sistem persediaan"
IDS_PROCESSSUBTITLE "Cipta dan format partition, menyalin fail, memasang dan sediakan boot loader"
IDS_RESTARTTITLE "Tahap pertama Persediaan selesai"
IDS_RESTARTSUBTITLE "Tahap pertama persediaan telah selesai, mula semula untuk meneruskan peringkat kedua"
IDS_SUMMARYTITLE "Ringkasan pemasangan"
IDS_SUMMARYSUBTITLE "Senarai pemasangan sifat-sifat untuk menyemak sebelum digunakan untuk pemasangan peranti"
IDS_ABORTSETUP "ReactOS tidak benar-benar dipasang pada komputer anda. Jika anda berhenti persediaan sekarang, anda akan perlu untuk menjalankan persediaan untuk memasang ReactOS lagi. Benar-benar berhenti?"
IDS_ABORTSETUP2 "Henti paksa pemasangan?"
IDS_NO_TXTSETUP_SIF "Persediaan tidak dapat mencari 'txtsetup.sif'\nPersediaan tidak dapat meneruskan"
IDS_CAPTION "ReactOS Persediaan"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "Name"
IDS_PARTITION_SIZE "Size"
IDS_PARTITION_TYPE "Type"
END

View file

@ -0,0 +1,137 @@
LANGUAGE LANG_NORWEGIAN, SUBLANG_NEUTRAL
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS installering"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Velkommen til ReactOS installering veiviseren.", IDC_STARTTITLE, 115, 8, 220, 24
LTEXT "Du kan ennå ikke installere ReactOS direkte fra denne CD-en! Vennligst start datamaskinen på nytt og start fra denne platen for å installere ReactOS.", IDC_STATIC, 115, 40, 195, 100
LTEXT "Trykk på Fullført for å avslutte installeringen.", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS installering"
FONT 8, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "Installere ReactOS", IDC_INSTALL, 7, 7, 277, 10
LTEXT "Install a new copy of ReactOS. This option does not keep your files, settings and programs. You can make changes to disks and partitions.", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "Reparere eller oppdatere en installert ReactOS", IDC_UPDATE, 7, 50, 277, 10
LTEXT "Update or repair an installed copy of ReactOS. This option keeps your files, settings and programs. This option is only available if ReactOS is already installed on this computer.", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "Trykk på Neste for installere enhetene.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS installering"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Datamaskin:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 150, 80
LTEXT "Skjerm:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 150, 80
LTEXT "Tastatur:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 150, 80
LTEXT "Trykk på Neste for å installere enhetene.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS installering"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "&Opprett", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "&Slett", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "S&tasjon", IDC_DEVICEDRIVER, 174, 122, 50, 15, WS_DISABLED
PUSHBUTTON "&Avansert valg...", IDC_PARTMOREOPTS, 230, 122, 80, 15
LTEXT "Trykk på Neste for å starte installasjon prosessen.", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Opprett partisjon"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "Opprett og formater partisjon", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "Størrelse:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "GB", IDC_UNIT, 117, 24, 14, 9
LTEXT "Filsystem:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "&OK", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "&Avbryt", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Avansert partisjon innstillinger"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "Installasjon mappe", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "Oppstartslaster installasjon", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "Installer oppstartslaster på harddiskens (MBR og VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "Installer oppstartslaster på harddiskens (bare VBR)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "Ikke installer oppstartslaster", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "&OK", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "&Avbryt", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS installering"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Trykk på Neste for å starte installasjon prosessen.", IDC_STATIC, 7, 180, 303, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS installering"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Installer filer...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Fullfører ReactOS installering"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Du har nå fullført første steget av ReactOS installering.", IDC_STATIC, 20, 50, 277, 10
LTEXT "Når du trykker Fullført, vil din datamaskin starte på nytt.", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "Hvis du fortsatt har CD platen i stasjon, fjern denne. For å starte din datamaskin på nytt, trykk på Fullført.", IDC_STATIC, 10, 180, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "Velkommen til ReactOS installering"
IDS_TYPESUBTITLE "Velg installering type."
IDS_DEVICETITLE "Installer grunnleggende enheter"
IDS_DEVICESUBTITLE "Velg innstillingene til skjermen og tastaturet."
IDS_DRIVETITLE "Valg av installasjon partisjon og system mappe"
IDS_DRIVESUBTITLE "Forbrede installasjon partisjon, system mappe og oppstartslaster."
IDS_PROCESSTITLE "Forbrede partisjon, kopiere filer og installere system"
IDS_PROCESSSUBTITLE "Opprett og formater partisjon, kopier filer, installere og sett opp oppstartlaster"
IDS_RESTARTTITLE "Første steget av installering er fullført"
IDS_RESTARTSUBTITLE "Første steget av installering har blitt fullført, start på nytt for å fortsette til andre steget"
IDS_SUMMARYTITLE "Installasjon oppsumering"
IDS_SUMMARYSUBTITLE "Sjekk listen av installasjon egenskapene før du fortsetter installasjon av enhetene"
IDS_ABORTSETUP "ReactOS er ikke fullstendig installert på datamaskinen. Hvis du avslutter nå, trenger du å kjøre installeringen på nytt for å installere ReactOS. Vil du virkelig avslutte?"
IDS_ABORTSETUP2 "Avbryt installasjonen?"
IDS_NO_TXTSETUP_SIF "Unable to find 'txtsetup.sif'\nSetup is unable to continue."
IDS_CAPTION "ReactOS installering"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "Name"
IDS_PARTITION_SIZE "Size"
IDS_PARTITION_TYPE "Type"
END

View file

@ -0,0 +1,148 @@
/*
* Translation by xrogers
* xxrogers@users.sourceforge.net
* https://sourceforge.net/projects/reactospl
* http://rogers.cyberdusk.pl/
* Update - niski (bjauy@o2.pl)
* Updated by Caemyr (Olaf Siejka), Mar 2011
* UTF-8 conversion by Caemyr (May, 2011)
* Updated by Marcin Mikołajczak <me@m4sk.in> (September, 2017)
*/
LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalator ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Witaj w Kreatorze instalacji ReactOS.", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "Obecnie nie możesz zainstalować ReactOS bezpośrednio! Uruchom ponownie komputer z tej płyty, aby zainstalować ReactOS.", IDC_STATIC, 115, 40, 195, 100
LTEXT "Naciśnij przycisk aby zakończyć pracę Instalatora.", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalator ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "Zainstaluj ReactOS", IDC_INSTALL, 7, 7, 277, 10
LTEXT "Zainstaluj nową kopię ReactOS. Ta opcja nie zachowa plików, ustawień i programów. Możesz dokonać zmian w dyskach i partycjach.", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "Napraw lub zaktualizuj zainstalowany wcześniej ReactOS", IDC_UPDATE, 7, 50, 277, 10
LTEXT "Zaktualizuj lub napraw istniejącą kopię systemu ReactOS. Ta opcja zachowa pliki, ustawienia i programy. Jest dostępna, jeżeli ReactOS znajduje się już na tym komputerze.", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "Naciśnij Dalej, aby zmienić ustawienia sprzętu.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalator ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Komputer:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 150, 80
LTEXT "Ekran:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 150, 80
LTEXT "Klawiatura:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 150, 80
LTEXT "Naciśnij Dalej, aby ustalić miejsce instalacji.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalator ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "&Stwórz", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "&Usuń", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "S&terownik", IDC_DEVICEDRIVER, 169, 122, 50, 15, WS_DISABLED
PUSHBUTTON "&Opcje zaawansowane...", IDC_PARTMOREOPTS, 225, 122, 86, 15
LTEXT "Naciśnij Dalej, aby rozpocząć proces instalacji.", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Stwórz partycję"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "Stwórz i sformatuj partycję", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "Rozmiar:",IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "GB", IDC_UNIT, 117, 24, 14, 9
LTEXT "System plików:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "&OK", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "&Anuluj", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Zaawansowane ustawienia partycji"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "Folder instalacji", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "Instalacja menedżera rozruchu", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "Wgraj menedżer rozruchu na dysk twardy (MBR i VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "Wgraj menedżer rozruchu na dysk twardy (tylko VBR)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "Pomiń wgrywanie menedżera rozruchu", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "&OK", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "&Anuluj", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalator ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Kliknij Dalej, aby rozpocząć proces instalacji.", IDC_STATIC, 7, 180, 303, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalator ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Instalacja plików...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Kończenie instalacji ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Pierwszy etap instalacji ReactOS został pomyślnie zakończony.", IDC_STATIC, 20, 50, 277, 10
LTEXT "Po kliknięciu na Zakończ ten komputer zostanie uruchomiony ponownie.", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "Jeśli w napędzie jest płyta CD, wyciągnij ją. Następnie naciśnij Zakończ, aby uruchomić ponownie komputer.", IDC_STATIC, 10, 180, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "Witamy w Instalatorze ReactOS"
IDS_TYPESUBTITLE "Wybierz typ instalacji."
IDS_DEVICETITLE "Ustawienia podstawowych urządzeń"
IDS_DEVICESUBTITLE "Zmień ustawienia ekranu i klawiatury."
IDS_DRIVETITLE "Ustaw partycję instalacji i folder systemowy"
IDS_DRIVESUBTITLE "Przygotuj partycje instalacji, folder systemowy i menedżer rozruchu."
IDS_PROCESSTITLE "Przygotuj partycję, skopiuj pliki i zapisz ustawienia systemu"
IDS_PROCESSSUBTITLE "Przygotuj i sformatuj partycję, skopiuj pliki, skopiuj i zainstaluj menedżer rozruchu"
IDS_RESTARTTITLE "Pierwszy etap instalacji zakończony sukcesem"
IDS_RESTARTSUBTITLE "Pierwszy etap instalacji został zakończony, uruchom ponownie komputer, aby przejść do drugiego etapu"
IDS_SUMMARYTITLE "Podsumowanie instalacji"
IDS_SUMMARYSUBTITLE "Sprawdź ustawienia instalacji przed dokonaniem zmian na dysku"
IDS_ABORTSETUP "Instalacja ReactOS nie została ukończona na tym komputerze. Jeśli teraz zakończysz instalację, będziesz musiał uruchomić Instalator ponownie, aby zainstalować ReactOS. Na pewno zakończyć?"
IDS_ABORTSETUP2 "Przerwać instalację?"
IDS_NO_TXTSETUP_SIF "Nie można znaleźć 'txtsetup.sif'\nInstalator nie może kontynuować."
IDS_CAPTION "Instalator ReactOS"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "Nazwa"
IDS_PARTITION_SIZE "Rozmiar"
IDS_PARTITION_TYPE "Rodzaj"
END

View file

@ -0,0 +1,137 @@
LANGUAGE LANG_PORTUGUESE, SUBLANG_NEUTRAL
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalação do ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Bem-vindo(a) ao Assistente de Instalação do ReactOS.", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "Você não pode instalar o ReactOS diretamente deste CD! Por favor reinicie seu computador a partir deste CD para instalar o ReactOS.", IDC_STATIC, 115, 40, 195, 100
LTEXT "Clique em Finalizar para sair da Instalação.", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalação do ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "Instalar ReactOS", IDC_INSTALL, 7, 7, 277, 10
LTEXT "Install a new copy of ReactOS. This option does not keep your files, settings and programs. You can make changes to disks and partitions.", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "Reparar ou atualizar uma instalação do ReactOS", IDC_UPDATE, 7, 50, 277, 10
LTEXT "Update or repair an installed copy of ReactOS. This option keeps your files, settings and programs. This option is only available if ReactOS is already installed on this computer.", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "Clique em Próximo para configurar os dispositivos.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalação do ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Computador:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 180, 80
LTEXT "Monitor:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 180, 80
LTEXT "Teclado:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 180, 80
LTEXT "Clique em Próximo para configurar o dispositivo de instalação.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalação do ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "&Criar", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "&Apagar", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "D&rivers", IDC_DEVICEDRIVER, 174, 122, 50, 15, WS_DISABLED
PUSHBUTTON "&Opções Avançadas...", IDC_PARTMOREOPTS, 230, 122, 80, 15
LTEXT "Clique em Próximo para verificar o sumário.", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Criar Partição"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "Criar e formatar partição", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "Tamanho:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "GB", IDC_UNIT, 117, 24, 14, 9
LTEXT "Sistema de arquivo:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "&OK", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "&Cancelar", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Configurações Avançadas de Particionamento"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "Pasta de instalação", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "Instalação do boot loader", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "Instalar boot loader no disco rígido (MBR e VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "Instalar boot loader no disco rígido (apenas VBR)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "Não instalar boot loader", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "&OK", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "&Cancelar", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalação do ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Clique em Próximo para iniciar o processo de instalação.", IDC_STATIC, 7, 180, 303, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalação do ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Instalar arquivos...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "teste.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Finalizando Instalação do ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "A primeira etapa de Instalação do ReactOS foi efetuada com sucesso.", IDC_STATIC, 20, 50, 277, 10
LTEXT "Clique em Finalizar para reiniciar o computador.", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "Se houver um CD no drive, remova-o. Após isto, clique em Finalizar para reiniciar o computador.", IDC_STATIC, 10, 180, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "Bem-vindo(a) a Instalação do ReactOS"
IDS_TYPESUBTITLE "Escolha o modo de instalação."
IDS_DEVICETITLE "Instalar dispositivos básicos"
IDS_DEVICESUBTITLE "Definir as configurações de monitor e teclado."
IDS_DRIVETITLE "Configurar a partição de instalação e pasta do sistema"
IDS_DRIVESUBTITLE "Preparando partição de instalação, pasta do sistema e boot loader."
IDS_PROCESSTITLE "Preparar partição, copiar arquivos e configurar sistema"
IDS_PROCESSSUBTITLE "Criar e formatar partição, copiar arquivos, instalar e configurar boot loader"
IDS_RESTARTTITLE "Primeira etapa de instalação finalizada"
IDS_RESTARTSUBTITLE "A primeira etapada da instalação foi completada, reinicie o computador para prosseguir com a segunda estapa"
IDS_SUMMARYTITLE "Sumário de Instalação"
IDS_SUMMARYSUBTITLE "Listar propriedades da instalação para verificação antes de aplicá-las na instalação dos despositivos"
IDS_ABORTSETUP "ReactOS não está totalmente instalado em seu computador. Se você sair da Instalação agora, você precisará executar o Instalador novamente para instalar o ReactOS. Tem certeza que deseja sair?"
IDS_ABORTSETUP2 "Abortar instalação?"
IDS_NO_TXTSETUP_SIF "Unable to find 'txtsetup.sif'\nSetup is unable to continue."
IDS_CAPTION "Instalação do ReactOS"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "Name"
IDS_PARTITION_SIZE "Size"
IDS_PARTITION_TYPE "Type"
END

View file

@ -0,0 +1,146 @@
/*
* PROJECT: ReactOS GUI first stage setup application
* FILE: base/setup/reactos/lang/ro-RO.rc
* PURPOSE: Romanian Language File for ReactOS GUI first stage setup
* TRANSLATORS:
* Petru Dimitriu (petrimetri at gmail dot com)
* Ștefan Fulea (stefan dot fulea at mail dot md)
*/
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Asistent de instalare ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Bun venit la instalarea ReactOS", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "ReactOS încă nu poate fi instalat direct de pe acest CD! Pentru a instala ReactOS, reporniți calculatorul și utilizați acest CD în secvența de inițializare.", IDC_STATIC, 115, 40, 195, 100
LTEXT "Apăsați pe „Sfârșit” pentru a ieși.", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Asistent de instalare ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "Instalează ReactOS", IDC_INSTALL, 7, 7, 277, 10
LTEXT "Instalarea unei noi copii a ReactOS. Fișierele, configurațiile și programele existente nu vor fi păstrate. Sunt posibile ajustări asupra discurilor și partițiilor.", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "Repară sau actualizează ReactOS", IDC_UPDATE, 7, 50, 277, 10
LTEXT "Repararea sau actualizarea ReactOS. Această opțiune menține fișierele, configurațiile și programele existente. Opțiune validă doar dacă ReactOS e deja instalat în calculator.", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "Apăsați pe „Înainte” pentru configurarea de dispozitive.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Asistent de instalare ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Calculator:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 180, 80
LTEXT "Ecran:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 180, 80
LTEXT "Tastatură:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 180, 80
LTEXT "Apăsați pe „Înainte” pentru configurarea dispozitivului de instalare.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Asistent de instalare ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "&Crează", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "Șt&erge", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "Mo&dul pilot", IDC_DEVICEDRIVER, 174, 122, 50, 15, WS_DISABLED
PUSHBUTTON "Opțiuni a&vansate…", IDC_PARTMOREOPTS, 230, 122, 80, 15
LTEXT "Apăsați pe „Înainte” pentru a verifica sumarul.", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Creare partiție"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "Crearea și formatarea partiției", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "Marime:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "GO", IDC_UNIT, 117, 24, 14, 9
LTEXT "Sistemul de fișiere:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "Con&firmă", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "A&nulează", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Opțiuni avansate partiție"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "Dosarul de instalare", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "Instalarea secvenței de inițializare", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "Instalează inițializatorul pe hard disc (MBR și VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "Instalează inițializatorul pe hard disc (numai VBR)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "Omite instalarea inițializatorului", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "Con&firmă", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "A&nulează", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Asistent de instalare ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Apăsați „Înainte” pentru a continua procesul de instalare.", IDC_STATIC, 10, 180, 277, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Asistent de instalare ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Fișiere în copiere…", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Asistent de instalare ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Ați dus la bun sfârșit prima etapă de instalare a ReactOS", IDC_STATIC, 20, 50, 277, 10
LTEXT "Când veți apăsa „Sfârșit”, calculatorul va reporni.", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "Dacă aveți vreun CD în calculator, scoateți-l, după care apăsați „Sfârșit” pentru a reporni.", IDC_STATIC, 10, 180, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "Bun venit la instalarea ReactOS"
IDS_TYPESUBTITLE "Alegeți tipul de instalare."
IDS_DEVICETITLE "Instalare dispozitive de bază"
IDS_DEVICESUBTITLE "Stabilirea parametrilor de afișare și tastatură."
IDS_DRIVETITLE "Stabilire destinație"
IDS_DRIVESUBTITLE "Pregătirea partiției de instalare, a dosarului de sistem și a inițializatorului."
IDS_PROCESSTITLE "Executare pași de instalare"
IDS_PROCESSSUBTITLE "Crearea și formatarea partiției, copierea de fișiere și instalarea inițializatorului."
IDS_RESTARTTITLE "Finalizare primă etapă"
IDS_RESTARTSUBTITLE "Prima etapă a instalarii a fost încheiată cu succes, reporniți pentru a doua etapă."
IDS_SUMMARYTITLE "Rezumat de instalare"
IDS_SUMMARYSUBTITLE "Lista cu opțiuni de instalare ce necesită verificare înainte de a continua instalarea."
IDS_ABORTSETUP "ReactOS încă nu este complet instalat în calculator. Daca întrerupeți procesul de instalare, pentru a instala va fi necesară repetarea pașilor parcurși până acum. Sigur doriți asta?"
IDS_ABORTSETUP2 "Abandonați instalarea?"
IDS_NO_TXTSETUP_SIF "Fișierulu „txtsetup.sif” nu poate fi găsit!\nInstalarea nu poate continua."
IDS_CAPTION "Asistentul de instalare ReactOS"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "Nume"
IDS_PARTITION_SIZE "Dimensiune"
IDS_PARTITION_TYPE "Tip"
END

View file

@ -0,0 +1,137 @@
LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Установка ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Вас приветствует программа установки ReactOS.", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "Установку ReactOS можно производить только загрузившись с этого диска! После перезапуска компьютера выберите загрузку с CD и начните установку ReactOS.", IDC_STATIC, 115, 40, 195, 100
LTEXT "Нажмите кнопку ""Завершить"" для выхода.", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Установка ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "Установка ReactOS", IDC_INSTALL, 7, 7, 277, 10
LTEXT "Установить новую копию системы ReactOS. Эта опция НЕ сохраняет файлы, настройки и программы. Вы можете изменять диски и разделы.", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "Восстановить или изменить установленный ранее ReactOS", IDC_UPDATE, 7, 50, 277, 10
LTEXT "Обновить или восстановить установленную копию системы ReactOS. Эта опция СОХРАНЯЕТ файлы, настройки и программы. Доступно только при наличии уже установленной на компьютере системы ReactOS.", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "Для установки устройств нажмите ""Далее"".", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Установка ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Компьютер:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 150, 80
LTEXT "Экран:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 150, 80
LTEXT "Клавиатура:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 150, 80
LTEXT "Для установки устройств нажмите ""Далее"".", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Установка ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "&Создать", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "&Удалить", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "Д&райвер", IDC_DEVICEDRIVER, 162, 122, 50, 15, WS_DISABLED
PUSHBUTTON "&Дополнительные параметры...", IDC_PARTMOREOPTS, 176, 122, 122, 15
LTEXT "Для начала установки нажмите ""Далее"".", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Создать раздел на диске"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "Создать и отформатировать раздел диска", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "Размер:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "Гб", IDC_UNIT, 117, 24, 14, 9
LTEXT "Файловая система:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "&Есть", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "&Отставить", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Дополнительные параметры установки"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "Основной каталог", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 12, 283, 14, WS_VISIBLE
CONTROL "Установка загрузчика", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "Установить загрузчик на диск (MBR и VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 49, 278, 11
CONTROL "Установить загрузчик на диск (только VBR)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "Не устанавливать загрузчик", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "&OK", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "&Отмена", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Установка ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Для начала установки нажмите ""Далее"".", IDC_STATIC, 7, 180, 303, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Установка ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Копирование файлов...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Завершение установки ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Первый этап установки ReactOS закончен.", IDC_STATIC, 20, 50, 277, 10
LTEXT "После нажатия клавиши ""Завершить"" ваш компьютер будет перезагружен.", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "Вы можете извлечь установочный диск. Для перезагрузки компьютера нажмите клавишу ""Завершить"".", IDC_STATIC, 10, 176, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "Вас приветствует программа установки ReactOS"
IDS_TYPESUBTITLE "Выберите тип установки."
IDS_DEVICETITLE "Установка базовых устройств"
IDS_DEVICESUBTITLE "Настройка параметров экрана и клавиатуры."
IDS_DRIVETITLE "Выбор расположения на диске и системного каталога"
IDS_DRIVESUBTITLE "Подготовка раздела диска, системного каталога и загрузчика."
IDS_PROCESSTITLE "Подготовка раздела диска, копирование системных файлов"
IDS_PROCESSSUBTITLE "Создание раздела на диске, копирование файлов, установка загрузчика"
IDS_RESTARTTITLE "Первый этап установки закончен"
IDS_RESTARTSUBTITLE "Первый этап закончен, для продолжения требуется перезагрузка"
IDS_SUMMARYTITLE "Сводка"
IDS_SUMMARYSUBTITLE "Проверьте список параметров перед началом установки"
IDS_ABORTSETUP "ReactOS установлен на компьютер не полностью. Если вы закроете программу установки сейчас, в дальнейшем вам придется повторить установку ReactOS. Вы уверены, что необходимо прервать установку?"
IDS_ABORTSETUP2 "Прервать установку?"
IDS_NO_TXTSETUP_SIF "Не удалось найти файл 'txtsetup.sif'\nПродолжение установки невозможно."
IDS_CAPTION "Установка ReactOS"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "Имя"
IDS_PARTITION_SIZE "Размер"
IDS_PARTITION_TYPE "Тип"
END

View file

@ -0,0 +1,142 @@
/* TRANSLATOR : Mário Kačmár /Mario Kacmar/ aka Kario (kario@szm.sk)
* DATE OF TR.: xx-xx-2007
* LAST UPDATE: 02-11-2010
*/
LANGUAGE LANG_SLOVAK, SUBLANG_DEFAULT
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Inštalácia systému ReactOS" //ReactOS Setup
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Víta Vás sprievodca inštaláciou systému ReactOS.", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "Systém ReactOS sa z tohto CD nedá nainštalovať ihneď! Reštartujte, prosím, počítač a inštalačné CD nechajte vložené, aby sa mohol systém ReactOS nainštalovať.", IDC_STATIC, 115, 40, 195, 100
LTEXT "Inštaláciu ukončíte kliknutím na tlačidlo Dokončiť.", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Inštalácia systému ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "Nainštalovať systém ReactOS", IDC_INSTALL, 7, 7, 277, 10
LTEXT "Install a new copy of ReactOS. This option does not keep your files, settings and programs. You can make changes to disks and partitions.", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "Opraviť alebo aktualizovať nainštalovaný systém ReactOS", IDC_UPDATE, 7, 50, 277, 10
LTEXT "Update or repair an installed copy of ReactOS. This option keeps your files, settings and programs. This option is only available if ReactOS is already installed on this computer.", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "Click Next to setup the devices.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Inštalácia systému ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Počítač:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 180, 80
LTEXT "Obrazovka:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 180, 80
LTEXT "Klávesnica:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 180, 80
LTEXT "Click Next setup of the installation device.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Inštalácia systému ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "&Vytvoriť", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "O&dstrániť", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "D&river", IDC_DEVICEDRIVER, 174, 122, 50, 15, WS_DISABLED
PUSHBUTTON "Rozšírené &možnosti...", IDC_PARTMOREOPTS, 230, 122, 80, 15
LTEXT "Click Next to check the summary.", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Vytvoriť partíciu"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "Vytvoriť a naformátovať partíciu", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "Veľkosť:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "GB", IDC_UNIT, 117, 24, 14, 9
LTEXT "Systém súborov:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "&OK", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "&Zrušiť", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Rozšírené nastavenia partície"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "Inštalačný priečinok", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "Inštalácia zavádzača systému", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "Nainštalovať zavádzač systému na pevný disk (MBR a VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "Nainštalovať zavádzač systému na pevný disk (iba VBR)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "Nenainštalovať zavádzač systému", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "&OK", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "&Zrušiť", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Inštalácia systému ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Kliknutím na tlačidlo Ďalej spustíte inštalačný proces.", IDC_STATIC, 7, 180, 303, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Inštalácia systému ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Install files...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Completing ReactOS Setup"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "You have successfully completed the first stage of ReactOS Setup.", IDC_STATIC, 20, 50, 277, 10
LTEXT "Kliknutím na tlačidlo Dokončiť reštartujete počítač.", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "If there is a CD in a drive, remove it. Then, to restart your computer, click Finish.", IDC_STATIC, 10, 180, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "Víta Vás inštalátor systému ReactOS" //Welcome to ReactOS Setup
IDS_TYPESUBTITLE "Choose setup type."
IDS_DEVICETITLE "Setup the basic devices"
IDS_DEVICESUBTITLE "Set the settings of display and keyboard."
IDS_DRIVETITLE "Setup the installation partition and system folder"
IDS_DRIVESUBTITLE "Prepare installation partition, system folder and boot loader."
IDS_PROCESSTITLE "Prepare partition, copy files and setup system"
IDS_PROCESSSUBTITLE "Create and format partition, copy files, install and setup boot loader"
IDS_RESTARTTITLE "First stage of setup finished"
IDS_RESTARTSUBTITLE "The first stage of setup has been completed, restart to continue with second stage"
IDS_SUMMARYTITLE "Zhrnutie inštalácie"
IDS_SUMMARYSUBTITLE "List installation properties to check before apply to the installation device"
IDS_ABORTSETUP "ReactOS is not completely installed on your computer. If you quit Setup now, you will need to run Setup again to install ReactOS. Naozaj skončiť?"
IDS_ABORTSETUP2 "Prerušiť inštaláciu?"
IDS_NO_TXTSETUP_SIF "Unable to find 'txtsetup.sif'\nSetup is unable to continue."
IDS_CAPTION "ReactOS Setup"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "Name"
IDS_PARTITION_SIZE "Size"
IDS_PARTITION_TYPE "Type"
END

View file

@ -0,0 +1,139 @@
/* TRANSLATOR : Ardit Dani (Ard1t) (ardit.dani@gmail.com) */
LANGUAGE LANG_ALBANIAN, SUBLANG_NEUTRAL
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalimi i ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Mirë se vini në instalimin e ReactOS.", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "Ju nuk mund të instaloni ReactOS direkt nga ky CD! Ju lutem rinisni kompjuterin tuaj nga CD'ja në mënyrë që të instaloni ReactOS.", IDC_STATIC, 115, 40, 195, 100
LTEXT "Kliko Finish për të dalë nga instalimi.", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalimi i ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "InstalO ReactOS", IDC_INSTALL, 7, 7, 277, 10
LTEXT "Install a new copy of ReactOS. This option does not keep your files, settings and programs. You can make changes to disks and partitions.", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "Riparo ose apdejto ReactOS'in e instaluar", IDC_UPDATE, 7, 50, 277, 10
LTEXT "Update or repair an installed copy of ReactOS. This option keeps your files, settings and programs. This option is only available if ReactOS is already installed on this computer.", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "Kliko vazhdo për të konfiguruar pajisjet.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalimi i ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Computer:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 180, 80
LTEXT "Display:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 180, 80
LTEXT "Keyboard:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 180, 80
LTEXT "Klikoni vazhdo për instalim të pajisjeve.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalimi i ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "&Krijo", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "&Fshi", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "D&river", IDC_DEVICEDRIVER, 174, 122, 50, 15, WS_DISABLED
PUSHBUTTON "&Opsionet e avancuara...", IDC_PARTMOREOPTS, 230, 122, 80, 15
LTEXT "Kliko vazhdo për të kontrolluar përmbajtjen.", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Krijo particion"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "Krijo dhe formato particionin", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "Size:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "GB", IDC_UNIT, 117, 24, 14, 9
LTEXT "Filesystem:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "&OK", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "&Anulo", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Krijimi i Avancuar i Particioneve"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "Skeda e Instalimit", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "Instalimi i Boot loaderit", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "Instalo boot loaderin në hard disk (MBR dhe VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "Instalo boot loaderin në hard disk (VBR veq)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "Mos instalo bootloader", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "&Dakord", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "&Anulo", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalimi i ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Kliko vazhdo për të filluar instalimin.", IDC_STATIC, 7, 180, 303, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Instalimi i ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Instalimi i dokumentave...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Kompletimi i instalimit te ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Ju keni kompletuar me sukses fazën e parë të instalimit të ReactOS.", IDC_STATIC, 20, 50, 277, 10
LTEXT "Kur te klikoni mbarim, kompjuteri juaj do riniset.", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "Nëse keni nje CD në drive, hiqeni. Pastaj, për ta rinist kompjuterin tuaj, klikoni mbaroj.", IDC_STATIC, 10, 180, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "Mirë se vini në instalimin e ReactOS"
IDS_TYPESUBTITLE "Zgjidhni llojin e instalimit."
IDS_DEVICETITLE "Instaloni pajisjet themelore"
IDS_DEVICESUBTITLE "Vendos parametrat e ekranit dhe tastieres."
IDS_DRIVETITLE "Konfiguro particionet për instalim dhe dosjet e sistemit"
IDS_DRIVESUBTITLE "Pergatit particionet për instalim, dosjet e sistemit dhe boot loaderin."
IDS_PROCESSTITLE "Konfiguro particionet, kopjo dokumentat dhe konfiguro sistemin"
IDS_PROCESSSUBTITLE "Krijo dhe formato particionet, kopjo dokumentat, insalo dhe konfiguro book loaderin"
IDS_RESTARTTITLE "Faza e pare e instalimit ka perfunduar"
IDS_RESTARTSUBTITLE "Faza e pare e instalimit ka perfunduar, rinisni për të vazhduar me fazen e dytë"
IDS_SUMMARYTITLE "Përmbajtja e instalimit"
IDS_SUMMARYSUBTITLE "Listo të dhënat e instalimit për të kontrolluar para së të aplikohen për pajisjet e instalimit/kompjuterit"
IDS_ABORTSETUP "ReactOS nuk është instaluar plotësisht në kompjuterin tuaj. Nëse ju dilni nga instalimi tani, do ju duhet të filloni instalimin përsëri për të instalumar ReactOS. Doni ta mbyllni?"
IDS_ABORTSETUP2 "Ndërpritni Instalimin?"
IDS_NO_TXTSETUP_SIF "Unable to find 'txtsetup.sif'\nSetup is unable to continue."
IDS_CAPTION "ReactOS Setup"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "Name"
IDS_PARTITION_SIZE "Size"
IDS_PARTITION_TYPE "Type"
END

View file

@ -0,0 +1,139 @@
/* TRANSLATORS: 2012 Arda Tanrıkulu (ardatan) (ardatanrikulu@gmail.com), 2013-2016 Erdem Ersoy (eersoy93) (erdemersoy@live.com) */
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Kur"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "ReactOS Kur Yardımcısı'na Hoş Geldiniz", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "Daha bu CD'den ReactOS'u doğrudan kuramazsınız. Lütfen ReactOS'u kurmak için bu CD'den bilgisayarınızı yeniden başlatınız.", IDC_STATIC, 115, 40, 195, 100
LTEXT "Kur'dan çıkmak için İptal'e tıklayınız.", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Kur"
FONT 8, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "ReactOS'u Yükleme", IDC_INSTALL, 7, 7, 277, 10
LTEXT "ReactOS'un yeni bir kopyasını yükle. Bu seçenek, kütüklerinizi, ayarlarınızı ve izlencelerinizi korumaz. Disklere ve bölümlere değişiklikler yapabilirsiniz.", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "Kurulu ReactOS'u Onarma ya da Yükseltme", IDC_UPDATE, 7, 50, 277, 10
LTEXT "ReactOS'un kurulu bir kopyasını şimdikileştir ya da onar. Bu seçenek, kütüklerinizi, ayarlarınızı ve izlencelerinizi korur. Bu seçenek yalnızca ReactOS bu bilgisayarda önceden kuruluysa kullanılabilir.", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "Aygıtları kurmak için İleri'ye tıklayınız.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Kur"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Bilgisayar:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 180, 80
LTEXT "Görüntü:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 180, 80
LTEXT "Düğme Takımı:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 180, 80
LTEXT "Kurulum aygıtını kurmak için İleri'ye tıklayınız.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Kur"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "&Oluştur...", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "&Sil", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "S&ürücü", IDC_DEVICEDRIVER, 174, 122, 50, 15, WS_DISABLED
PUSHBUTTON "G&elişmiş Seçenekler...", IDC_PARTMOREOPTS, 230, 122, 80, 15
LTEXT "Kurulum özetini gözden geçirmek için İleri'ye tıklayınız.", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Bölüm Oluştur"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "Bölüm Oluşturma ve Biçimlendirme", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "Büyüklük:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "GB", IDC_UNIT, 117, 24, 14, 9
LTEXT "Kütük Dizgesi:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "Tamam", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "İptal", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Gelişmiş Bölümlendirme Seçenekleri"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "Kurulum Dizini", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "Ön Yükleyici Kurulumu", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "Ön yükleyiciyi sâbit diskin üzerine kur. (MBR ve VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "Ön yükleyiciyi sâbit diskin üzerine kur. (Yalnızca VBR)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "Ön yükleyici kurulumu yok.", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "Tamam", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "İptal", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Kur"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Kurulumu işlemini başlatmak için İleri'ye tıklayınız.", IDC_STATIC, 7, 180, 303, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Kur"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Kütükler yükleniyor...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "sınama.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Kurulumunun Bitirilmesi"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "ReactOS kurulumunun ilk aşamasını başarıyla bitirdiniz.", IDC_STATIC, 20, 50, 277, 10
LTEXT "Bitir'e tıkladığınızda bilgisayarınız yeniden başlatılacaktır.", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "Eğer bir sürücüde bir CD varsa onu çıkartınız. Sonra, bilgisayarınızı yeniden başlatmak için Bitir'e tıklayınız.", IDC_STATIC, 10, 180, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "ReactOS Kur'a Hoş Geldiniz"
IDS_TYPESUBTITLE "Kurulum türünü seçiniz."
IDS_DEVICETITLE "Ana Aygıtların Kurulumu"
IDS_DEVICESUBTITLE "Görüntü ve düğme takımı ayarlarını yapınız."
IDS_DRIVETITLE "Kurulum Bölümünün ve Dizge Dizininin Anıklanması"
IDS_DRIVESUBTITLE "Kurulum bölümünü, dizge dizinini ve ön yükleyiciyi anıklayınız."
IDS_PROCESSTITLE "Bölümün Biçimlendirilmesi, Kütüklerin Çoğaltılması ve Önyükleyicinin Kurulması"
IDS_PROCESSSUBTITLE "Bölüm oluşturuluyor ve biçimlendiriliyor, kütükler çoğaltılıyor, ön yükleyici kuruluyor ve anıklanıyor."
IDS_RESTARTTITLE "Kurulumun İlk Aşaması Bitti"
IDS_RESTARTSUBTITLE "Kurulumun ilk aşaması bitirildi, ikinci aşamayla sürdürmek için yeniden başlatınız."
IDS_SUMMARYTITLE "Kurulum Özeti"
IDS_SUMMARYSUBTITLE "Kurulumdan aygıtına uygulanmadan önce gözden geçirmek için dizelgelenen kurulum seçenekleri."
IDS_ABORTSETUP "ReactOS bilgisayarınıza tümüyle kurulmadı. Eğer şimdi Kur'dan çıkarsanız, ReactOS'u kurmak için Kur'u yeniden çalıştırmayı isteybilirsiniz. Gerçekten çıkılsın mı?"
IDS_ABORTSETUP2 "Kurulum iptal edilsin mi?"
IDS_NO_TXTSETUP_SIF """txtsetup.sif"" bulunamıyor.\nKur sürdüremiyor."
IDS_CAPTION "ReactOS Kur"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "Ad"
IDS_PARTITION_SIZE "Boyut"
IDS_PARTITION_TYPE "Tür"
END

View file

@ -0,0 +1,145 @@
/*
* PROJECT: ReactOS Setup
* LICENSE: GPL - See COPYING in the top level directory
* FILE: base/setup/reactos/lang/uk-UA.rc
* PURPOSE: Ukraianian Language File for ReactOS Setup
* TRANSLATOR: Artem Reznikov, Sakara Yevhen
*/
LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Встановлення ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Вас вітає програма встановлення ReactOS.", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "Ви не можете встановити ReactOS прямо з цього CD! Будь ласка перезапустіть Ваш комп’ютер з цього CD для того, щоб встановити ReactOS.", IDC_STATIC, 115, 40, 195, 100
LTEXT "Натисніть кнопку Завершити для виходу.", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Встановлення ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "Встановлення ReactOS", IDC_INSTALL, 7, 7, 277, 10
LTEXT "Install a new copy of ReactOS. This option does not keep your files, settings and programs. You can make changes to disks and partitions.", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "Відновити або змінити встановлений раніше ReactOS", IDC_UPDATE, 7, 50, 277, 10
LTEXT "Update or repair an installed copy of ReactOS. This option keeps your files, settings and programs. This option is only available if ReactOS is already installed on this computer.", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "Для встановлення пристроїв натисніть Далі.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Встановлення ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Комп’ютер:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 180, 80
LTEXT "Екран:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 180, 80
LTEXT "Клавіатура:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 180, 80
LTEXT "Для встановлення пристроїв натисніть Далі.", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Встановлення ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "&Створити", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "&Видалити", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "Д&райвер", IDC_DEVICEDRIVER, 174, 122, 50, 15, WS_DISABLED
PUSHBUTTON "&Додаткові Опції...", IDC_PARTMOREOPTS, 230, 122, 80, 15
LTEXT "Для початку встановлення натисніть Далі", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 172, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Створення розділу"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 131, 22, 9, 13
CONTROL "Створити та відформатувати розділ", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 156, 57
LTEXT "Розмір:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 79, 22, 53, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "Гб", IDC_UNIT, 144, 24, 14, 9
LTEXT "Файлова система:", IDC_STATIC, 13, 46, 65, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 79, 42, 79, 50
PUSHBUTTON "&OK", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "&Скасувати", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "Розширені параметри розділу"
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "Тека встановлення", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "Встановлення завантажувача", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "Встановити завантажувач на жосткий диск (MBR та VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "Встановити завантажувач на жосткий диск (лише VBR)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "Не встановлювати завантажувач", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "&OK", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "&Скасувати", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Встановлення ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Для початку встановлення натисніть Далі.", IDC_STATIC, 7, 180, 303, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Встановлення ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Копіювання файлів...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Завершення встановлення ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Перший етап встановлення ReactOS завершено.", IDC_STATIC, 20, 50, 277, 10
LTEXT "Після натискання клавіші Завершити ваш комп'ютер буде перезавантажений.", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "Ви можете витягнути інсталяційний диск. Для перезавантаження комп'ютера натисніть Завершити", IDC_STATIC, 10, 180, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "Вас вітає програма встановлення ReactOS"
IDS_TYPESUBTITLE "Виберіть тип встановлення."
IDS_DEVICETITLE "Встановлення базових пристроїв"
IDS_DEVICESUBTITLE "Налаштування параметрів екрану та клавіатури."
IDS_DRIVETITLE "Вибір розташування на диску і системного каталогу"
IDS_DRIVESUBTITLE "Підготовка розділу диска, системного каталогу та завантажувача."
IDS_PROCESSTITLE "Підготовка розділу диска, копіювання системних файлів"
IDS_PROCESSSUBTITLE "Створення розділу на диску, копіювання файлів, встановлення завантажувача"
IDS_RESTARTTITLE "Перший етап встановлення завершено"
IDS_RESTARTSUBTITLE "Перший етап завершено, для продовження потрібне перезавантаження"
IDS_SUMMARYTITLE "Інформація про Встановлення"
IDS_SUMMARYSUBTITLE "Перевірте список властивостей встановлення, перш ніж почати встановлення системи"
IDS_ABORTSETUP "ReactOS встановлений на комп'ютер не повністю. Якщо ви закриєте програму встановлення зараз, в подальшому вам доведеться повторити встановлення ReactOS. Ви впевнені, що необхідно перервати встановлення?"
IDS_ABORTSETUP2 "Перервати встановлення?"
IDS_NO_TXTSETUP_SIF "Unable to find 'txtsetup.sif'\nSetup is unable to continue."
IDS_CAPTION "Встановлення ReactOS"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "Name"
IDS_PARTITION_SIZE "Size"
IDS_PARTITION_TYPE "Type"
END

View file

@ -0,0 +1,137 @@
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 安装"
FONT 9, "MS Shell Dlg"
BEGIN
LTEXT "欢迎使用 ReactOS 安装向导。", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "您不能直接从此CD安装 ReactOS 请重新启动并从CD引导您的电脑以便安装 ReactOS。", IDC_STATIC, 115, 40, 195, 100
LTEXT "点击完成退出安装。", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 安装"
FONT 9, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "安装 ReactOS", IDC_INSTALL, 7, 7, 277, 10
LTEXT "安装 ReactOS 的新副本。此选项没有保存你的文件、 设置和程序。你可以对磁盘和分区进行更改。", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "修复或更新已安装的 ReactOS", IDC_UPDATE, 7, 50, 277, 10
LTEXT "更新或修复 ReactOS 安装的副本。此选项会保存您的文件、 设置和程序。如果 ReactOS 已经安装在此计算机上, 此选项才能使用的。", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "点击下一步安装设备。", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 安装"
FONT 9, "MS Shell Dlg"
BEGIN
LTEXT "计算机:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 180, 80
LTEXT "显示:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 180, 80
LTEXT "键盘:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 180, 80
LTEXT "点击下一步设置安装驱动器。", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 安装"
FONT 9, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "建立(&C)", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "删除(&D)", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "驱动器(&r)", IDC_DEVICEDRIVER, 174, 122, 50, 15, WS_DISABLED
PUSHBUTTON "高级选项(&A)...", IDC_PARTMOREOPTS, 230, 122, 80, 15
LTEXT "点击下一步检查安装概要。", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "建立分区"
FONT 9, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "建立并格式化分区", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "大小:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "GB", IDC_UNIT, 117, 24, 14, 9
LTEXT "文件系统:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "确定(&O)", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "取消(&C)", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "高级分区设置"
FONT 9, "MS Shell Dlg"
BEGIN
CONTROL "安装文件夹", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "引导器程序安装", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "安装引导程序到硬盘 (MBR 和 VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "安装引导程序到硬盘 (仅 VBR)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "不安装引导程序", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "确定(&O)", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "取消(&C)", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 安装"
FONT 9, "MS Shell Dlg"
BEGIN
LTEXT "点击下一步开始安装过程。", IDC_STATIC, 7, 180, 303, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 安装"
FONT 9, "MS Shell Dlg"
BEGIN
LTEXT "安装文件...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 安装完成"
FONT 9, "MS Shell Dlg"
BEGIN
LTEXT "您成功完成 ReactOS 第一阶段安装过程。", IDC_STATIC, 20, 50, 277, 10
LTEXT "点击完成后,您的电脑将会重新启动。", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "请从光盘驱动器取出任何光盘。然后,点击完成重启您的电脑。", IDC_STATIC, 10, 180, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "ReactOS 安装"
IDS_TYPESUBTITLE "选择安装类型。"
IDS_DEVICETITLE "设置基本设备。"
IDS_DEVICESUBTITLE "指定显示和键盘设置。"
IDS_DRIVETITLE "设置安装分区和系统文件夹"
IDS_DRIVESUBTITLE "设置安装分区,系统文件夹和引导程序。"
IDS_PROCESSTITLE "设置分区,复制文件并安装系统"
IDS_PROCESSSUBTITLE "建立并格式化分区,复制文件,安装并设置引导程序"
IDS_RESTARTTITLE "第一阶段安装完成"
IDS_RESTARTSUBTITLE "第一阶段安装已经完成,重新启动进行第二阶段安装"
IDS_SUMMARYTITLE "安装概要"
IDS_SUMMARYSUBTITLE "正是安装前列出安装属性以供检查"
IDS_ABORTSETUP "ReactOS 未在您的电脑上安装完成。如果您现在退出安装程序,您需要在一次运行安装程序来安装 ReactOS。 确定退出?"
IDS_ABORTSETUP2 "终止安装?"
IDS_NO_TXTSETUP_SIF "无法找到 'txtsetup.sif'\n安装程序无法继续。"
IDS_CAPTION "ReactOS 安装"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "名称"
IDS_PARTITION_SIZE "大小"
IDS_PARTITION_TYPE "类型"
END

View file

@ -0,0 +1,139 @@
/* Traditional Chinese translation by Henry Tang Ih 2016 (henrytang2@hotmail.com) */
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL
IDD_STARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 安裝"
FONT 9, "MS Shell Dlg"
BEGIN
LTEXT "歡迎使用 ReactOS 安裝嚮導。", IDC_STARTTITLE, 115, 8, 195, 24
LTEXT "您不能直接從此CD安裝 ReactOS 請重新啟動並從CD引導您的電腦以便安裝 ReactOS。", IDC_STATIC, 115, 40, 195, 100
LTEXT "點選完成退出安裝。", IDC_STATIC, 115, 169, 195, 17
END
IDD_TYPEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 安裝"
FONT 9, "MS Shell Dlg"
BEGIN
AUTORADIOBUTTON "安裝 ReactOS", IDC_INSTALL, 7, 7, 277, 10
LTEXT "安裝 ReactOS 的新副本。此選項沒有儲存你的檔案、 設定和程式。你可以對磁碟和分區進行更改。", IDC_INSTALLTEXT, 18, 18, 269, 25
AUTORADIOBUTTON "修復或更新已安裝的 ReactOS", IDC_UPDATE, 7, 50, 277, 10
LTEXT "更新或修復 ReactOS 安裝的副本。此選項會儲存您的檔案、 設定和程式。如果 ReactOS 已經安裝在此計算機上, 此選項才能使用的。", IDC_UPDATETEXT, 18, 61, 269, 30
LTEXT "點選下一步安裝裝置。", IDC_STATIC, 7, 128, 297, 8
END
IDD_DEVICEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 安裝"
FONT 9, "MS Shell Dlg"
BEGIN
LTEXT "計算機:", IDC_STATIC, 20, 15, 80, 10
CONTROL "", IDC_COMPUTER, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 15, 180, 80
LTEXT "顯示:", IDC_STATIC, 20, 35, 80, 10
CONTROL "", IDC_DISPLAY, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 35, 180, 80
LTEXT "鍵盤:", IDC_STATIC, 20, 55, 80, 10
CONTROL "", IDC_KEYBOARD, "ComboBox", WS_VSCROLL | WS_TABSTOP | CBS_DROPDOWNLIST, 100, 55, 180, 80
LTEXT "點選下一步設定安裝驅動器。", IDC_STATIC, 7, 128, 297, 8
END
IDD_DRIVEPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 安裝"
FONT 9, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_PARTITION, "SysListView32", WS_BORDER | WS_VISIBLE | WS_TABSTOP | LVS_REPORT | LVS_SINGLESEL, 7, 7, 303, 112
PUSHBUTTON "建立(&C)", IDC_PARTCREATE, 7, 122, 50, 15
PUSHBUTTON "刪除(&D)", IDC_PARTDELETE, 63, 122, 50, 15
PUSHBUTTON "驅動器(&r)", IDC_DEVICEDRIVER, 174, 122, 50, 15, WS_DISABLED
PUSHBUTTON "高階選項(&A)...", IDC_PARTMOREOPTS, 230, 122, 80, 15
LTEXT "點選下一步檢查安裝概要。", IDC_STATIC, 10, 180, 277, 20
END
IDD_PARTITION DIALOGEX 0, 0, 145, 90
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "建立分區"
FONT 9, "MS Shell Dlg"
BEGIN
CONTROL "", IDC_UPDOWN1, "msctls_updown32", WS_VISIBLE, 104, 22, 9, 13
CONTROL "建立並格式化分區", IDC_STATIC, "Button", BS_GROUPBOX, 7, 5, 129, 57
LTEXT "大小:", IDC_STATIC, 13, 24, 27, 9
EDITTEXT IDC_PARTSIZE, 58, 22, 47, 13, WS_VISIBLE | WS_TABSTOP
LTEXT "GB", IDC_UNIT, 117, 24, 14, 9
LTEXT "檔案系統:", IDC_STATIC, 13, 46, 42, 9
CONTROL "", IDC_FSTYPE, "ComboBox", WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST, 58, 42, 73, 50
PUSHBUTTON "確定(&O)", IDOK, 35, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
PUSHBUTTON "取消(&C)", IDCANCEL, 87, 68, 47, 15, WS_VISIBLE | WS_TABSTOP
END
IDD_BOOTOPTIONS DIALOGEX 0, 0, 305, 116
STYLE DS_SHELLFONT | WS_VISIBLE | WS_CAPTION
CAPTION "高階分區設定"
FONT 9, "MS Shell Dlg"
BEGIN
CONTROL "安裝資料夾", IDC_STATIC, "Button", BS_GROUPBOX, 4, 1, 298, 30
EDITTEXT IDC_PATH, 10, 11, 278, 13, WS_VISIBLE
CONTROL "引導器程式安裝", IDC_STATIC, "Button", BS_GROUPBOX, 4, 36, 298, 52
CONTROL "安裝載入程式到硬碟 (MBR 和 VBR)", IDC_INSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 46, 278, 11
CONTROL "安裝載入程式到硬碟 (僅 VBR)", IDC_INSTVBRONLY, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP, 10, 57, 278, 11
CONTROL "不安裝載入程式", IDC_NOINSTFREELDR, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_DISABLED, 10, 68, 278, 11
PUSHBUTTON "確定(&O)", IDOK, 180, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
PUSHBUTTON "取消(&C)", IDCANCEL, 240, 94, 50, 15, WS_TABSTOP | WS_VISIBLE
END
IDD_SUMMARYPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 安裝"
FONT 9, "MS Shell Dlg"
BEGIN
LTEXT "點選下一步開始安裝過程。", IDC_STATIC, 7, 180, 303, 20
END
IDD_PROCESSPAGE DIALOGEX 0, 0, 317, 143
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 安裝"
FONT 9, "MS Shell Dlg"
BEGIN
LTEXT "安裝檔案...", IDC_ACTIVITY, 20, 50, 277, 10
LTEXT "test.txt", IDC_ITEM, 30, 80, 257, 10
CONTROL "", IDC_PROCESSPROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
END
IDD_RESTARTPAGE DIALOGEX 0, 0, 317, 193
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 安裝完成"
FONT 9, "MS Shell Dlg"
BEGIN
LTEXT "您成功完成 ReactOS 第一階段安裝過程。", IDC_STATIC, 20, 50, 277, 10
LTEXT "點選完成後,您的電腦將會重新啟動。", IDC_STATIC, 20, 80, 277, 10
CONTROL "", IDC_RESTART_PROGRESS, "msctls_progress32", PBS_SMOOTH | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 120, 277, 8
LTEXT "請從光碟驅動器取出任何光碟。然後,點選完成重啟您的電腦。", IDC_STATIC, 10, 180, 297, 20
END
STRINGTABLE
BEGIN
IDS_TYPETITLE "ReactOS 安裝"
IDS_TYPESUBTITLE "選擇安裝類型。"
IDS_DEVICETITLE "設定基本裝置。"
IDS_DEVICESUBTITLE "指定顯示和鍵盤設定。"
IDS_DRIVETITLE "設定安裝分區和系統資料夾"
IDS_DRIVESUBTITLE "設定安裝分區,系統資料夾和載入程式。"
IDS_PROCESSTITLE "設定分區,複製檔案並安裝系統"
IDS_PROCESSSUBTITLE "建立並格式化分區,複製檔案,安裝並設定載入程式"
IDS_RESTARTTITLE "第一階段安裝完成"
IDS_RESTARTSUBTITLE "第一階段安裝已經完成,重新啟動進行第二階段安裝"
IDS_SUMMARYTITLE "安裝概要"
IDS_SUMMARYSUBTITLE "正是安裝前列出安裝屬性以供檢查"
IDS_ABORTSETUP "ReactOS 未在您的電腦上安裝完成。如果您現在退出安裝程式,您需要在一次運行安裝程式來安裝 ReactOS。 確定退出?"
IDS_ABORTSETUP2 "終止安裝?"
IDS_NO_TXTSETUP_SIF "無法找到 'txtsetup.sif'\n安裝程式無法繼續。"
IDS_CAPTION "ReactOS 安裝"
END
STRINGTABLE
BEGIN
IDS_PARTITION_NAME "名稱"
IDS_PARTITION_SIZE "大小"
IDS_PARTITION_TYPE "類型"
END

View file

@ -0,0 +1,926 @@
/*
* ReactOS applications
* Copyright (C) 2004-2008 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS GUI first stage setup application
* FILE: base/setup/reactos/reactos.c
* PROGRAMMERS: Eric Kohl
* Matthias Kupfer
* Dmitry Chapyshev (dmitry@reactos.org)
*/
#include "reactos.h"
#include "resource.h"
/* GLOBALS ******************************************************************/
LONG LoadGenentry(HINF hinf,PCTSTR name,PGENENTRY *gen,PINFCONTEXT context);
/* FUNCTIONS ****************************************************************/
static VOID
CenterWindow(HWND hWnd)
{
HWND hWndParent;
RECT rcParent;
RECT rcWindow;
hWndParent = GetParent(hWnd);
if (hWndParent == NULL)
hWndParent = GetDesktopWindow();
GetWindowRect(hWndParent, &rcParent);
GetWindowRect(hWnd, &rcWindow);
SetWindowPos(hWnd,
HWND_TOP,
((rcParent.right - rcParent.left) - (rcWindow.right - rcWindow.left)) / 2,
((rcParent.bottom - rcParent.top) - (rcWindow.bottom - rcWindow.top)) / 2,
0,
0,
SWP_NOSIZE);
}
static HFONT
CreateTitleFont(VOID)
{
NONCLIENTMETRICS ncm;
LOGFONT LogFont;
HDC hdc;
INT FontSize;
HFONT hFont;
ncm.cbSize = sizeof(NONCLIENTMETRICS);
SystemParametersInfo(SPI_GETNONCLIENTMETRICS, 0, &ncm, 0);
LogFont = ncm.lfMessageFont;
LogFont.lfWeight = FW_BOLD;
_tcscpy(LogFont.lfFaceName, _T("MS Shell Dlg"));
hdc = GetDC(NULL);
FontSize = 12;
LogFont.lfHeight = 0 - GetDeviceCaps (hdc, LOGPIXELSY) * FontSize / 72;
hFont = CreateFontIndirect(&LogFont);
ReleaseDC(NULL, hdc);
return hFont;
}
static INT_PTR CALLBACK
StartDlgProc(HWND hwndDlg,
UINT uMsg,
WPARAM wParam,
LPARAM lParam)
{
PSETUPDATA pSetupData;
/* Retrieve pointer to the global setup data */
pSetupData = (PSETUPDATA)GetWindowLongPtr (hwndDlg, GWL_USERDATA);
switch (uMsg)
{
case WM_INITDIALOG:
/* Save pointer to the global setup data */
pSetupData = (PSETUPDATA)((LPPROPSHEETPAGE)lParam)->lParam;
SetWindowLongPtr(hwndDlg, GWL_USERDATA, (DWORD_PTR)pSetupData);
/* Center the wizard window */
CenterWindow(GetParent(hwndDlg));
/* Set title font */
SendDlgItemMessage(hwndDlg,
IDC_STARTTITLE,
WM_SETFONT,
(WPARAM)pSetupData->hTitleFont,
(LPARAM)TRUE);
break;
case WM_NOTIFY:
{
LPNMHDR lpnm = (LPNMHDR)lParam;
switch (lpnm->code)
{
case PSN_SETACTIVE:
PropSheet_SetWizButtons(GetParent(hwndDlg), PSWIZB_NEXT);
break;
default:
break;
}
}
break;
default:
break;
}
return FALSE;
}
static INT_PTR CALLBACK
TypeDlgProc(HWND hwndDlg,
UINT uMsg,
WPARAM wParam,
LPARAM lParam)
{
PSETUPDATA pSetupData;
/* Retrieve pointer to the global setup data */
pSetupData = (PSETUPDATA)GetWindowLongPtr (hwndDlg, GWL_USERDATA);
switch (uMsg)
{
case WM_INITDIALOG:
/* Save pointer to the global setup data */
pSetupData = (PSETUPDATA)((LPPROPSHEETPAGE)lParam)->lParam;
SetWindowLongPtr(hwndDlg, GWL_USERDATA, (DWORD_PTR)pSetupData);
/* Check the 'install' radio button */
CheckDlgButton(hwndDlg, IDC_INSTALL, BST_CHECKED);
/* Disable the 'update' radio button and text */
EnableWindow(GetDlgItem(hwndDlg, IDC_UPDATE), FALSE);
EnableWindow(GetDlgItem(hwndDlg, IDC_UPDATETEXT), FALSE);
break;
case WM_NOTIFY:
{
LPNMHDR lpnm = (LPNMHDR)lParam;
switch (lpnm->code)
{
case PSN_SETACTIVE:
PropSheet_SetWizButtons(GetParent(hwndDlg), PSWIZB_NEXT | PSWIZB_BACK);
break;
case PSN_QUERYCANCEL:
SetWindowLongPtr(hwndDlg,
DWL_MSGRESULT,
MessageBox(GetParent(hwndDlg),
pSetupData->szAbortMessage,
pSetupData->szAbortTitle,
MB_YESNO | MB_ICONQUESTION) != IDYES);
return TRUE;
case PSN_WIZNEXT: // set the selected data
pSetupData->RepairUpdateFlag = !(SendMessage(GetDlgItem(hwndDlg, IDC_INSTALL),
BM_GETCHECK,
(WPARAM) 0,
(LPARAM) 0) == BST_CHECKED);
return TRUE;
default:
break;
}
}
break;
default:
break;
}
return FALSE;
}
static INT_PTR CALLBACK
DeviceDlgProc(HWND hwndDlg,
UINT uMsg,
WPARAM wParam,
LPARAM lParam)
{
PSETUPDATA pSetupData;
LONG i;
LRESULT tindex;
HWND hList;
/* Retrieve pointer to the global setup data */
pSetupData = (PSETUPDATA)GetWindowLongPtr (hwndDlg, GWL_USERDATA);
switch (uMsg)
{
case WM_INITDIALOG:
/* Save pointer to the global setup data */
pSetupData = (PSETUPDATA)((LPPROPSHEETPAGE)lParam)->lParam;
SetWindowLongPtr(hwndDlg, GWL_USERDATA, (DWORD_PTR)pSetupData);
hList = GetDlgItem(hwndDlg, IDC_COMPUTER);
for (i=0; i < pSetupData->CompCount; i++)
{
tindex = SendMessage(hList, CB_ADDSTRING, (WPARAM) 0, (LPARAM) pSetupData->pComputers[i].Value);
SendMessage(hList, CB_SETITEMDATA, tindex, i);
}
SendMessage(hList, CB_SETCURSEL, 0, 0); // set first as default
hList = GetDlgItem(hwndDlg, IDC_DISPLAY);
for (i=0; i < pSetupData->DispCount; i++)
{
tindex = SendMessage(hList, CB_ADDSTRING, (WPARAM) 0, (LPARAM) pSetupData->pDisplays[i].Value);
SendMessage(hList, CB_SETITEMDATA, tindex, i);
}
SendMessage(hList, CB_SETCURSEL, 0, 0); // set first as default
hList = GetDlgItem(hwndDlg, IDC_KEYBOARD);
for (i=0; i < pSetupData->KeybCount; i++)
{
tindex = SendMessage(hList,CB_ADDSTRING,(WPARAM)0,(LPARAM)pSetupData->pKeyboards[i].Value);
SendMessage(hList,CB_SETITEMDATA,tindex,i);
}
SendMessage(hList,CB_SETCURSEL,0,0); // set first as default
break;
case WM_NOTIFY:
{
LPNMHDR lpnm = (LPNMHDR)lParam;
switch (lpnm->code)
{
case PSN_SETACTIVE:
PropSheet_SetWizButtons(GetParent(hwndDlg), PSWIZB_NEXT | PSWIZB_BACK);
break;
case PSN_QUERYCANCEL:
SetWindowLongPtr(hwndDlg,
DWL_MSGRESULT,
MessageBox(GetParent(hwndDlg),
pSetupData->szAbortMessage,
pSetupData->szAbortTitle,
MB_YESNO | MB_ICONQUESTION) != IDYES);
return TRUE;
case PSN_WIZNEXT: // set the selected data
{
hList = GetDlgItem(hwndDlg, IDC_COMPUTER);
tindex = SendMessage(hList, CB_GETCURSEL, (WPARAM) 0, (LPARAM) 0);
if (tindex != CB_ERR)
{
pSetupData->SelectedComputer = SendMessage(hList,
CB_GETITEMDATA,
(WPARAM) tindex,
(LPARAM) 0);
}
hList = GetDlgItem(hwndDlg, IDC_DISPLAY);
tindex = SendMessage(hList, CB_GETCURSEL, (WPARAM) 0, (LPARAM) 0);
if (tindex != CB_ERR)
{
pSetupData->SelectedDisplay = SendMessage(hList,
CB_GETITEMDATA,
(WPARAM) tindex,
(LPARAM) 0);
}
hList =GetDlgItem(hwndDlg, IDC_KEYBOARD);
tindex = SendMessage(hList, CB_GETCURSEL, (WPARAM) 0, (LPARAM) 0);
if (tindex != CB_ERR)
{
pSetupData->SelectedKeyboard = SendMessage(hList,
CB_GETITEMDATA,
(WPARAM) tindex,
(LPARAM) 0);
}
return TRUE;
}
default:
break;
}
}
break;
default:
break;
}
return FALSE;
}
static INT_PTR CALLBACK
SummaryDlgProc(HWND hwndDlg,
UINT uMsg,
WPARAM wParam,
LPARAM lParam)
{
PSETUPDATA pSetupData;
/* Retrieve pointer to the global setup data */
pSetupData = (PSETUPDATA)GetWindowLongPtr (hwndDlg, GWL_USERDATA);
switch (uMsg)
{
case WM_INITDIALOG:
/* Save pointer to the global setup data */
pSetupData = (PSETUPDATA)((LPPROPSHEETPAGE)lParam)->lParam;
SetWindowLongPtr(hwndDlg, GWL_USERDATA, (DWORD_PTR)pSetupData);
break;
case WM_NOTIFY:
{
LPNMHDR lpnm = (LPNMHDR)lParam;
switch (lpnm->code)
{
case PSN_SETACTIVE:
PropSheet_SetWizButtons(GetParent(hwndDlg), PSWIZB_NEXT | PSWIZB_BACK);
break;
case PSN_QUERYCANCEL:
SetWindowLongPtr(hwndDlg,
DWL_MSGRESULT,
MessageBox(GetParent(hwndDlg),
pSetupData->szAbortMessage,
pSetupData->szAbortTitle,
MB_YESNO | MB_ICONQUESTION) != IDYES);
return TRUE;
default:
break;
}
}
break;
default:
break;
}
return FALSE;
}
static INT_PTR CALLBACK
ProcessDlgProc(HWND hwndDlg,
UINT uMsg,
WPARAM wParam,
LPARAM lParam)
{
PSETUPDATA pSetupData;
/* Retrieve pointer to the global setup data */
pSetupData = (PSETUPDATA)GetWindowLongPtr (hwndDlg, GWL_USERDATA);
switch (uMsg)
{
case WM_INITDIALOG:
/* Save pointer to the global setup data */
pSetupData = (PSETUPDATA)((LPPROPSHEETPAGE)lParam)->lParam;
SetWindowLongPtr(hwndDlg, GWL_USERDATA, (DWORD_PTR)pSetupData);
break;
case WM_NOTIFY:
{
LPNMHDR lpnm = (LPNMHDR)lParam;
switch (lpnm->code)
{
case PSN_SETACTIVE:
PropSheet_SetWizButtons(GetParent(hwndDlg), PSWIZB_NEXT);
// disable all buttons during installation process
// PropSheet_SetWizButtons(GetParent(hwndDlg), 0 );
break;
case PSN_QUERYCANCEL:
SetWindowLongPtr(hwndDlg,
DWL_MSGRESULT,
MessageBox(GetParent(hwndDlg),
pSetupData->szAbortMessage,
pSetupData->szAbortTitle,
MB_YESNO | MB_ICONQUESTION) != IDYES);
return TRUE;
default:
break;
}
}
break;
default:
break;
}
return FALSE;
}
static INT_PTR CALLBACK
RestartDlgProc(HWND hwndDlg,
UINT uMsg,
WPARAM wParam,
LPARAM lParam)
{
PSETUPDATA pSetupData;
/* Retrieve pointer to the global setup data */
pSetupData = (PSETUPDATA)GetWindowLongPtr (hwndDlg, GWL_USERDATA);
switch (uMsg)
{
case WM_INITDIALOG:
/* Save pointer to the global setup data */
pSetupData = (PSETUPDATA)((LPPROPSHEETPAGE)lParam)->lParam;
SetWindowLongPtr(hwndDlg, GWL_USERDATA, (DWORD_PTR)pSetupData);
/* Set title font */
/*SendDlgItemMessage(hwndDlg,
IDC_STARTTITLE,
WM_SETFONT,
(WPARAM)hTitleFont,
(LPARAM)TRUE);*/
break;
case WM_TIMER:
{
INT Position;
HWND hWndProgress;
hWndProgress = GetDlgItem(hwndDlg, IDC_RESTART_PROGRESS);
Position = SendMessage(hWndProgress, PBM_GETPOS, 0, 0);
if (Position == 300)
{
KillTimer(hwndDlg, 1);
PropSheet_PressButton(GetParent(hwndDlg), PSBTN_FINISH);
}
else
{
SendMessage(hWndProgress, PBM_SETPOS, Position + 1, 0);
}
return TRUE;
}
case WM_DESTROY:
return TRUE;
case WM_NOTIFY:
{
LPNMHDR lpnm = (LPNMHDR)lParam;
switch (lpnm->code)
{
case PSN_SETACTIVE: // Only "Finish" for closing the App
PropSheet_SetWizButtons(GetParent(hwndDlg), PSWIZB_FINISH);
SendDlgItemMessage(hwndDlg, IDC_RESTART_PROGRESS, PBM_SETRANGE, 0, MAKELPARAM(0, 300));
SendDlgItemMessage(hwndDlg, IDC_RESTART_PROGRESS, PBM_SETPOS, 0, 0);
SetTimer(hwndDlg, 1, 50, NULL);
break;
default:
break;
}
}
break;
default:
break;
}
return FALSE;
}
BOOL LoadSetupData(
PSETUPDATA pSetupData)
{
WCHAR szPath[MAX_PATH];
TCHAR tmp[10];
WCHAR *ch;
HINF hTxtsetupSif = INVALID_HANDLE_VALUE;
INFCONTEXT InfContext;
//TCHAR szValue[MAX_PATH];
DWORD LineLength;
LONG Count;
BOOL ret = TRUE;
GetModuleFileNameW(NULL,szPath,MAX_PATH);
ch = strrchrW(szPath,L'\\');
if (ch != NULL)
*ch = L'\0';
wcscat(szPath, L"\\txtsetup.sif");
hTxtsetupSif = SetupOpenInfFileW(szPath, NULL, INF_STYLE_OLDNT, NULL);
if (hTxtsetupSif == INVALID_HANDLE_VALUE)
{
TCHAR message[512], caption[64];
// txtsetup.sif cannot be found
LoadString(pSetupData->hInstance, IDS_NO_TXTSETUP_SIF, message, sizeof(message)/sizeof(TCHAR));
LoadString(pSetupData->hInstance, IDS_CAPTION, caption, sizeof(caption)/sizeof(TCHAR));
MessageBox(NULL, message, caption, MB_OK | MB_ICONERROR);
return FALSE;
}
// get language list
pSetupData->LangCount = SetupGetLineCount(hTxtsetupSif, _T("Language"));
if (pSetupData->LangCount > 0)
{
pSetupData->pLanguages = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(LANG) * pSetupData->LangCount);
if (pSetupData->pLanguages == NULL)
{
ret = FALSE;
goto done;
}
Count = 0;
if (SetupFindFirstLine(hTxtsetupSif, _T("Language"), NULL, &InfContext))
{
do
{
SetupGetStringField(&InfContext,
0,
pSetupData->pLanguages[Count].LangId,
sizeof(pSetupData->pLanguages[Count].LangId) / sizeof(TCHAR),
&LineLength);
SetupGetStringField(&InfContext,
1,
pSetupData->pLanguages[Count].LangName,
sizeof(pSetupData->pLanguages[Count].LangName) / sizeof(TCHAR),
&LineLength);
++Count;
}
while (SetupFindNextLine(&InfContext, &InfContext) && Count < pSetupData->LangCount);
}
}
// get keyboard layout list
pSetupData->KbLayoutCount = SetupGetLineCount(hTxtsetupSif, _T("KeyboardLayout"));
if (pSetupData->KbLayoutCount > 0)
{
pSetupData->pKbLayouts = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(KBLAYOUT) * pSetupData->KbLayoutCount);
if (pSetupData->pKbLayouts == NULL)
{
ret = FALSE;
goto done;
}
Count = 0;
if (SetupFindFirstLine(hTxtsetupSif, _T("KeyboardLayout"), NULL, &InfContext))
{
do
{
SetupGetStringField(&InfContext,
0,
pSetupData->pKbLayouts[Count].LayoutId,
sizeof(pSetupData->pKbLayouts[Count].LayoutId) / sizeof(TCHAR),
&LineLength);
SetupGetStringField(&InfContext,
1,
pSetupData->pKbLayouts[Count].LayoutName,
sizeof(pSetupData->pKbLayouts[Count].LayoutName) / sizeof(TCHAR),
&LineLength);
++Count;
}
while (SetupFindNextLine(&InfContext, &InfContext) && Count < pSetupData->KbLayoutCount);
}
}
// get default for keyboard and language
pSetupData->DefaultKBLayout = -1;
pSetupData->DefaultLang = -1;
// TODO: get defaults from underlaying running system
if (SetupFindFirstLine(hTxtsetupSif, _T("NLS"), _T("DefaultLayout"), &InfContext))
{
SetupGetStringField(&InfContext, 1, tmp, sizeof(tmp) / sizeof(TCHAR), &LineLength);
for (Count = 0; Count < pSetupData->KbLayoutCount; Count++)
{
if (_tcscmp(tmp, pSetupData->pKbLayouts[Count].LayoutId) == 0)
{
pSetupData->DefaultKBLayout = Count;
break;
}
}
}
if (SetupFindFirstLine(hTxtsetupSif, _T("NLS"), _T("DefaultLanguage"), &InfContext))
{
SetupGetStringField(&InfContext, 1, tmp, sizeof(tmp) / sizeof(TCHAR), &LineLength);
for (Count = 0; Count < pSetupData->LangCount; Count++)
{
if (_tcscmp(tmp, pSetupData->pLanguages[Count].LangId) == 0)
{
pSetupData->DefaultLang = Count;
break;
}
}
}
// get computers list
pSetupData->CompCount = LoadGenentry(hTxtsetupSif,_T("Computer"),&pSetupData->pComputers,&InfContext);
// get display list
pSetupData->DispCount = LoadGenentry(hTxtsetupSif,_T("Display"),&pSetupData->pDisplays,&InfContext);
// get keyboard list
pSetupData->KeybCount = LoadGenentry(hTxtsetupSif, _T("Keyboard"),&pSetupData->pKeyboards,&InfContext);
// get install directory
if (SetupFindFirstLine(hTxtsetupSif, _T("SetupData"), _T("DefaultPath"), &InfContext))
{
SetupGetStringField(&InfContext,
1,
pSetupData->InstallDir,
sizeof(pSetupData->InstallDir) / sizeof(TCHAR),
&LineLength);
}
done:
if (ret == FALSE)
{
if (pSetupData->pKbLayouts != NULL)
{
HeapFree(GetProcessHeap(), 0, pSetupData->pKbLayouts);
pSetupData->pKbLayouts = NULL;
}
if (pSetupData->pLanguages != NULL)
{
HeapFree(GetProcessHeap(), 0, pSetupData->pLanguages);
pSetupData->pLanguages = NULL;
}
}
if (hTxtsetupSif != INVALID_HANDLE_VALUE)
SetupCloseInfFile(hTxtsetupSif);
return ret;
}
LONG LoadGenentry(HINF hinf,PCTSTR name,PGENENTRY *gen,PINFCONTEXT context)
{
LONG TotalCount;
DWORD LineLength;
TotalCount = SetupGetLineCount(hinf, name);
if (TotalCount > 0)
{
*gen = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(GENENTRY) * TotalCount);
if (*gen != NULL)
{
if (SetupFindFirstLine(hinf, name, NULL, context))
{
LONG Count = 0;
do
{
SetupGetStringField(context,
0,
(*gen)[Count].Id,
sizeof((*gen)[Count].Id) / sizeof(TCHAR),
&LineLength);
SetupGetStringField(context,
1,
(*gen)[Count].Value,
sizeof((*gen)[Count].Value) / sizeof(TCHAR),
&LineLength);
++Count;
}
while (SetupFindNextLine(context, context) && Count < TotalCount);
}
}
else return 0;
}
return TotalCount;
}
BOOL isUnattendSetup(VOID)
{
WCHAR szPath[MAX_PATH];
WCHAR *ch;
HINF hUnattendedInf;
INFCONTEXT InfContext;
TCHAR szValue[MAX_PATH];
DWORD LineLength;
//HKEY hKey;
BOOL result = 0;
GetModuleFileNameW(NULL, szPath, MAX_PATH);
ch = strrchrW(szPath, L'\\');
if (ch != NULL)
*ch = L'\0';
wcscat(szPath, L"\\unattend.inf");
hUnattendedInf = SetupOpenInfFileW(szPath, NULL, INF_STYLE_OLDNT, NULL);
if (hUnattendedInf != INVALID_HANDLE_VALUE)
{
if (SetupFindFirstLine(hUnattendedInf, _T("Unattend"), _T("UnattendSetupEnabled"),&InfContext))
{
if (SetupGetStringField(&InfContext,
1,
szValue,
sizeof(szValue) / sizeof(TCHAR),
&LineLength) && (_tcsicmp(szValue, _T("yes")) == 0))
{
result = 1; // unattendSetup enabled
// read values and store in SetupData
}
}
SetupCloseInfFile(hUnattendedInf);
}
return result;
}
#if 0
static
VOID
EnableShutdownPrivilege(VOID)
{
HANDLE hToken = NULL;
TOKEN_PRIVILEGES Privileges;
/* Get shutdown privilege */
if (!OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES, &hToken))
{
// FatalError("OpenProcessToken() failed!");
return;
}
if (!LookupPrivilegeValue(NULL,
SE_SHUTDOWN_NAME,
&Privileges.Privileges[0].Luid))
{
// FatalError("LookupPrivilegeValue() failed!");
goto done;
}
Privileges.PrivilegeCount = 1;
Privileges.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
if (AdjustTokenPrivileges(hToken,
FALSE,
&Privileges,
0,
(PTOKEN_PRIVILEGES)NULL,
NULL) == 0)
{
// FatalError("AdjustTokenPrivileges() failed!");
goto done;
}
done:
if (hToken != NULL)
CloseHandle(hToken);
return;
}
#endif
int WINAPI
_tWinMain(HINSTANCE hInst,
HINSTANCE hPrevInstance,
LPTSTR lpszCmdLine,
int nCmdShow)
{
PSETUPDATA pSetupData = NULL;
PROPSHEETHEADER psh;
HPROPSHEETPAGE ahpsp[8];
PROPSHEETPAGE psp = {0};
UINT nPages = 0;
pSetupData = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(SETUPDATA));
if (pSetupData == NULL)
{
return 1;
}
pSetupData->hInstance = hInst;
pSetupData->bUnattend = isUnattendSetup();
LoadString(hInst,IDS_ABORTSETUP, pSetupData->szAbortMessage, sizeof(pSetupData->szAbortMessage)/sizeof(TCHAR));
LoadString(hInst,IDS_ABORTSETUP2, pSetupData->szAbortTitle, sizeof(pSetupData->szAbortTitle)/sizeof(TCHAR));
/* Create title font */
pSetupData->hTitleFont = CreateTitleFont();
if (!pSetupData->bUnattend)
{
if (!LoadSetupData(pSetupData))
{
HeapFree(GetProcessHeap(), 0, pSetupData);
return 0;
}
/* Create the Start page, until setup is working */
psp.dwSize = sizeof(PROPSHEETPAGE);
psp.dwFlags = PSP_DEFAULT | PSP_HIDEHEADER;
psp.hInstance = hInst;
psp.lParam = (LPARAM)pSetupData;
psp.pfnDlgProc = StartDlgProc;
psp.pszTemplate = MAKEINTRESOURCE(IDD_STARTPAGE);
ahpsp[nPages++] = CreatePropertySheetPage(&psp);
/* Create install type selection page */
psp.dwSize = sizeof(PROPSHEETPAGE);
psp.dwFlags = PSP_DEFAULT | PSP_USEHEADERTITLE | PSP_USEHEADERSUBTITLE;
psp.pszHeaderTitle = MAKEINTRESOURCE(IDS_TYPETITLE);
psp.pszHeaderSubTitle = MAKEINTRESOURCE(IDS_TYPESUBTITLE);
psp.hInstance = hInst;
psp.lParam = (LPARAM)pSetupData;
psp.pfnDlgProc = TypeDlgProc;
psp.pszTemplate = MAKEINTRESOURCE(IDD_TYPEPAGE);
ahpsp[nPages++] = CreatePropertySheetPage(&psp);
/* Create device settings page */
psp.dwSize = sizeof(PROPSHEETPAGE);
psp.dwFlags = PSP_DEFAULT | PSP_USEHEADERTITLE | PSP_USEHEADERSUBTITLE;
psp.pszHeaderTitle = MAKEINTRESOURCE(IDS_DEVICETITLE);
psp.pszHeaderSubTitle = MAKEINTRESOURCE(IDS_DEVICESUBTITLE);
psp.hInstance = hInst;
psp.lParam = (LPARAM)pSetupData;
psp.pfnDlgProc = DeviceDlgProc;
psp.pszTemplate = MAKEINTRESOURCE(IDD_DEVICEPAGE);
ahpsp[nPages++] = CreatePropertySheetPage(&psp);
/* Create install device settings page / boot method / install directory */
psp.dwSize = sizeof(PROPSHEETPAGE);
psp.dwFlags = PSP_DEFAULT | PSP_USEHEADERTITLE | PSP_USEHEADERSUBTITLE;
psp.pszHeaderTitle = MAKEINTRESOURCE(IDS_DRIVETITLE);
psp.pszHeaderSubTitle = MAKEINTRESOURCE(IDS_DRIVESUBTITLE);
psp.hInstance = hInst;
psp.lParam = (LPARAM)pSetupData;
psp.pfnDlgProc = DriveDlgProc;
psp.pszTemplate = MAKEINTRESOURCE(IDD_DRIVEPAGE);
ahpsp[nPages++] = CreatePropertySheetPage(&psp);
/* Create summary page */
psp.dwSize = sizeof(PROPSHEETPAGE);
psp.dwFlags = PSP_DEFAULT | PSP_USEHEADERTITLE | PSP_USEHEADERSUBTITLE;
psp.pszHeaderTitle = MAKEINTRESOURCE(IDS_SUMMARYTITLE);
psp.pszHeaderSubTitle = MAKEINTRESOURCE(IDS_SUMMARYSUBTITLE);
psp.hInstance = hInst;
psp.lParam = (LPARAM)pSetupData;
psp.pfnDlgProc = SummaryDlgProc;
psp.pszTemplate = MAKEINTRESOURCE(IDD_SUMMARYPAGE);
ahpsp[nPages++] = CreatePropertySheetPage(&psp);
}
/* Create installation progress page */
psp.dwSize = sizeof(PROPSHEETPAGE);
psp.dwFlags = PSP_DEFAULT | PSP_USEHEADERTITLE | PSP_USEHEADERSUBTITLE;
psp.pszHeaderTitle = MAKEINTRESOURCE(IDS_PROCESSTITLE);
psp.pszHeaderSubTitle = MAKEINTRESOURCE(IDS_PROCESSSUBTITLE);
psp.hInstance = hInst;
psp.lParam = (LPARAM)pSetupData;
psp.pfnDlgProc = ProcessDlgProc;
psp.pszTemplate = MAKEINTRESOURCE(IDD_PROCESSPAGE);
ahpsp[nPages++] = CreatePropertySheetPage(&psp);
/* Create finish to reboot page */
psp.dwSize = sizeof(PROPSHEETPAGE);
psp.dwFlags = PSP_DEFAULT | PSP_HIDEHEADER;
psp.hInstance = hInst;
psp.lParam = (LPARAM)pSetupData;
psp.pfnDlgProc = RestartDlgProc;
psp.pszTemplate = MAKEINTRESOURCE(IDD_RESTARTPAGE);
ahpsp[nPages++] = CreatePropertySheetPage(&psp);
/* Create the property sheet */
psh.dwSize = sizeof(PROPSHEETHEADER);
psh.dwFlags = PSH_WIZARD97 | PSH_WATERMARK | PSH_HEADER;
psh.hInstance = hInst;
psh.hwndParent = NULL;
psh.nPages = nPages;
psh.nStartPage = 0;
psh.phpage = ahpsp;
psh.pszbmWatermark = MAKEINTRESOURCE(IDB_WATERMARK);
psh.pszbmHeader = MAKEINTRESOURCE(IDB_HEADER);
/* Display the wizard */
PropertySheet(&psh);
if (pSetupData->hTitleFont)
DeleteObject(pSetupData->hTitleFont);
HeapFree(GetProcessHeap(), 0, pSetupData);
#if 0
EnableShutdownPrivilege();
ExitWindowsEx(EWX_REBOOT, 0);
#endif
return 0;
}
/* EOF */

View file

@ -0,0 +1,124 @@
/*
* ReactOS applications
* Copyright (C) 2004-2008 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS GUI first stage setup application
* FILE: base/setup/reactos/reactos.c
* PROGRAMMERS: Eric Kohl
* Matthias Kupfer
* Dmitry Chapyshev (dmitry@reactos.org)
*/
#ifndef _REACTOS_PCH_
#define _REACTOS_PCH_
#include <stdarg.h>
#include <windef.h>
#include <winbase.h>
#include <winreg.h>
#include <wingdi.h>
#include <winuser.h>
#include <tchar.h>
#include <setupapi.h>
#include <devguid.h>
#include <wine/unicode.h>
typedef struct _LANG
{
TCHAR LangId[9];
TCHAR LangName[128];
} LANG, *PLANG;
typedef struct _KBLAYOUT
{
TCHAR LayoutId[9];
TCHAR LayoutName[128];
TCHAR DllName[128];
} KBLAYOUT, *PKBLAYOUT;
// generic entries with simple 1:1 mapping
typedef struct _GENENTRY
{
TCHAR Id[24];
TCHAR Value[128];
} GENENTRY, *PGENENTRY;
typedef struct _SETUPDATA
{
/* General */
HINSTANCE hInstance;
BOOL bUnattend;
HFONT hTitleFont;
TCHAR szAbortMessage[512];
TCHAR szAbortTitle[64];
// Settings
LONG DestDiskNumber; // physical disk
LONG DestPartNumber; // partition on disk
LONG DestPartSize; // if partition doesn't exist, size of partition
LONG FSType; // file system type on partition
LONG MBRInstallType; // install bootloader
LONG FormatPart; // type of format the partition
LONG SelectedLangId; // selected language (table index)
LONG SelectedKBLayout; // selected keyboard layout (table index)
TCHAR InstallDir[MAX_PATH]; // installation directory on hdd
LONG SelectedComputer; // selected computer type (table index)
LONG SelectedDisplay; // selected display type (table index)
LONG SelectedKeyboard; // selected keyboard type (table index)
BOOLEAN RepairUpdateFlag; // flag for update/repair an installed reactos
// txtsetup.sif data
LONG DefaultLang; // default language (table index)
PLANG pLanguages;
LONG LangCount;
LONG DefaultKBLayout; // default keyboard layout (table index)
PKBLAYOUT pKbLayouts;
LONG KbLayoutCount;
PGENENTRY pComputers;
LONG CompCount;
PGENENTRY pDisplays;
LONG DispCount;
PGENENTRY pKeyboards;
LONG KeybCount;
} SETUPDATA, *PSETUPDATA;
typedef struct _IMGINFO
{
HBITMAP hBitmap;
INT cxSource;
INT cySource;
} IMGINFO, *PIMGINFO;
/* drivepage.c */
INT_PTR
CALLBACK
DriveDlgProc(
HWND hwndDlg,
UINT uMsg,
WPARAM wParam,
LPARAM lParam);
#endif /* _REACTOS_PCH_ */
/* EOP */

View file

@ -0,0 +1,100 @@
#include <windef.h>
#include <winuser.h>
#include <commctrl.h>
#include "resource.h"
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS Setup"
#define REACTOS_STR_INTERNAL_NAME "reactos"
#define REACTOS_STR_ORIGINAL_FILENAME "reactos.exe"
#include <reactos/version.rc>
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
/* Icons */
IDI_MAIN ICON "res/setup.ico"
/* Bitmaps */
IDB_WATERMARK BITMAP "res/watermark.bmp"
IDB_HEADER BITMAP "res/header.bmp"
#include <reactos/manifest_exe.rc>
/* UTF-8 */
#pragma code_page(65001)
#ifdef LANGUAGE_BG_BG
#include "lang/bg-BG.rc"
#endif
#ifdef LANGUAGE_CS_CZ
#include "lang/cs-CZ.rc"
#endif
#ifdef LANGUAGE_DE_DE
#include "lang/de-DE.rc"
#endif
#ifdef LANGUAGE_EL_GR
#include "lang/el-GR.rc"
#endif
#ifdef LANGUAGE_EN_US
#include "lang/en-US.rc"
#endif
#ifdef LANGUAGE_ES_ES
#include "lang/es-ES.rc"
#endif
#ifdef LANGUAGE_ET_EE
#include "lang/et-EE.rc"
#endif
#ifdef LANGUAGE_FI_FI
#include "lang/fi-FI.rc"
#endif
#ifdef LANGUAGE_FR_FR
#include "lang/fr-FR.rc"
#endif
#ifdef LANGUAGE_HE_IL
#include "lang/he-IL.rc"
#endif
#ifdef LANGUAGE_HU_HU
#include "lang/hu-HU.rc"
#endif
#ifdef LANGUAGE_IT_IT
#include "lang/it-IT.rc"
#endif
#ifdef LANGUAGE_JA_JP
#include "lang/ja-JP.rc"
#endif
#ifdef LANGUAGE_MS_MY
#include "lang/ms-MY.rc"
#endif
#ifdef LANGUAGE_NB_NO
#include "lang/no-NO.rc"
#endif
#ifdef LANGUAGE_PL_PL
#include "lang/pl-PL.rc"
#endif
#ifdef LANGUAGE_PT_BR
#include "lang/pt-BR.rc"
#endif
#ifdef LANGUAGE_RO_RO
#include "lang/ro-RO.rc"
#endif
#ifdef LANGUAGE_RU_RU
#include "lang/ru-RU.rc"
#endif
#ifdef LANGUAGE_SK_SK
#include "lang/sk-SK.rc"
#endif
#ifdef LANGUAGE_SQ_AL
#include "lang/sq-AL.rc"
#endif
#ifdef LANGUAGE_TR_TR
#include "lang/tr-TR.rc"
#endif
#ifdef LANGUAGE_UK_UA
#include "lang/uk-UA.rc"
#endif
#ifdef LANGUAGE_ZH_CN
#include "lang/zh-CN.rc"
#endif
#ifdef LANGUAGE_ZH_TW
#include "lang/zh-TW.rc"
#endif

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 65 KiB

View file

@ -0,0 +1,82 @@
#pragma once
/* Bitmaps */
#define IDB_WATERMARK 100
#define IDB_HEADER 101
/* Icons */
#define IDI_MAIN 3000
#define IDC_STATIC -1
/* Dialogs */
#define IDD_STARTPAGE 2000
#define IDC_STARTTITLE 2001
#define IDD_TYPEPAGE 2005
#define IDC_INSTALL 2006
#define IDC_INSTALLTEXT 2007
#define IDC_UPDATE 2008
#define IDC_UPDATETEXT 2009
#define IDD_DEVICEPAGE 2011
#define IDC_COMPUTER 2014
#define IDC_DISPLAY 2015
#define IDC_KEYBOARD 2016
#define IDC_KEYLAYOUT 2017
#define IDD_DRIVEPAGE 2018
#define IDC_PARTITION 2021
#define IDC_PARTCREATE 2022
#define IDC_PARTDELETE 2023
#define IDC_INSTFREELDR 2024
#define IDC_INSTVBRONLY 2025
#define IDC_NOINSTFREELDR 2026
#define IDC_PATH 2027
#define IDD_PROCESSPAGE 2028
#define IDC_ACTIVITY 2031
#define IDC_ITEM 2032
#define IDC_PROCESSPROGRESS 2033
#define IDD_RESTARTPAGE 2034
#define IDC_RESTART_PROGRESS 2038
#define IDC_PARTMOREOPTS 2042
#define IDD_BOOTOPTIONS 2043
#define IDD_PARTITION 2044
#define IDC_UPDOWN1 2045
#define IDC_PARTSIZE 2046
#define IDC_UNIT 2047
#define IDC_FSTYPE 2048
#define IDD_SUMMARYPAGE 2049
#define IDC_DEVICEDRIVER 2052
/* Strings */
#define IDS_TYPETITLE 5007
#define IDS_TYPESUBTITLE 5008
#define IDS_DEVICETITLE 5012
#define IDS_DEVICESUBTITLE 5013
#define IDS_DRIVETITLE 5019
#define IDS_DRIVESUBTITLE 5020
#define IDS_PROCESSTITLE 5029
#define IDS_PROCESSSUBTITLE 5030
#define IDS_RESTARTTITLE 5035
#define IDS_RESTARTSUBTITLE 5036
#define IDS_ABORTSETUP 5039
#define IDS_ABORTSETUP2 5040
#define IDS_SUMMARYTITLE 5050
#define IDS_SUMMARYSUBTITLE 5051
#define IDS_NO_TXTSETUP_SIF 5053
#define IDS_CAPTION 5054
#define IDS_PARTITION_NAME 5200
#define IDS_PARTITION_SIZE 5201
#define IDS_PARTITION_TYPE 5202
#define IDS_LIST_COLUMN_FIRST IDS_PARTITION_NAME
#define IDS_LIST_COLUMN_LAST IDS_PARTITION_TYPE

View file

@ -0,0 +1,5 @@
add_executable(setup setup.c setup.rc)
set_module_type(setup win32gui UNICODE ENTRYPOINT wmainCRTStartup)
add_importlibs(setup userenv msvcrt kernel32 ntdll)
add_cd_file(TARGET setup DESTINATION reactos/system32 FOR all)

85
base/setup/setup/setup.c Normal file
View file

@ -0,0 +1,85 @@
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS GUI/console setup
* FILE: base/setup/setup/setup.c
* PURPOSE: Second stage setup
* PROGRAMMER: Eric Kohl
*/
#include <stdarg.h>
#include <windef.h>
#include <winbase.h>
#define NDEBUG
#include <debug.h>
typedef INT (WINAPI *PINSTALL_REACTOS)(INT argc, WCHAR** argv);
/* FUNCTIONS ****************************************************************/
static
INT
RunInstallReactOS(INT argc, WCHAR* argv[])
{
INT RetVal;
HMODULE hDll;
PINSTALL_REACTOS InstallReactOS;
hDll = LoadLibraryW(L"syssetup.dll");
if (hDll == NULL)
{
DPRINT("Failed to load 'syssetup.dll'!\n");
return GetLastError();
}
DPRINT("Loaded 'syssetup.dll'!\n");
/* Call the standard Windows-compatible export */
InstallReactOS = (PINSTALL_REACTOS)GetProcAddress(hDll, "InstallWindowsNt");
if (InstallReactOS == NULL)
{
RetVal = GetLastError();
DPRINT("Failed to get address for 'InstallWindowsNt()'!\n");
}
else
{
RetVal = InstallReactOS(argc, argv);
}
FreeLibrary(hDll);
return RetVal;
}
/* Called from wmainCRTStartup */
INT wmain(INT argc, WCHAR* argv[])
{
LPWSTR CmdLine, p;
// NOTE: Temporary, until we correctly use argc/argv.
CmdLine = GetCommandLineW();
DPRINT("CmdLine: <%S>\n", CmdLine);
p = wcschr(CmdLine, L'-');
if (p == NULL)
return ERROR_INVALID_PARAMETER;
p++;
// NOTE: On Windows, "mini" means "minimal UI", and can be used
// in addition to "newsetup"; these options are not exclusive.
if (_wcsicmp(p, L"newsetup") == 0 || _wcsicmp(p, L"mini") == 0)
{
RunInstallReactOS(argc, argv);
}
#if 0
/* Add new setup types here */
else if (...)
{
}
#endif
return 0;
}
/* EOF */

View file

@ -0,0 +1,4 @@
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS Setup"
#define REACTOS_STR_INTERNAL_NAME "setup"
#define REACTOS_STR_ORIGINAL_FILENAME "setup.exe"
#include <reactos/version.rc>

View file

@ -0,0 +1,47 @@
add_definitions(${I18N_DEFS})
include_directories(
${CMAKE_CURRENT_SOURCE_DIR}
${REACTOS_SOURCE_DIR}/sdk/lib/inflib
${REACTOS_SOURCE_DIR}/sdk/include/reactos/libs/zlib
${REACTOS_SOURCE_DIR}/sdk/include/reactos/drivers)
list(APPEND SOURCE
interface/usetup.c
interface/devinst.c
interface/consup.c
native/utils/keytrans.c
native/utils/console.c
native/fslist.c
native/console.c
bootsup.c
cabinet.c
chkdsk.c
cmdcons.c
drivesup.c
filesup.c
filequeue.c
format.c
fslist.c
genlist.c
inffile.c
inicache.c
mui.c
partlist.c
progress.c
registry.c
settings.c
usetup.h)
if(CMAKE_C_COMPILER_ID STREQUAL "Clang")
#FIXME: Investigate Clang "illegal character encoding in string literal" warning
set_property(SOURCE mui.c APPEND_STRING PROPERTY COMPILE_FLAGS " -Wno-invalid-source-encoding")
endif()
add_executable(usetup ${SOURCE} usetup.rc)
target_link_libraries(usetup zlib inflib ext2lib vfatlib)
set_module_type(usetup nativecui)
add_importlibs(usetup ntdll)
add_pch(usetup usetup.h SOURCE)
add_cd_file(TARGET usetup DESTINATION reactos/system32 NO_CAB NAME_ON_CD smss.exe FOR bootcd regtest)

2736
base/setup/usetup/bootsup.c Normal file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,55 @@
/*
* ReactOS kernel
* Copyright (C) 2002 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/bootsup.h
* PURPOSE: Bootloader support functions
* PROGRAMMER: Eric Kohl
*/
#pragma once
BOOLEAN
IsThereAValidBootSector(PWSTR RootPath);
NTSTATUS
SaveBootSector(
PWSTR RootPath,
PWSTR DstPath,
ULONG Length);
NTSTATUS
InstallMbrBootCodeToDisk(
PWSTR SrcPath,
PWSTR RootPath);
NTSTATUS
InstallVBRToPartition(
PUNICODE_STRING SystemRootPath,
PUNICODE_STRING SourceRootPath,
PUNICODE_STRING DestinationArcPath,
UCHAR PartitionType);
NTSTATUS
InstallFatBootcodeToFloppy(
PUNICODE_STRING SourceRootPath,
PUNICODE_STRING DestinationArcPath);
/* EOF */

1199
base/setup/usetup/cabinet.c Normal file

File diff suppressed because it is too large Load diff

209
base/setup/usetup/cabinet.h Normal file
View file

@ -0,0 +1,209 @@
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS cabinet manager
* FILE: base/setup/usetup/cabinet.h
* PURPOSE: Cabinet definitions
*/
#pragma once
#include <string.h>
/* Cabinet constants */
#define CAB_SIGNATURE 0x4643534D // "MSCF"
#define CAB_VERSION 0x0103
#define CAB_BLOCKSIZE 32768
#define CAB_COMP_MASK 0x00FF
#define CAB_COMP_NONE 0x0000
#define CAB_COMP_MSZIP 0x0001
#define CAB_COMP_QUANTUM 0x0002
#define CAB_COMP_LZX 0x0003
#define CAB_FLAG_HASPREV 0x0001
#define CAB_FLAG_HASNEXT 0x0002
#define CAB_FLAG_RESERVE 0x0004
#define CAB_ATTRIB_READONLY 0x0001
#define CAB_ATTRIB_HIDDEN 0x0002
#define CAB_ATTRIB_SYSTEM 0x0004
#define CAB_ATTRIB_VOLUME 0x0008
#define CAB_ATTRIB_DIRECTORY 0x0010
#define CAB_ATTRIB_ARCHIVE 0x0020
#define CAB_ATTRIB_EXECUTE 0x0040
#define CAB_ATTRIB_UTF_NAME 0x0080
#define CAB_FILE_MAX_FOLDER 0xFFFC
#define CAB_FILE_CONTINUED 0xFFFD
#define CAB_FILE_SPLIT 0xFFFE
#define CAB_FILE_PREV_NEXT 0xFFFF
/* Cabinet structures */
typedef struct _CFHEADER
{
ULONG Signature; // File signature 'MSCF' (CAB_SIGNATURE)
ULONG Reserved1; // Reserved field
ULONG CabinetSize; // Cabinet file size
ULONG Reserved2; // Reserved field
ULONG FileTableOffset; // Offset of first CFFILE
ULONG Reserved3; // Reserved field
WORD Version; // Cabinet version (CAB_VERSION)
WORD FolderCount; // Number of folders
WORD FileCount; // Number of files
WORD Flags; // Cabinet flags (CAB_FLAG_*)
WORD SetID; // Cabinet set id
WORD CabinetNumber; // Zero-based cabinet number
/* Optional fields (depends on Flags)
WORD CabinetResSize // Per-cabinet reserved area size
CHAR FolderResSize // Per-folder reserved area size
CHAR FileResSize // Per-file reserved area size
CHAR CabinetReserved[] // Per-cabinet reserved area
CHAR CabinetPrev[] // Name of previous cabinet file
CHAR DiskPrev[] // Name of previous disk
CHAR CabinetNext[] // Name of next cabinet file
CHAR DiskNext[] // Name of next disk
*/
} CFHEADER, *PCFHEADER;
typedef struct _CFFOLDER
{
ULONG DataOffset; // Absolute offset of first CFDATA block in this folder
WORD DataBlockCount; // Number of CFDATA blocks in this folder in this cabinet
WORD CompressionType; // Type of compression used for all CFDATA blocks in this folder
/* Optional fields (depends on Flags)
CHAR FolderReserved[] // Per-folder reserved area
*/
} CFFOLDER, *PCFFOLDER;
typedef struct _CFFILE
{
ULONG FileSize; // Uncompressed file size in bytes
ULONG FileOffset; // Uncompressed offset of file in the folder
WORD FolderIndex; // Index number of the folder that contains this file
WORD FileDate; // File date stamp, as used by DOS
WORD FileTime; // File time stamp, as used by DOS
WORD Attributes; // File attributes (CAB_ATTRIB_*)
CHAR FileName[ANYSIZE_ARRAY];
/* After this is the NULL terminated filename */
} CFFILE, *PCFFILE;
typedef struct _CFDATA
{
ULONG Checksum; // Checksum of CFDATA entry
WORD CompSize; // Number of compressed bytes in this block
WORD UncompSize; // Number of uncompressed bytes in this block
/* Optional fields (depends on Flags)
CHAR DataReserved[] // Per-datablock reserved area
*/
} CFDATA, *PCFDATA;
typedef struct _CAB_SEARCH
{
WCHAR Search[MAX_PATH]; // Search criteria
WCHAR Cabinet[MAX_PATH];
USHORT Index;
PCFFILE File; // Pointer to current CFFILE
PCFDATA CFData;
ULONG Offset;
} CAB_SEARCH, *PCAB_SEARCH;
/* Constants */
/* Status codes */
#define CAB_STATUS_SUCCESS 0x00000000
#define CAB_STATUS_FAILURE 0x00000001
#define CAB_STATUS_NOMEMORY 0x00000002
#define CAB_STATUS_CANNOT_OPEN 0x00000003
#define CAB_STATUS_CANNOT_CREATE 0x00000004
#define CAB_STATUS_CANNOT_READ 0x00000005
#define CAB_STATUS_CANNOT_WRITE 0x00000006
#define CAB_STATUS_FILE_EXISTS 0x00000007
#define CAB_STATUS_INVALID_CAB 0x00000008
#define CAB_STATUS_NOFILE 0x00000009
#define CAB_STATUS_UNSUPPCOMP 0x0000000A
/* Codecs */
/* Uncompresses a data block */
typedef ULONG (*PCABINET_CODEC_UNCOMPRESS)(PVOID OutputBuffer,
PVOID InputBuffer,
PLONG InputLength,
PLONG OutputLength);
/* Codec status codes */
#define CS_SUCCESS 0x0000 /* All data consumed */
#define CS_NOMEMORY 0x0001 /* Not enough free memory */
#define CS_BADSTREAM 0x0002 /* Bad data stream */
/* Codec identifiers */
#define CAB_CODEC_RAW 0x00
#define CAB_CODEC_LZX 0x01
#define CAB_CODEC_MSZIP 0x02
#define MSZIP_MAGIC 0x4B43
/* Event handler prototypes */
typedef BOOL (*PCABINET_OVERWRITE)(PCFFILE File,
PWCHAR FileName);
typedef VOID (*PCABINET_EXTRACT)(PCFFILE File,
PWCHAR FileName);
typedef VOID (*PCABINET_DISK_CHANGE)(PWCHAR CabinetName,
PWCHAR DiskLabel);
/* Classes */
/* Default constructor */
VOID CabinetInitialize(VOID);
/* Default destructor */
VOID CabinetCleanup(VOID);
/* Returns a pointer to the filename part of a fully qualified filename */
PWCHAR CabinetGetFileName(PWCHAR Path);
/* Removes a filename from a fully qualified filename */
VOID CabinetRemoveFileName(PWCHAR Path);
/* Normalizes a path */
BOOL CabinetNormalizePath(PWCHAR Path, ULONG Length);
/* Returns name of cabinet file */
PWCHAR CabinetGetCabinetName(VOID);
/* Sets the name of the cabinet file */
VOID CabinetSetCabinetName(PWCHAR FileName);
/* Sets destination path for extracted files */
VOID CabinetSetDestinationPath(PWCHAR DestinationPath);
/* Returns destination path */
PWCHAR CabinetGetDestinationPath(VOID);
/* Returns zero-based current disk number */
ULONG CabinetGetCurrentDiskNumber(VOID);
/* Opens the current cabinet file */
ULONG CabinetOpen(VOID);
/* Closes the current open cabinet file */
VOID CabinetClose(VOID);
/* Locates the first file in the current cabinet file that matches a search criteria */
ULONG CabinetFindFirst(PWCHAR FileName, PCAB_SEARCH Search);
/* Locates the next file that matches the current search criteria */
ULONG CabinetFindNext(PCAB_SEARCH Search);
/* Locates the next file in the current cabinet file sequentially */
ULONG CabinetFindNextFileSequential(PWCHAR FileName, PCAB_SEARCH Search);
/* Extracts a file from the current cabinet file */
ULONG CabinetExtractFile(PCAB_SEARCH Search);
/* Select codec engine to use */
VOID CabinetSelectCodec(ULONG Id);
/* Set event handlers */
VOID CabinetSetEventHandlers(PCABINET_OVERWRITE Overwrite,
PCABINET_EXTRACT Extract,
PCABINET_DISK_CHANGE DiskChange);
/* Get pointer to cabinet reserved area. NULL if none */
PVOID CabinetGetCabinetReservedArea(PULONG Size);

View file

@ -0,0 +1,92 @@
/*
* ReactOS kernel
* Copyright (C) 2006 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/chkdsk.c
* PURPOSE: Filesystem chkdsk support functions
* PROGRAMMER: Hervé Poussineau (hpoussin@reactos.org)
*/
/* INCLUDES *****************************************************************/
#include "usetup.h"
#define NDEBUG
#include <debug.h>
static PPROGRESSBAR ChkdskProgressBar = NULL;
/* FUNCTIONS ****************************************************************/
static
BOOLEAN
NTAPI
ChkdskCallback(
IN CALLBACKCOMMAND Command,
IN ULONG Modifier,
IN PVOID Argument)
{
switch (Command)
{
default:
DPRINT("Unknown callback %lu\n", (ULONG)Command);
break;
}
return TRUE;
}
NTSTATUS
ChkdskPartition(
IN PUNICODE_STRING DriveRoot,
IN PFILE_SYSTEM_ITEM FileSystem)
{
NTSTATUS Status;
if (!FileSystem->ChkdskFunc)
return STATUS_NOT_SUPPORTED;
ChkdskProgressBar = CreateProgressBar(6,
yScreen - 14,
xScreen - 7,
yScreen - 10,
10,
24,
TRUE,
MUIGetString(STRING_CHECKINGDISK));
ProgressSetStepCount(ChkdskProgressBar, 100);
Status = FileSystem->ChkdskFunc(DriveRoot,
TRUE, /* FixErrors */
FALSE, /* Verbose */
FALSE, /* CheckOnlyIfDirty */
FALSE, /* ScanDrive */
ChkdskCallback); /* Callback */
DestroyProgressBar(ChkdskProgressBar);
ChkdskProgressBar = NULL;
DPRINT("ChkdskPartition() finished with status 0x%08lx\n", Status);
return Status;
}
/* EOF */

View file

@ -0,0 +1,33 @@
/*
* ReactOS kernel
* Copyright (C) 2006 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/chkdsk.h
* PURPOSE: Filesystem chkdsk support functions
* PROGRAMMER: Hervé Poussineau (hpoussin@reactos.org)
*/
#pragma once
NTSTATUS
ChkdskPartition(
IN PUNICODE_STRING DriveRoot,
IN PFILE_SYSTEM_ITEM FileSystem);
/* EOF */

1198
base/setup/usetup/cmdcons.c Normal file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,12 @@
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/cmdcons.h
* PURPOSE: Recovery console
* PROGRAMMER: Eric Kohl
*/
VOID
RecoveryConsole(VOID);
/* EOF */

View file

@ -0,0 +1,99 @@
/*
* ReactOS kernel
* Copyright (C) 2002 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/drivesup.c
* PURPOSE: Drive support functions
* PROGRAMMER: Eric Kohl
*/
/* INCLUDES *****************************************************************/
#include "usetup.h"
#define NDEBUG
#include <debug.h>
/* FUNCTIONS ****************************************************************/
NTSTATUS
GetSourcePaths(
PUNICODE_STRING SourcePath,
PUNICODE_STRING SourceRootPath,
PUNICODE_STRING SourceRootDir)
{
OBJECT_ATTRIBUTES ObjectAttributes;
UNICODE_STRING LinkName;
UNICODE_STRING SourceName;
WCHAR SourceBuffer[MAX_PATH] = {L'\0'};
HANDLE Handle;
NTSTATUS Status;
ULONG Length;
PWCHAR Ptr;
RtlInitUnicodeString(&LinkName,
L"\\SystemRoot");
InitializeObjectAttributes(&ObjectAttributes,
&LinkName,
OBJ_CASE_INSENSITIVE,
NULL,
NULL);
Status = NtOpenSymbolicLinkObject(&Handle,
SYMBOLIC_LINK_ALL_ACCESS,
&ObjectAttributes);
if (!NT_SUCCESS(Status))
return Status;
SourceName.Length = 0;
SourceName.MaximumLength = MAX_PATH * sizeof(WCHAR);
SourceName.Buffer = SourceBuffer;
Status = NtQuerySymbolicLinkObject(Handle,
&SourceName,
&Length);
NtClose(Handle);
if (NT_SUCCESS(Status))
{
RtlCreateUnicodeString(SourcePath,
SourceName.Buffer);
/* strip trailing directory */
Ptr = wcsrchr(SourceName.Buffer, L'\\');
if (Ptr)
{
RtlCreateUnicodeString(SourceRootDir, Ptr);
*Ptr = 0;
}
else
RtlCreateUnicodeString(SourceRootDir, L"");
RtlCreateUnicodeString(SourceRootPath,
SourceName.Buffer);
}
NtClose(Handle);
return STATUS_SUCCESS;
}
/* EOF */

View file

@ -0,0 +1,35 @@
/*
* ReactOS kernel
* Copyright (C) 2002 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/drivesup.h
* PURPOSE: Drive support functions
* PROGRAMMER: Eric Kohl
*/
#pragma once
NTSTATUS
GetSourcePaths(
PUNICODE_STRING SourcePath,
PUNICODE_STRING SourceRootPath,
PUNICODE_STRING SourceRootDir);
/* EOF */

View file

@ -0,0 +1,78 @@
/*
* ReactOS kernel
* Copyright (C) 2003 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/errorcode.h
* PURPOSE:
* PROGRAMMER:
*/
#pragma once
typedef enum
{
NOT_AN_ERROR = 0,
ERROR_NOT_INSTALLED,
ERROR_NO_HDD,
ERROR_NO_SOURCE_DRIVE,
ERROR_LOAD_TXTSETUPSIF,
ERROR_CORRUPT_TXTSETUPSIF,
ERROR_SIGNATURE_TXTSETUPSIF,
ERROR_DRIVE_INFORMATION,
ERROR_WRITE_BOOT,
ERROR_LOAD_COMPUTER,
ERROR_LOAD_DISPLAY,
ERROR_LOAD_KEYBOARD,
ERROR_LOAD_KBLAYOUT,
ERROR_WARN_PARTITION,
ERROR_NEW_PARTITION,
ERROR_DELETE_SPACE,
ERROR_INSTALL_BOOTCODE,
ERROR_NO_FLOPPY,
ERROR_UPDATE_KBSETTINGS,
ERROR_UPDATE_DISPLAY_SETTINGS,
ERROR_IMPORT_HIVE,
ERROR_FIND_REGISTRY,
ERROR_CREATE_HIVE,
ERROR_INITIALIZE_REGISTRY,
ERROR_INVALID_CABINET_INF,
ERROR_CABINET_MISSING,
ERROR_CABINET_SCRIPT,
ERROR_COPY_QUEUE,
ERROR_CREATE_DIR,
ERROR_TXTSETUP_SECTION,
ERROR_CABINET_SECTION,
ERROR_CREATE_INSTALL_DIR,
ERROR_FIND_SETUPDATA,
ERROR_WRITE_PTABLE,
ERROR_ADDING_CODEPAGE,
ERROR_UPDATE_LOCALESETTINGS,
ERROR_ADDING_KBLAYOUTS,
ERROR_UPDATE_GEOID,
ERROR_DIRECTORY_NAME,
ERROR_INSUFFICIENT_PARTITION_SIZE,
ERROR_PARTITION_TABLE_FULL,
ERROR_ONLY_ONE_EXTENDED,
ERROR_FORMATTING_PARTITION,
ERROR_LAST_ERROR_CODE
} ERROR_NUMBER;
/* EOF */

View file

@ -0,0 +1,482 @@
/*
* ReactOS kernel
* Copyright (C) 2002 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/filequeue.c
* PURPOSE: File queue functions
* PROGRAMMER: Eric Kohl
* Casper S. Hornstrup (chorns@users.sourceforge.net)
*/
/* INCLUDES *****************************************************************/
#include "usetup.h"
#define NDEBUG
#include <debug.h>
/* INCLUDES *****************************************************************/
typedef struct _QUEUEENTRY
{
struct _QUEUEENTRY *Prev;
struct _QUEUEENTRY *Next;
PWSTR SourceCabinet; /* May be NULL if the file is not in a cabinet */
PWSTR SourceRootPath;
PWSTR SourcePath;
PWSTR SourceFilename;
PWSTR TargetDirectory;
PWSTR TargetFilename;
} QUEUEENTRY, *PQUEUEENTRY;
typedef struct _FILEQUEUEHEADER
{
PQUEUEENTRY CopyHead;
PQUEUEENTRY CopyTail;
ULONG CopyCount;
} FILEQUEUEHEADER, *PFILEQUEUEHEADER;
/* FUNCTIONS ****************************************************************/
HSPFILEQ
WINAPI
SetupOpenFileQueue(VOID)
{
PFILEQUEUEHEADER QueueHeader;
/* Allocate queue header */
QueueHeader = (PFILEQUEUEHEADER)RtlAllocateHeap(ProcessHeap,
0,
sizeof(FILEQUEUEHEADER));
if (QueueHeader == NULL)
return NULL;
/* Initialize queue header */
RtlZeroMemory(QueueHeader,
sizeof(FILEQUEUEHEADER));
return (HSPFILEQ)QueueHeader;
}
VOID
WINAPI
SetupCloseFileQueue(
HSPFILEQ QueueHandle)
{
PFILEQUEUEHEADER QueueHeader;
PQUEUEENTRY Entry;
if (QueueHandle == NULL)
return;
QueueHeader = (PFILEQUEUEHEADER)QueueHandle;
/* Delete copy queue */
Entry = QueueHeader->CopyHead;
while (Entry != NULL)
{
/* Delete all strings */
if (Entry->SourceCabinet != NULL)
RtlFreeHeap(ProcessHeap, 0, Entry->SourceCabinet);
if (Entry->SourceRootPath != NULL)
RtlFreeHeap(ProcessHeap, 0, Entry->SourceRootPath);
if (Entry->SourcePath != NULL)
RtlFreeHeap(ProcessHeap, 0, Entry->SourcePath);
if (Entry->SourceFilename != NULL)
RtlFreeHeap(ProcessHeap, 0, Entry->SourceFilename);
if (Entry->TargetDirectory != NULL)
RtlFreeHeap(ProcessHeap, 0, Entry->TargetDirectory);
if (Entry->TargetFilename != NULL)
RtlFreeHeap(ProcessHeap, 0, Entry->TargetFilename);
/* Unlink current queue entry */
if (Entry->Next != NULL)
{
QueueHeader->CopyHead = Entry->Next;
QueueHeader->CopyHead->Prev = NULL;
}
else
{
QueueHeader->CopyHead = NULL;
QueueHeader->CopyTail = NULL;
}
/* Delete queue entry */
RtlFreeHeap(ProcessHeap, 0, Entry);
/* Get next queue entry */
Entry = QueueHeader->CopyHead;
}
/* Delete queue header */
RtlFreeHeap(ProcessHeap, 0, QueueHeader);
}
BOOL
SetupQueueCopy(
HSPFILEQ QueueHandle,
PCWSTR SourceCabinet,
PCWSTR SourceRootPath,
PCWSTR SourcePath,
PCWSTR SourceFilename,
PCWSTR TargetDirectory,
PCWSTR TargetFilename)
{
PFILEQUEUEHEADER QueueHeader;
PQUEUEENTRY Entry;
ULONG Length;
/* SourceCabinet may be NULL */
if (QueueHandle == NULL ||
SourceRootPath == NULL ||
SourceFilename == NULL ||
TargetDirectory == NULL)
return FALSE;
QueueHeader = (PFILEQUEUEHEADER)QueueHandle;
/* Allocate new queue entry */
Entry = (PQUEUEENTRY)RtlAllocateHeap(ProcessHeap,
0,
sizeof(QUEUEENTRY));
if (Entry == NULL)
return FALSE;
RtlZeroMemory(Entry,
sizeof(QUEUEENTRY));
/* Copy source cabinet if available */
if (SourceCabinet != NULL)
{
Length = wcslen(SourceCabinet);
Entry->SourceCabinet = (WCHAR*)RtlAllocateHeap(ProcessHeap,
0,
(Length + 1) * sizeof(WCHAR));
if (Entry->SourceCabinet == NULL)
{
RtlFreeHeap(ProcessHeap, 0, Entry);
return FALSE;
}
wcsncpy(Entry->SourceCabinet, SourceCabinet, Length);
Entry->SourceCabinet[Length] = (WCHAR)0;
}
else
{
Entry->SourceCabinet = NULL;
}
/* Copy source root path */
Length = wcslen(SourceRootPath);
Entry->SourceRootPath = (WCHAR*)RtlAllocateHeap(ProcessHeap,
0,
(Length + 1) * sizeof(WCHAR));
if (Entry->SourceRootPath == NULL)
{
if (Entry->SourceCabinet != NULL)
{
RtlFreeHeap(ProcessHeap, 0, Entry->SourceCabinet);
}
RtlFreeHeap(ProcessHeap, 0, Entry);
return FALSE;
}
wcsncpy(Entry->SourceRootPath, SourceRootPath, Length);
Entry->SourceRootPath[Length] = (WCHAR)0;
/* Copy source path */
if (SourcePath != NULL)
{
Length = wcslen(SourcePath);
if ((Length > 0) && (SourcePath[Length - 1] == L'\\'))
Length--;
Entry->SourcePath = (WCHAR*)RtlAllocateHeap(ProcessHeap,
0,
(Length + 1) * sizeof(WCHAR));
if (Entry->SourcePath == NULL)
{
if (Entry->SourceCabinet != NULL)
{
RtlFreeHeap(ProcessHeap, 0, Entry->SourceCabinet);
}
RtlFreeHeap(ProcessHeap, 0, Entry->SourceRootPath);
RtlFreeHeap(ProcessHeap, 0, Entry);
return FALSE;
}
wcsncpy(Entry->SourcePath, SourcePath, Length);
Entry->SourcePath[Length] = (WCHAR)0;
}
/* Copy source file name */
Length = wcslen(SourceFilename);
Entry->SourceFilename = (WCHAR*)RtlAllocateHeap(ProcessHeap,
0,
(Length + 1) * sizeof(WCHAR));
if (Entry->SourceFilename == NULL)
{
if (Entry->SourceCabinet != NULL)
{
RtlFreeHeap(ProcessHeap, 0, Entry->SourceCabinet);
}
RtlFreeHeap(ProcessHeap, 0, Entry->SourceRootPath);
RtlFreeHeap(ProcessHeap, 0, Entry->SourcePath);
RtlFreeHeap(ProcessHeap, 0, Entry);
return FALSE;
}
wcsncpy(Entry->SourceFilename, SourceFilename, Length);
Entry->SourceFilename[Length] = (WCHAR)0;
/* Copy target directory */
Length = wcslen(TargetDirectory);
if ((Length > 0) && (TargetDirectory[Length - 1] == L'\\'))
Length--;
Entry->TargetDirectory = (WCHAR*)RtlAllocateHeap(ProcessHeap,
0,
(Length + 1) * sizeof(WCHAR));
if (Entry->TargetDirectory == NULL)
{
if (Entry->SourceCabinet != NULL)
{
RtlFreeHeap(ProcessHeap, 0, Entry->SourceCabinet);
}
RtlFreeHeap(ProcessHeap, 0, Entry->SourceRootPath);
RtlFreeHeap(ProcessHeap, 0, Entry->SourcePath);
RtlFreeHeap(ProcessHeap, 0, Entry->SourceFilename);
RtlFreeHeap(ProcessHeap, 0, Entry);
return FALSE;
}
wcsncpy(Entry->TargetDirectory, TargetDirectory, Length);
Entry->TargetDirectory[Length] = (WCHAR)0;
/* Copy optional target filename */
if (TargetFilename != NULL)
{
Length = wcslen(TargetFilename);
Entry->TargetFilename = (WCHAR*)RtlAllocateHeap(ProcessHeap,
0,
(Length + 1) * sizeof(WCHAR));
if (Entry->TargetFilename == NULL)
{
if (Entry->SourceCabinet != NULL)
{
RtlFreeHeap(ProcessHeap, 0, Entry->SourceCabinet);
}
RtlFreeHeap(ProcessHeap, 0, Entry->SourceRootPath);
RtlFreeHeap(ProcessHeap, 0, Entry->SourcePath);
RtlFreeHeap(ProcessHeap, 0, Entry->SourceFilename);
RtlFreeHeap(ProcessHeap, 0, Entry->TargetDirectory);
RtlFreeHeap(ProcessHeap, 0, Entry);
return FALSE;
}
wcsncpy(Entry->TargetFilename, TargetFilename, Length);
Entry->TargetFilename[Length] = (WCHAR)0;
}
/* Append queue entry */
if (QueueHeader->CopyHead == NULL) // && QueueHeader->CopyTail == NULL)
{
Entry->Prev = NULL;
Entry->Next = NULL;
QueueHeader->CopyHead = Entry;
QueueHeader->CopyTail = Entry;
}
else
{
Entry->Prev = QueueHeader->CopyTail;
Entry->Next = NULL;
QueueHeader->CopyTail->Next = Entry;
QueueHeader->CopyTail = Entry;
}
QueueHeader->CopyCount++;
return TRUE;
}
BOOL
WINAPI
SetupCommitFileQueueW(
HWND Owner,
HSPFILEQ QueueHandle,
PSP_FILE_CALLBACK_W MsgHandler,
PVOID Context)
{
WCHAR CabinetName[MAX_PATH];
PFILEQUEUEHEADER QueueHeader;
PQUEUEENTRY Entry;
NTSTATUS Status;
PCWSTR TargetRootPath, TargetPath;
WCHAR FileSrcPath[MAX_PATH];
WCHAR FileDstPath[MAX_PATH];
TargetRootPath = ((PCOPYCONTEXT)Context)->DestinationRootPath;
TargetPath = ((PCOPYCONTEXT)Context)->InstallPath;
if (QueueHandle == NULL)
return FALSE;
QueueHeader = (PFILEQUEUEHEADER)QueueHandle;
MsgHandler(Context,
SPFILENOTIFY_STARTQUEUE,
0,
0);
MsgHandler(Context,
SPFILENOTIFY_STARTSUBQUEUE,
FILEOP_COPY,
QueueHeader->CopyCount);
/* Commit copy queue */
Entry = QueueHeader->CopyHead;
while (Entry != NULL)
{
/* Build the full source path */
wcscpy(FileSrcPath, Entry->SourceRootPath);
if (Entry->SourcePath != NULL)
wcscat(FileSrcPath, Entry->SourcePath);
wcscat(FileSrcPath, L"\\");
wcscat(FileSrcPath, Entry->SourceFilename);
/* Build the full target path */
wcscpy(FileDstPath, TargetRootPath);
if (Entry->TargetDirectory[0] == 0)
{
/* Installation path */
/* Add the installation path */
if (TargetPath != NULL)
{
if (TargetPath[0] != L'\\')
wcscat(FileDstPath, L"\\");
wcscat(FileDstPath, TargetPath);
}
}
else if (Entry->TargetDirectory[0] == L'\\')
{
/* Absolute path */
if (Entry->TargetDirectory[1] != 0)
wcscat(FileDstPath, Entry->TargetDirectory);
}
else // if (Entry->TargetDirectory[0] != L'\\')
{
/* Path relative to the installation path */
/* Add the installation path */
if (TargetPath != NULL)
{
if (TargetPath[0] != L'\\')
wcscat(FileDstPath, L"\\");
wcscat(FileDstPath, TargetPath);
}
wcscat(FileDstPath, L"\\");
wcscat(FileDstPath, Entry->TargetDirectory);
}
/*
* If the file is in a cabinet, use only the destination path.
* Otherwise possibly use a different target name.
*/
if (Entry->SourceCabinet == NULL)
{
wcscat(FileDstPath, L"\\");
if (Entry->TargetFilename != NULL)
wcscat(FileDstPath, Entry->TargetFilename);
else
wcscat(FileDstPath, Entry->SourceFilename);
}
/* FIXME: Do it! */
DPRINT("Copy: '%S' ==> '%S'\n", FileSrcPath, FileDstPath);
MsgHandler(Context,
SPFILENOTIFY_STARTCOPY,
(UINT_PTR)Entry->SourceFilename,
FILEOP_COPY);
if (Entry->SourceCabinet != NULL)
{
/* Extract the file */
wcscpy(CabinetName, Entry->SourceRootPath);
if (Entry->SourcePath != NULL)
wcscat(CabinetName, Entry->SourcePath);
wcscat(CabinetName, L"\\");
wcscat(CabinetName, Entry->SourceCabinet);
Status = SetupExtractFile(CabinetName, Entry->SourceFilename, FileDstPath);
}
else
{
/* Copy the file */
Status = SetupCopyFile(FileSrcPath, FileDstPath);
}
if (!NT_SUCCESS(Status))
{
MsgHandler(Context,
SPFILENOTIFY_COPYERROR,
(UINT_PTR)Entry->SourceFilename,
FILEOP_COPY);
}
else
{
MsgHandler(Context,
SPFILENOTIFY_ENDCOPY,
(UINT_PTR)Entry->SourceFilename,
FILEOP_COPY);
}
Entry = Entry->Next;
}
MsgHandler(Context,
SPFILENOTIFY_ENDSUBQUEUE,
FILEOP_COPY,
0);
MsgHandler(Context,
SPFILENOTIFY_ENDQUEUE,
0,
0);
return TRUE;
}
/* EOF */

View file

@ -0,0 +1,112 @@
/*
* ReactOS kernel
* Copyright (C) 2002 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/filequeue.h
* PURPOSE: File queue functions
* PROGRAMMER: Eric Kohl
*/
#pragma once
#define SPFILENOTIFY_STARTQUEUE 0x1
#define SPFILENOTIFY_ENDQUEUE 0x2
#define SPFILENOTIFY_STARTSUBQUEUE 0x3
#define SPFILENOTIFY_ENDSUBQUEUE 0x4
#define SPFILENOTIFY_STARTCOPY 0xb
#define SPFILENOTIFY_ENDCOPY 0xc
#define SPFILENOTIFY_COPYERROR 0xd
#define FILEOP_COPY 0x0
#define FILEOP_RENAME 0x1
#define FILEOP_DELETE 0x2
#define FILEOP_BACKUP 0x3
#define FILEOP_ABORT 0x0
#define FILEOP_DOIT 0x1
#define FILEOP_SKIP 0x2
#define FILEOP_RETRY FILEOP_DOIT
#define FILEOP_NEWPATH 0x4
/* TYPES ********************************************************************/
typedef PVOID HSPFILEQ;
typedef UINT (CALLBACK* PSP_FILE_CALLBACK_W)(
PVOID Context,
UINT Notification,
UINT_PTR Param1,
UINT_PTR Param2);
typedef struct _COPYCONTEXT
{
LPCWSTR DestinationRootPath; /* Not owned by this structure */
LPCWSTR InstallPath; /* Not owned by this structure */
ULONG TotalOperations;
ULONG CompletedOperations;
PPROGRESSBAR ProgressBar;
PPROGRESSBAR MemoryBars[4];
} COPYCONTEXT, *PCOPYCONTEXT;
/* FUNCTIONS ****************************************************************/
HSPFILEQ
WINAPI
SetupOpenFileQueue(VOID);
VOID
WINAPI
SetupCloseFileQueue(
IN HSPFILEQ QueueHandle);
BOOL
WINAPI
SetupQueueCopyWNew(
IN HSPFILEQ QueueHandle,
IN PCWSTR SourceRootPath,
IN PCWSTR SourcePath,
IN PCWSTR SourceFileName,
IN PCWSTR SourceDescription,
IN PCWSTR SourceTagFile,
IN PCWSTR TargetDirectory,
IN PCWSTR TargetFileName,
IN DWORD CopyStyle);
BOOL
SetupQueueCopy(
HSPFILEQ QueueHandle,
PCWSTR SourceCabinet,
PCWSTR SourceRootPath,
PCWSTR SourcePath,
PCWSTR SourceFilename,
PCWSTR TargetDirectory,
PCWSTR TargetFilename);
BOOL
WINAPI
SetupCommitFileQueueW(
HWND Owner,
HSPFILEQ QueueHandle,
PSP_FILE_CALLBACK_W MsgHandler,
PVOID Context);
/* EOF */

537
base/setup/usetup/filesup.c Normal file
View file

@ -0,0 +1,537 @@
/*
* ReactOS kernel
* Copyright (C) 2002 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/filesup.c
* PURPOSE: File support functions
* PROGRAMMER: Eric Kohl
* Casper S. Hornstrup (chorns@users.sourceforge.net)
*/
/* INCLUDES *****************************************************************/
#include "usetup.h"
#define NDEBUG
#include <debug.h>
/* FUNCTIONS ****************************************************************/
static BOOLEAN HasCurrentCabinet = FALSE;
static WCHAR CurrentCabinetName[MAX_PATH];
static CAB_SEARCH Search;
static
NTSTATUS
SetupCreateSingleDirectory(
PWCHAR DirectoryName)
{
OBJECT_ATTRIBUTES ObjectAttributes;
IO_STATUS_BLOCK IoStatusBlock;
UNICODE_STRING PathName;
HANDLE DirectoryHandle;
NTSTATUS Status;
if(!RtlCreateUnicodeString(&PathName, DirectoryName))
return STATUS_NO_MEMORY;
if (PathName.Length > sizeof(WCHAR) &&
PathName.Buffer[PathName.Length / sizeof(WCHAR) - 2] == L'\\' &&
PathName.Buffer[PathName.Length / sizeof(WCHAR) - 1] == L'.')
{
PathName.Length -= sizeof(WCHAR);
PathName.Buffer[PathName.Length / sizeof(WCHAR)] = 0;
}
if (PathName.Length > sizeof(WCHAR) &&
PathName.Buffer[PathName.Length / sizeof(WCHAR) - 1] == L'\\')
{
PathName.Length -= sizeof(WCHAR);
PathName.Buffer[PathName.Length / sizeof(WCHAR)] = 0;
}
InitializeObjectAttributes(&ObjectAttributes,
&PathName,
OBJ_CASE_INSENSITIVE | OBJ_INHERIT,
NULL,
NULL);
Status = NtCreateFile(&DirectoryHandle,
DIRECTORY_ALL_ACCESS,
&ObjectAttributes,
&IoStatusBlock,
NULL,
FILE_ATTRIBUTE_DIRECTORY,
FILE_SHARE_READ | FILE_SHARE_WRITE,
FILE_OPEN_IF,
FILE_DIRECTORY_FILE,
NULL,
0);
if (NT_SUCCESS(Status))
{
NtClose(DirectoryHandle);
}
RtlFreeUnicodeString(&PathName);
return Status;
}
static
BOOLEAN
DoesPathExist(
PWSTR PathName)
{
OBJECT_ATTRIBUTES ObjectAttributes;
IO_STATUS_BLOCK IoStatusBlock;
UNICODE_STRING Name;
HANDLE FileHandle;
NTSTATUS Status;
RtlInitUnicodeString(&Name,
PathName);
InitializeObjectAttributes(&ObjectAttributes,
&Name,
OBJ_CASE_INSENSITIVE,
NULL,
NULL);
Status = NtOpenFile(&FileHandle,
GENERIC_READ | SYNCHRONIZE,
&ObjectAttributes,
&IoStatusBlock,
0,
FILE_SYNCHRONOUS_IO_NONALERT);
if (!NT_SUCCESS(Status))
{
return FALSE;
}
NtClose(FileHandle);
return TRUE;
}
BOOLEAN
IsValidPath(
PWCHAR InstallDir,
ULONG Length)
{
UINT i;
// TODO: Add check for 8.3 too.
/* Check for whitespaces */
for (i = 0; i < Length; i++)
{
if (isspace(InstallDir[i]))
return FALSE;
}
return TRUE;
}
NTSTATUS
SetupCreateDirectory(
PWCHAR PathName)
{
PWCHAR PathBuffer = NULL;
PWCHAR Ptr, EndPtr;
ULONG BackslashCount;
ULONG Size;
NTSTATUS Status = STATUS_SUCCESS;
Size = (wcslen(PathName) + 1) * sizeof(WCHAR);
PathBuffer = RtlAllocateHeap(RtlGetProcessHeap(), HEAP_ZERO_MEMORY, Size);
if (PathBuffer == NULL)
return STATUS_INSUFFICIENT_RESOURCES;
wcscpy(PathBuffer, PathName);
EndPtr = PathBuffer + wcslen(PathName);
Ptr = PathBuffer;
/* Skip the '\Device\HarddiskX\PartitionY\ part */
BackslashCount = 0;
while (Ptr < EndPtr && BackslashCount < 4)
{
if (*Ptr == L'\\')
BackslashCount++;
Ptr++;
}
while (Ptr < EndPtr)
{
if (*Ptr == L'\\')
{
*Ptr = 0;
DPRINT("PathBuffer: %S\n", PathBuffer);
if (!DoesPathExist(PathBuffer))
{
DPRINT("Create: %S\n", PathBuffer);
Status = SetupCreateSingleDirectory(PathBuffer);
if (!NT_SUCCESS(Status))
goto done;
}
*Ptr = L'\\';
}
Ptr++;
}
if (!DoesPathExist(PathBuffer))
{
DPRINT("Create: %S\n", PathBuffer);
Status = SetupCreateSingleDirectory(PathBuffer);
if (!NT_SUCCESS(Status))
goto done;
}
done:
DPRINT("Done.\n");
if (PathBuffer != NULL)
RtlFreeHeap(RtlGetProcessHeap(), 0, PathBuffer);
return Status;
}
NTSTATUS
SetupCopyFile(
PWCHAR SourceFileName,
PWCHAR DestinationFileName)
{
OBJECT_ATTRIBUTES ObjectAttributes;
HANDLE FileHandleSource;
HANDLE FileHandleDest;
static IO_STATUS_BLOCK IoStatusBlock;
FILE_STANDARD_INFORMATION FileStandard;
FILE_BASIC_INFORMATION FileBasic;
ULONG RegionSize;
UNICODE_STRING FileName;
NTSTATUS Status;
PVOID SourceFileMap = 0;
HANDLE SourceFileSection;
SIZE_T SourceSectionSize = 0;
LARGE_INTEGER ByteOffset;
#ifdef __REACTOS__
RtlInitUnicodeString(&FileName,
SourceFileName);
InitializeObjectAttributes(&ObjectAttributes,
&FileName,
OBJ_CASE_INSENSITIVE,
NULL,
NULL);
Status = NtOpenFile(&FileHandleSource,
GENERIC_READ,
&ObjectAttributes,
&IoStatusBlock,
FILE_SHARE_READ,
FILE_SEQUENTIAL_ONLY);
if (!NT_SUCCESS(Status))
{
DPRINT1("NtOpenFile failed: %x, %wZ\n", Status, &FileName);
goto done;
}
#else
FileHandleSource = CreateFileW(SourceFileName,
GENERIC_READ,
FILE_SHARE_READ,
NULL,
OPEN_EXISTING,
0,
NULL);
if (FileHandleSource == INVALID_HANDLE_VALUE)
{
Status = STATUS_UNSUCCESSFUL;
goto done;
}
#endif
Status = NtQueryInformationFile(FileHandleSource,
&IoStatusBlock,
&FileStandard,
sizeof(FILE_STANDARD_INFORMATION),
FileStandardInformation);
if (!NT_SUCCESS(Status))
{
DPRINT1("NtQueryInformationFile failed: %x\n", Status);
goto closesrc;
}
Status = NtQueryInformationFile(FileHandleSource,
&IoStatusBlock,&FileBasic,
sizeof(FILE_BASIC_INFORMATION),
FileBasicInformation);
if (!NT_SUCCESS(Status))
{
DPRINT1("NtQueryInformationFile failed: %x\n", Status);
goto closesrc;
}
Status = NtCreateSection(&SourceFileSection,
SECTION_MAP_READ,
NULL,
NULL,
PAGE_READONLY,
SEC_COMMIT,
FileHandleSource);
if (!NT_SUCCESS(Status))
{
DPRINT1("NtCreateSection failed: %x, %S\n", Status, SourceFileName);
goto closesrc;
}
Status = NtMapViewOfSection(SourceFileSection,
NtCurrentProcess(),
&SourceFileMap,
0,
0,
NULL,
&SourceSectionSize,
ViewUnmap,
0,
PAGE_READONLY );
if (!NT_SUCCESS(Status))
{
DPRINT1("NtMapViewOfSection failed: %x, %S\n", Status, SourceFileName);
goto closesrcsec;
}
RtlInitUnicodeString(&FileName,
DestinationFileName);
InitializeObjectAttributes(&ObjectAttributes,
&FileName,
OBJ_CASE_INSENSITIVE,
NULL,
NULL);
Status = NtCreateFile(&FileHandleDest,
GENERIC_WRITE | SYNCHRONIZE,
&ObjectAttributes,
&IoStatusBlock,
NULL,
FILE_ATTRIBUTE_NORMAL,
0,
FILE_OVERWRITE_IF,
FILE_NO_INTERMEDIATE_BUFFERING |
FILE_SEQUENTIAL_ONLY |
FILE_SYNCHRONOUS_IO_NONALERT,
NULL,
0);
if (!NT_SUCCESS(Status))
{
DPRINT1("NtCreateFile failed: %x, %wZ\n", Status, &FileName);
goto unmapsrcsec;
}
RegionSize = (ULONG)PAGE_ROUND_UP(FileStandard.EndOfFile.u.LowPart);
IoStatusBlock.Status = 0;
ByteOffset.QuadPart = 0ULL;
Status = NtWriteFile(FileHandleDest,
NULL,
NULL,
NULL,
&IoStatusBlock,
SourceFileMap,
RegionSize,
&ByteOffset,
NULL);
if (!NT_SUCCESS(Status))
{
DPRINT1("NtWriteFile failed: %x:%x, iosb: %p src: %p, size: %x\n", Status, IoStatusBlock.Status, &IoStatusBlock, SourceFileMap, RegionSize);
goto closedest;
}
/* Copy file date/time from source file */
Status = NtSetInformationFile(FileHandleDest,
&IoStatusBlock,
&FileBasic,
sizeof(FILE_BASIC_INFORMATION),
FileBasicInformation);
if (!NT_SUCCESS(Status))
{
DPRINT1("NtSetInformationFile failed: %x\n", Status);
goto closedest;
}
/* shorten the file back to it's real size after completing the write */
Status = NtSetInformationFile(FileHandleDest,
&IoStatusBlock,
&FileStandard.EndOfFile,
sizeof(FILE_END_OF_FILE_INFORMATION),
FileEndOfFileInformation);
if (!NT_SUCCESS(Status))
{
DPRINT1("NtSetInformationFile failed: %x\n", Status);
}
closedest:
NtClose(FileHandleDest);
unmapsrcsec:
NtUnmapViewOfSection(NtCurrentProcess(), SourceFileMap);
closesrcsec:
NtClose(SourceFileSection);
closesrc:
NtClose(FileHandleSource);
done:
return Status;
}
#ifdef __REACTOS__
NTSTATUS
SetupExtractFile(
PWCHAR CabinetFileName,
PWCHAR SourceFileName,
PWCHAR DestinationPathName)
{
ULONG CabStatus;
DPRINT("SetupExtractFile(CabinetFileName %S, SourceFileName %S, DestinationPathName %S)\n",
CabinetFileName, SourceFileName, DestinationPathName);
if (HasCurrentCabinet)
{
DPRINT("CurrentCabinetName: %S\n", CurrentCabinetName);
}
if ((HasCurrentCabinet) && (wcscmp(CabinetFileName, CurrentCabinetName) == 0))
{
DPRINT("Using same cabinet as last time\n");
/* Use our last location because the files should be sequential */
CabStatus = CabinetFindNextFileSequential(SourceFileName, &Search);
if (CabStatus != CAB_STATUS_SUCCESS)
{
DPRINT("Sequential miss on file: %S\n", SourceFileName);
/* Looks like we got unlucky */
CabStatus = CabinetFindFirst(SourceFileName, &Search);
}
}
else
{
DPRINT("Using new cabinet\n");
if (HasCurrentCabinet)
{
CabinetCleanup();
}
wcscpy(CurrentCabinetName, CabinetFileName);
CabinetInitialize();
CabinetSetEventHandlers(NULL, NULL, NULL);
CabinetSetCabinetName(CabinetFileName);
CabStatus = CabinetOpen();
if (CabStatus == CAB_STATUS_SUCCESS)
{
DPRINT("Opened cabinet %S\n", CabinetGetCabinetName());
HasCurrentCabinet = TRUE;
}
else
{
DPRINT("Cannot open cabinet (%d)\n", CabStatus);
return STATUS_UNSUCCESSFUL;
}
/* We have to start at the beginning here */
CabStatus = CabinetFindFirst(SourceFileName, &Search);
}
if (CabStatus != CAB_STATUS_SUCCESS)
{
DPRINT1("Unable to find '%S' in cabinet '%S'\n", SourceFileName, CabinetGetCabinetName());
return STATUS_UNSUCCESSFUL;
}
CabinetSetDestinationPath(DestinationPathName);
CabStatus = CabinetExtractFile(&Search);
if (CabStatus != CAB_STATUS_SUCCESS)
{
DPRINT("Cannot extract file %S (%d)\n", SourceFileName, CabStatus);
return STATUS_UNSUCCESSFUL;
}
return STATUS_SUCCESS;
}
#endif
BOOLEAN
DoesFileExist(
PWSTR PathName,
PWSTR FileName)
{
OBJECT_ATTRIBUTES ObjectAttributes;
IO_STATUS_BLOCK IoStatusBlock;
UNICODE_STRING Name;
WCHAR FullName[MAX_PATH];
HANDLE FileHandle;
NTSTATUS Status;
wcscpy(FullName, PathName);
if (FileName != NULL)
{
if (FileName[0] != L'\\')
wcscat(FullName, L"\\");
wcscat(FullName, FileName);
}
RtlInitUnicodeString(&Name,
FullName);
InitializeObjectAttributes(&ObjectAttributes,
&Name,
OBJ_CASE_INSENSITIVE,
NULL,
NULL);
Status = NtOpenFile(&FileHandle,
GENERIC_READ | SYNCHRONIZE,
&ObjectAttributes,
&IoStatusBlock,
0,
FILE_SYNCHRONOUS_IO_NONALERT);
if (!NT_SUCCESS(Status))
{
return FALSE;
}
NtClose(FileHandle);
return TRUE;
}
/* EOF */

View file

@ -0,0 +1,54 @@
/*
* ReactOS kernel
* Copyright (C) 2002 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/filesup.h
* PURPOSE: File support functions
* PROGRAMMER: Eric Kohl
*/
#pragma once
NTSTATUS
SetupCreateDirectory(
PWCHAR DirectoryName);
NTSTATUS
SetupCopyFile(
PWCHAR SourceFileName,
PWCHAR DestinationFileName);
NTSTATUS
SetupExtractFile(
PWCHAR CabinetFileName,
PWCHAR SourceFileName,
PWCHAR DestinationFileName);
BOOLEAN
DoesFileExist(
PWSTR PathName,
PWSTR FileName);
BOOLEAN
IsValidPath(
PWCHAR InstallDir,
ULONG Length);
/* EOF */

124
base/setup/usetup/format.c Normal file
View file

@ -0,0 +1,124 @@
/*
* ReactOS kernel
* Copyright (C) 2003 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/format.c
* PURPOSE: Filesystem format support functions
* PROGRAMMER: Casper S. Hornstrup (chorns@users.sourceforge.net)
*/
/* INCLUDES *****************************************************************/
#include "usetup.h"
#define NDEBUG
#include <debug.h>
static PPROGRESSBAR FormatProgressBar = NULL;
/* FUNCTIONS ****************************************************************/
static
BOOLEAN
NTAPI
FormatCallback(
IN CALLBACKCOMMAND Command,
IN ULONG Modifier,
IN PVOID Argument)
{
switch (Command)
{
case PROGRESS:
{
PULONG Percent;
Percent = (PULONG)Argument;
DPRINT("%lu percent completed\n", *Percent);
ProgressSetStep(FormatProgressBar, *Percent);
break;
}
/*case OUTPUT:
{
PTEXTOUTPUT Output;
output = (PTEXTOUTPUT) Argument;
DPRINT("%s\n", output->Output);
break;
}*/
case DONE:
{
/*PBOOLEAN Success;*/
DPRINT("Done\n");
/*Success = (PBOOLEAN)Argument;
if (*Success == FALSE)
{
DPRINT("FormatEx was unable to complete successfully.\n\n");
}*/
break;
}
default:
DPRINT("Unknown callback %lu\n", (ULONG)Command);
break;
}
return TRUE;
}
NTSTATUS
FormatPartition(
IN PUNICODE_STRING DriveRoot,
IN PFILE_SYSTEM_ITEM FileSystem)
{
NTSTATUS Status;
if (!FileSystem->FormatFunc)
return STATUS_NOT_SUPPORTED;
FormatProgressBar = CreateProgressBar(6,
yScreen - 14,
xScreen - 7,
yScreen - 10,
10,
24,
TRUE,
MUIGetString(STRING_FORMATTINGDISK));
ProgressSetStepCount(FormatProgressBar, 100);
Status = FileSystem->FormatFunc(DriveRoot,
FMIFS_HARDDISK, /* MediaFlag */
NULL, /* Label */
FileSystem->QuickFormat, /* QuickFormat */
0, /* ClusterSize */
FormatCallback); /* Callback */
DestroyProgressBar(FormatProgressBar);
FormatProgressBar = NULL;
DPRINT("FormatPartition() finished with status 0x%08lx\n", Status);
return Status;
}
/* EOF */

View file

@ -0,0 +1,34 @@
/*
* ReactOS kernel
* Copyright (C) 2003 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/format.h
* PURPOSE: Filesystem format support functions
* PROGRAMMER: Casper S. Hornstrup (chorns@users.sourceforge.net)
*/
#pragma once
NTSTATUS
FormatPartition(
IN PUNICODE_STRING DriveRoot,
IN PFILE_SYSTEM_ITEM FileSystem);
/* EOF */

302
base/setup/usetup/fslist.c Normal file
View file

@ -0,0 +1,302 @@
/*
* ReactOS kernel
* Copyright (C) 2003 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/fslist.c
* PURPOSE: Filesystem list functions
* PROGRAMMER: Eric Kohl
* Casper S. Hornstrup (chorns@users.sourceforge.net)
*/
#include "usetup.h"
#define NDEBUG
#include <debug.h>
/* FUNCTIONS ****************************************************************/
VOID
FS_AddProvider(
IN OUT PFILE_SYSTEM_LIST List,
IN LPCWSTR FileSystemName,
IN FORMATEX FormatFunc,
IN CHKDSKEX ChkdskFunc)
{
PFILE_SYSTEM_ITEM Item;
Item = (PFILE_SYSTEM_ITEM)RtlAllocateHeap(ProcessHeap, 0, sizeof(FILE_SYSTEM_ITEM));
if (!Item)
return;
Item->FileSystemName = FileSystemName;
Item->FormatFunc = FormatFunc;
Item->ChkdskFunc = ChkdskFunc;
Item->QuickFormat = TRUE;
InsertTailList(&List->ListHead, &Item->ListEntry);
if (!FormatFunc)
return;
Item = (PFILE_SYSTEM_ITEM)RtlAllocateHeap(ProcessHeap, 0, sizeof(FILE_SYSTEM_ITEM));
if (!Item)
return;
Item->FileSystemName = FileSystemName;
Item->FormatFunc = FormatFunc;
Item->ChkdskFunc = ChkdskFunc;
Item->QuickFormat = FALSE;
InsertTailList(&List->ListHead, &Item->ListEntry);
}
PFILE_SYSTEM_ITEM
GetFileSystemByName(
IN PFILE_SYSTEM_LIST List,
IN LPWSTR FileSystemName)
{
PLIST_ENTRY ListEntry;
PFILE_SYSTEM_ITEM Item;
ListEntry = List->ListHead.Flink;
while (ListEntry != &List->ListHead)
{
Item = CONTAINING_RECORD(ListEntry, FILE_SYSTEM_ITEM, ListEntry);
if (Item->FileSystemName && wcsicmp(FileSystemName, Item->FileSystemName) == 0)
return Item;
ListEntry = ListEntry->Flink;
}
return NULL;
}
PFILE_SYSTEM_ITEM
GetFileSystem(
IN PFILE_SYSTEM_LIST FileSystemList,
IN struct _PARTENTRY* PartEntry)
{
PFILE_SYSTEM_ITEM CurrentFileSystem;
LPWSTR FileSystemName = NULL;
CurrentFileSystem = PartEntry->FileSystem;
/* We have a file system, return it */
if (CurrentFileSystem != NULL && CurrentFileSystem->FileSystemName != NULL)
return CurrentFileSystem;
DPRINT1("File system not found, try to guess one...\n");
CurrentFileSystem = NULL;
/*
* We don't have one...
*
* Try to infer a preferred file system for this partition, given its ID.
*
* WARNING: This is partly a hack, since partitions with the same ID can
* be formatted with different file systems: for example, usual Linux
* partitions that are formatted in EXT2/3/4, ReiserFS, etc... have the
* same partition ID 0x83.
*
* The proper fix is to make a function that detects the existing FS
* from a given partition (not based on the partition ID).
* On the contrary, for unformatted partitions with a given ID, the
* following code is OK.
*/
if ((PartEntry->PartitionType == PARTITION_FAT_12) ||
(PartEntry->PartitionType == PARTITION_FAT_16) ||
(PartEntry->PartitionType == PARTITION_HUGE ) ||
(PartEntry->PartitionType == PARTITION_XINT13) ||
(PartEntry->PartitionType == PARTITION_FAT32 ) ||
(PartEntry->PartitionType == PARTITION_FAT32_XINT13))
{
FileSystemName = L"FAT";
}
else if (PartEntry->PartitionType == PARTITION_EXT2)
{
// WARNING: See the warning above.
FileSystemName = L"EXT2";
}
else if (PartEntry->PartitionType == PARTITION_IFS)
{
// WARNING: See the warning above.
FileSystemName = L"NTFS"; /* FIXME: Not quite correct! */
}
// HACK: WARNING: We cannot write on this FS yet!
if (PartEntry->PartitionType == PARTITION_EXT2 || PartEntry->PartitionType == PARTITION_IFS)
DPRINT1("Recognized file system %S that doesn't support write support yet!\n", FileSystemName);
DPRINT1("GetFileSystem -- PartitionType: 0x%02X ; FileSystemName (guessed): %S\n",
PartEntry->PartitionType, FileSystemName);
if (FileSystemName != NULL)
CurrentFileSystem = GetFileSystemByName(FileSystemList, FileSystemName);
return CurrentFileSystem;
}
PFILE_SYSTEM_LIST
CreateFileSystemList(
IN SHORT Left,
IN SHORT Top,
IN BOOLEAN ForceFormat,
IN LPCWSTR ForceFileSystem)
{
PFILE_SYSTEM_LIST List;
PFILE_SYSTEM_ITEM Item;
PLIST_ENTRY ListEntry;
List = (PFILE_SYSTEM_LIST)RtlAllocateHeap(ProcessHeap, 0, sizeof(FILE_SYSTEM_LIST));
if (List == NULL)
return NULL;
List->Left = Left;
List->Top = Top;
List->Selected = NULL;
InitializeListHead(&List->ListHead);
HOST_CreateFileSystemList(List);
if (!ForceFormat)
{
/* Add 'Keep' provider */
FS_AddProvider(List, NULL, NULL, NULL);
}
/* Search for ForceFileSystem in list */
ListEntry = List->ListHead.Flink;
while (ListEntry != &List->ListHead)
{
Item = CONTAINING_RECORD(ListEntry, FILE_SYSTEM_ITEM, ListEntry);
if (Item->FileSystemName && wcscmp(ForceFileSystem, Item->FileSystemName) == 0)
{
List->Selected = Item;
break;
}
ListEntry = ListEntry->Flink;
}
if (!List->Selected)
List->Selected = CONTAINING_RECORD(List->ListHead.Flink, FILE_SYSTEM_ITEM, ListEntry);
return List;
}
VOID
DestroyFileSystemList(
IN PFILE_SYSTEM_LIST List)
{
PLIST_ENTRY ListEntry = List->ListHead.Flink;
PFILE_SYSTEM_ITEM Item;
PLIST_ENTRY Next;
while (ListEntry != &List->ListHead)
{
Item = CONTAINING_RECORD(ListEntry, FILE_SYSTEM_ITEM, ListEntry);
Next = ListEntry->Flink;
RtlFreeHeap(ProcessHeap, 0, Item);
ListEntry = Next;
}
RtlFreeHeap(ProcessHeap, 0, List);
}
VOID
DrawFileSystemList(
IN PFILE_SYSTEM_LIST List)
{
PLIST_ENTRY ListEntry;
PFILE_SYSTEM_ITEM Item;
COORD coPos;
DWORD Written;
ULONG Index = 0;
CHAR Buffer[128];
ListEntry = List->ListHead.Flink;
while (ListEntry != &List->ListHead)
{
Item = CONTAINING_RECORD(ListEntry, FILE_SYSTEM_ITEM, ListEntry);
coPos.X = List->Left;
coPos.Y = List->Top + (SHORT)Index;
FillConsoleOutputAttribute(StdOutput,
FOREGROUND_WHITE | BACKGROUND_BLUE,
sizeof(Buffer),
coPos,
&Written);
FillConsoleOutputCharacterA(StdOutput,
' ',
sizeof(Buffer),
coPos,
&Written);
if (Item->FileSystemName)
{
if (Item->QuickFormat)
snprintf(Buffer, sizeof(Buffer), MUIGetString(STRING_FORMATDISK1), Item->FileSystemName);
else
snprintf(Buffer, sizeof(Buffer), MUIGetString(STRING_FORMATDISK2), Item->FileSystemName);
}
else
snprintf(Buffer, sizeof(Buffer), MUIGetString(STRING_KEEPFORMAT));
if (ListEntry == &List->Selected->ListEntry)
CONSOLE_SetInvertedTextXY(List->Left,
List->Top + (SHORT)Index,
Buffer);
else
CONSOLE_SetTextXY(List->Left,
List->Top + (SHORT)Index,
Buffer);
Index++;
ListEntry = ListEntry->Flink;
}
}
VOID
ScrollDownFileSystemList(
IN PFILE_SYSTEM_LIST List)
{
if (List->Selected->ListEntry.Flink != &List->ListHead)
{
List->Selected = CONTAINING_RECORD(List->Selected->ListEntry.Flink, FILE_SYSTEM_ITEM, ListEntry);
DrawFileSystemList(List);
}
}
VOID
ScrollUpFileSystemList(
IN PFILE_SYSTEM_LIST List)
{
if (List->Selected->ListEntry.Blink != &List->ListHead)
{
List->Selected = CONTAINING_RECORD(List->Selected->ListEntry.Blink, FILE_SYSTEM_ITEM, ListEntry);
DrawFileSystemList(List);
}
}
/* EOF */

View file

@ -0,0 +1,89 @@
/*
* ReactOS kernel
* Copyright (C) 2003 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/fslist.h
* PURPOSE: Filesystem list functions
* PROGRAMMER: Eric Kohl
* Casper S. Hornstrup (chorns@users.sourceforge.net)
*/
#pragma once
#include <fmifs/fmifs.h>
typedef struct _FILE_SYSTEM_ITEM
{
LIST_ENTRY ListEntry;
LPCWSTR FileSystemName; /* Not owned by the item */
FORMATEX FormatFunc;
CHKDSKEX ChkdskFunc;
BOOLEAN QuickFormat;
} FILE_SYSTEM_ITEM, *PFILE_SYSTEM_ITEM;
typedef struct _FILE_SYSTEM_LIST
{
SHORT Left;
SHORT Top;
PFILE_SYSTEM_ITEM Selected;
LIST_ENTRY ListHead; /* List of FILE_SYSTEM_ITEM */
} FILE_SYSTEM_LIST, *PFILE_SYSTEM_LIST;
VOID
FS_AddProvider(
IN OUT PFILE_SYSTEM_LIST List,
IN LPCWSTR FileSystemName,
IN FORMATEX FormatFunc,
IN CHKDSKEX ChkdskFunc);
PFILE_SYSTEM_ITEM
GetFileSystemByName(
IN PFILE_SYSTEM_LIST List,
IN LPWSTR FileSystemName);
struct _PARTENTRY; // Defined in partlist.h
PFILE_SYSTEM_ITEM
GetFileSystem(
IN PFILE_SYSTEM_LIST FileSystemList,
IN struct _PARTENTRY* PartEntry);
PFILE_SYSTEM_LIST
CreateFileSystemList(
IN SHORT Left,
IN SHORT Top,
IN BOOLEAN ForceFormat,
IN LPCWSTR ForceFileSystem);
VOID
DestroyFileSystemList(
IN PFILE_SYSTEM_LIST List);
VOID
DrawFileSystemList(
IN PFILE_SYSTEM_LIST List);
VOID
ScrollDownFileSystemList(
IN PFILE_SYSTEM_LIST List);
VOID
ScrollUpFileSystemList(
IN PFILE_SYSTEM_LIST List);
/* EOF */

716
base/setup/usetup/genlist.c Normal file
View file

@ -0,0 +1,716 @@
/*
* ReactOS kernel
* Copyright (C) 2004 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/genlist.c
* PURPOSE: Generic list functions
* PROGRAMMER: Eric Kohl
* Christoph von Wittich <christoph at reactos.org>
*/
/* INCLUDES *****************************************************************/
#include "usetup.h"
#define NDEBUG
#include <debug.h>
/* FUNCTIONS ****************************************************************/
typedef struct _GENERIC_LIST_ENTRY
{
LIST_ENTRY Entry;
PGENERIC_LIST List;
PVOID UserData;
CHAR Text[1];
} GENERIC_LIST_ENTRY;
typedef struct _GENERIC_LIST
{
LIST_ENTRY ListHead;
PLIST_ENTRY FirstShown;
PLIST_ENTRY LastShown;
SHORT Left;
SHORT Top;
SHORT Right;
SHORT Bottom;
BOOL Redraw;
PGENERIC_LIST_ENTRY CurrentEntry;
PGENERIC_LIST_ENTRY BackupEntry;
} GENERIC_LIST;
PGENERIC_LIST
CreateGenericList(VOID)
{
PGENERIC_LIST List;
List = (PGENERIC_LIST)RtlAllocateHeap(ProcessHeap,
0,
sizeof(GENERIC_LIST));
if (List == NULL)
return NULL;
InitializeListHead(&List->ListHead);
List->Left = 0;
List->Top = 0;
List->Right = 0;
List->Bottom = 0;
List->Redraw = TRUE;
List->CurrentEntry = NULL;
return List;
}
VOID
DestroyGenericList(
PGENERIC_LIST List,
BOOLEAN FreeUserData)
{
PGENERIC_LIST_ENTRY ListEntry;
PLIST_ENTRY Entry;
/* Release list entries */
while (!IsListEmpty (&List->ListHead))
{
Entry = RemoveHeadList (&List->ListHead);
ListEntry = CONTAINING_RECORD (Entry, GENERIC_LIST_ENTRY, Entry);
/* Release user data */
if (FreeUserData && ListEntry->UserData != NULL)
RtlFreeHeap (ProcessHeap, 0, ListEntry->UserData);
/* Release list entry */
RtlFreeHeap (ProcessHeap, 0, ListEntry);
}
/* Release list head */
RtlFreeHeap (ProcessHeap, 0, List);
}
BOOLEAN
AppendGenericListEntry(
PGENERIC_LIST List,
PCHAR Text,
PVOID UserData,
BOOLEAN Current)
{
PGENERIC_LIST_ENTRY Entry;
Entry = (PGENERIC_LIST_ENTRY)RtlAllocateHeap(ProcessHeap,
0,
sizeof(GENERIC_LIST_ENTRY) + strlen(Text));
if (Entry == NULL)
return FALSE;
strcpy (Entry->Text, Text);
Entry->List = List;
Entry->UserData = UserData;
InsertTailList(&List->ListHead,
&Entry->Entry);
if (Current || List->CurrentEntry == NULL)
{
List->CurrentEntry = Entry;
}
return TRUE;
}
static
VOID
DrawListFrame(
PGENERIC_LIST GenericList)
{
COORD coPos;
DWORD Written;
SHORT i;
/* Draw upper left corner */
coPos.X = GenericList->Left;
coPos.Y = GenericList->Top;
FillConsoleOutputCharacterA (StdOutput,
0xDA, // '+',
1,
coPos,
&Written);
/* Draw upper edge */
coPos.X = GenericList->Left + 1;
coPos.Y = GenericList->Top;
FillConsoleOutputCharacterA (StdOutput,
0xC4, // '-',
GenericList->Right - GenericList->Left - 1,
coPos,
&Written);
/* Draw upper right corner */
coPos.X = GenericList->Right;
coPos.Y = GenericList->Top;
FillConsoleOutputCharacterA (StdOutput,
0xBF, // '+',
1,
coPos,
&Written);
/* Draw left and right edge */
for (i = GenericList->Top + 1; i < GenericList->Bottom; i++)
{
coPos.X = GenericList->Left;
coPos.Y = i;
FillConsoleOutputCharacterA (StdOutput,
0xB3, // '|',
1,
coPos,
&Written);
coPos.X = GenericList->Right;
FillConsoleOutputCharacterA (StdOutput,
0xB3, //'|',
1,
coPos,
&Written);
}
/* Draw lower left corner */
coPos.X = GenericList->Left;
coPos.Y = GenericList->Bottom;
FillConsoleOutputCharacterA (StdOutput,
0xC0, // '+',
1,
coPos,
&Written);
/* Draw lower edge */
coPos.X = GenericList->Left + 1;
coPos.Y = GenericList->Bottom;
FillConsoleOutputCharacterA (StdOutput,
0xC4, // '-',
GenericList->Right - GenericList->Left - 1,
coPos,
&Written);
/* Draw lower right corner */
coPos.X = GenericList->Right;
coPos.Y = GenericList->Bottom;
FillConsoleOutputCharacterA (StdOutput,
0xD9, // '+',
1,
coPos,
&Written);
}
static
VOID
DrawListEntries(
PGENERIC_LIST GenericList)
{
PGENERIC_LIST_ENTRY ListEntry;
PLIST_ENTRY Entry;
COORD coPos;
DWORD Written;
USHORT Width;
coPos.X = GenericList->Left + 1;
coPos.Y = GenericList->Top + 1;
Width = GenericList->Right - GenericList->Left - 1;
Entry = GenericList->FirstShown;
while (Entry != &GenericList->ListHead)
{
ListEntry = CONTAINING_RECORD (Entry, GENERIC_LIST_ENTRY, Entry);
if (coPos.Y == GenericList->Bottom)
break;
GenericList->LastShown = Entry;
FillConsoleOutputAttribute (StdOutput,
(GenericList->CurrentEntry == ListEntry) ?
FOREGROUND_BLUE | BACKGROUND_WHITE :
FOREGROUND_WHITE | BACKGROUND_BLUE,
Width,
coPos,
&Written);
FillConsoleOutputCharacterA (StdOutput,
' ',
Width,
coPos,
&Written);
coPos.X++;
WriteConsoleOutputCharacterA (StdOutput,
ListEntry->Text,
min (strlen(ListEntry->Text), (SIZE_T)Width - 2),
coPos,
&Written);
coPos.X--;
coPos.Y++;
Entry = Entry->Flink;
}
while (coPos.Y < GenericList->Bottom)
{
FillConsoleOutputAttribute (StdOutput,
FOREGROUND_WHITE | BACKGROUND_BLUE,
Width,
coPos,
&Written);
FillConsoleOutputCharacterA (StdOutput,
' ',
Width,
coPos,
&Written);
coPos.Y++;
}
}
static
VOID
DrawScrollBarGenericList(
PGENERIC_LIST GenericList)
{
COORD coPos;
DWORD Written;
coPos.X = GenericList->Right + 1;
coPos.Y = GenericList->Top;
if (GenericList->FirstShown != GenericList->ListHead.Flink)
{
FillConsoleOutputCharacterA (StdOutput,
'\x18',
1,
coPos,
&Written);
}
else
{
FillConsoleOutputCharacterA (StdOutput,
' ',
1,
coPos,
&Written);
}
coPos.Y = GenericList->Bottom;
if (GenericList->LastShown != GenericList->ListHead.Blink)
{
FillConsoleOutputCharacterA (StdOutput,
'\x19',
1,
coPos,
&Written);
}
else
{
FillConsoleOutputCharacterA (StdOutput,
' ',
1,
coPos,
&Written);
}
}
static
VOID
CenterCurrentListItem(
PGENERIC_LIST List)
{
PLIST_ENTRY Entry;
ULONG MaxVisibleItems, ItemCount, i;
if ((List->Top == 0 && List->Bottom == 0) ||
IsListEmpty(&List->ListHead) ||
List->CurrentEntry == NULL)
return;
MaxVisibleItems = (ULONG)(List->Bottom - List->Top - 1);
ItemCount = 0;
Entry = List->ListHead.Flink;
while (Entry != &List->ListHead)
{
ItemCount++;
Entry = Entry->Flink;
}
if (ItemCount > MaxVisibleItems)
{
Entry = &List->CurrentEntry->Entry;
for (i = 0; i < MaxVisibleItems / 2; i++)
{
if (Entry->Blink != &List->ListHead)
Entry = Entry->Blink;
}
List->FirstShown = Entry;
for (i = 0; i < MaxVisibleItems; i++)
{
if (Entry->Flink != &List->ListHead)
Entry = Entry->Flink;
}
List->LastShown = Entry;
}
}
VOID
DrawGenericList(
PGENERIC_LIST List,
SHORT Left,
SHORT Top,
SHORT Right,
SHORT Bottom)
{
List->FirstShown = List->ListHead.Flink;
List->Left = Left;
List->Top = Top;
List->Right = Right;
List->Bottom = Bottom;
DrawListFrame(List);
if (IsListEmpty(&List->ListHead))
return;
CenterCurrentListItem(List);
DrawListEntries(List);
DrawScrollBarGenericList(List);
}
VOID
ScrollPageDownGenericList(
PGENERIC_LIST List)
{
SHORT i;
/* Suspend auto-redraw */
List->Redraw = FALSE;
for (i = List->Top + 1; i < List->Bottom - 1; i++)
{
ScrollDownGenericList (List);
}
/* Update user interface */
DrawListEntries(List);
DrawScrollBarGenericList(List);
/* Re enable auto-redraw */
List->Redraw = TRUE;
}
VOID
ScrollPageUpGenericList(
PGENERIC_LIST List)
{
SHORT i;
/* Suspend auto-redraw */
List->Redraw = FALSE;
for (i = List->Bottom - 1; i > List->Top + 1; i--)
{
ScrollUpGenericList (List);
}
/* Update user interface */
DrawListEntries(List);
DrawScrollBarGenericList(List);
/* Re enable auto-redraw */
List->Redraw = TRUE;
}
VOID
ScrollDownGenericList(
PGENERIC_LIST List)
{
PLIST_ENTRY Entry;
if (List->CurrentEntry == NULL)
return;
if (List->CurrentEntry->Entry.Flink != &List->ListHead)
{
Entry = List->CurrentEntry->Entry.Flink;
if (List->LastShown == &List->CurrentEntry->Entry)
{
List->FirstShown = List->FirstShown->Flink;
List->LastShown = List->LastShown->Flink;
}
List->CurrentEntry = CONTAINING_RECORD (Entry, GENERIC_LIST_ENTRY, Entry);
if (List->Redraw)
{
DrawListEntries(List);
DrawScrollBarGenericList(List);
}
}
}
VOID
ScrollToPositionGenericList(
PGENERIC_LIST List,
ULONG uIndex)
{
PLIST_ENTRY Entry;
ULONG uCount = 0;
if (List->CurrentEntry == NULL || uIndex == 0)
return;
do
{
if (List->CurrentEntry->Entry.Flink != &List->ListHead)
{
Entry = List->CurrentEntry->Entry.Flink;
if (List->LastShown == &List->CurrentEntry->Entry)
{
List->FirstShown = List->FirstShown->Flink;
List->LastShown = List->LastShown->Flink;
}
List->CurrentEntry = CONTAINING_RECORD (Entry, GENERIC_LIST_ENTRY, Entry);
}
uCount++;
}
while (uIndex != uCount);
if (List->Redraw)
{
DrawListEntries(List);
DrawScrollBarGenericList(List);
}
}
VOID
ScrollUpGenericList(
PGENERIC_LIST List)
{
PLIST_ENTRY Entry;
if (List->CurrentEntry == NULL)
return;
if (List->CurrentEntry->Entry.Blink != &List->ListHead)
{
Entry = List->CurrentEntry->Entry.Blink;
if (List->FirstShown == &List->CurrentEntry->Entry)
{
List->FirstShown = List->FirstShown->Blink;
List->LastShown = List->LastShown->Blink;
}
List->CurrentEntry = CONTAINING_RECORD (Entry, GENERIC_LIST_ENTRY, Entry);
if (List->Redraw)
{
DrawListEntries(List);
DrawScrollBarGenericList(List);
}
}
}
VOID
RedrawGenericList(
PGENERIC_LIST List)
{
if (List->CurrentEntry == NULL)
return;
if (List->Redraw)
{
DrawListEntries(List);
DrawScrollBarGenericList(List);
}
}
VOID
SetCurrentListEntry(
PGENERIC_LIST List,
PGENERIC_LIST_ENTRY Entry)
{
if (Entry->List != List)
return;
List->CurrentEntry = Entry;
}
PGENERIC_LIST_ENTRY
GetCurrentListEntry(
PGENERIC_LIST List)
{
return List->CurrentEntry;
}
PGENERIC_LIST_ENTRY
GetFirstListEntry(
PGENERIC_LIST List)
{
PLIST_ENTRY Entry = List->ListHead.Flink;
if (Entry == &List->ListHead)
return NULL;
return CONTAINING_RECORD(Entry, GENERIC_LIST_ENTRY, Entry);
}
PGENERIC_LIST_ENTRY
GetNextListEntry(
PGENERIC_LIST_ENTRY Entry)
{
PLIST_ENTRY Next = Entry->Entry.Flink;
if (Next == &Entry->List->ListHead)
return NULL;
return CONTAINING_RECORD(Next, GENERIC_LIST_ENTRY, Entry);
}
PVOID
GetListEntryUserData(
PGENERIC_LIST_ENTRY List)
{
return List->UserData;
}
LPCSTR
GetListEntryText(
PGENERIC_LIST_ENTRY List)
{
return List->Text;
}
VOID
GenericListKeyPress(
PGENERIC_LIST GenericList,
CHAR AsciiChar)
{
PGENERIC_LIST_ENTRY ListEntry;
PGENERIC_LIST_ENTRY OldListEntry;
BOOLEAN Flag = FALSE;
ListEntry = GenericList->CurrentEntry;
OldListEntry = GenericList->CurrentEntry;
GenericList->Redraw = FALSE;
if ((strlen(ListEntry->Text) > 0) && (tolower(ListEntry->Text[0]) == AsciiChar) &&
(GenericList->CurrentEntry->Entry.Flink != &GenericList->ListHead))
{
ScrollDownGenericList(GenericList);
ListEntry = GenericList->CurrentEntry;
if ((strlen(ListEntry->Text) > 0) && (tolower(ListEntry->Text[0]) == AsciiChar))
goto End;
}
while (GenericList->CurrentEntry->Entry.Blink != &GenericList->ListHead)
ScrollUpGenericList(GenericList);
ListEntry = GenericList->CurrentEntry;
for (;;)
{
if ((strlen(ListEntry->Text) > 0) && (tolower(ListEntry->Text[0]) == AsciiChar))
{
Flag = TRUE;
break;
}
if (GenericList->CurrentEntry->Entry.Flink == &GenericList->ListHead)
break;
ScrollDownGenericList(GenericList);
ListEntry = GenericList->CurrentEntry;
}
if (!Flag)
{
while (GenericList->CurrentEntry->Entry.Blink != &GenericList->ListHead)
{
if (GenericList->CurrentEntry != OldListEntry)
ScrollUpGenericList(GenericList);
else
break;
}
}
End:
DrawListEntries(GenericList);
DrawScrollBarGenericList(GenericList);
GenericList->Redraw = TRUE;
}
VOID
SaveGenericListState(
PGENERIC_LIST List)
{
List->BackupEntry = List->CurrentEntry;
}
VOID
RestoreGenericListState(
PGENERIC_LIST List)
{
List->CurrentEntry = List->BackupEntry;
}
BOOL
GenericListHasSingleEntry(
PGENERIC_LIST List)
{
if (!IsListEmpty(&List->ListHead) && List->ListHead.Flink == List->ListHead.Blink)
return TRUE;
/* if both list head pointers (which normally point to the first and last list member, respectively)
point to the same entry then it means that there's just a single thing in there, otherwise... false! */
return FALSE;
}
/* EOF */

124
base/setup/usetup/genlist.h Normal file
View file

@ -0,0 +1,124 @@
/*
* ReactOS kernel
* Copyright (C) 2004 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/genlist.h
* PURPOSE: Generic list functions
* PROGRAMMER: Eric Kohl
*/
#pragma once
struct _GENERIC_LIST_ENTRY;
typedef struct _GENERIC_LIST_ENTRY *PGENERIC_LIST_ENTRY;
struct _GENERIC_LIST;
typedef struct _GENERIC_LIST *PGENERIC_LIST;
PGENERIC_LIST
CreateGenericList(VOID);
VOID
DestroyGenericList(
PGENERIC_LIST List,
BOOLEAN FreeUserData);
BOOLEAN
AppendGenericListEntry(
PGENERIC_LIST List,
PCHAR Text,
PVOID UserData,
BOOLEAN Current);
VOID
DrawGenericList(
PGENERIC_LIST List,
SHORT Left,
SHORT Top,
SHORT Right,
SHORT Bottom);
VOID
ScrollDownGenericList(
PGENERIC_LIST List);
VOID
ScrollUpGenericList(
PGENERIC_LIST List);
VOID
ScrollPageDownGenericList(
PGENERIC_LIST List);
VOID
ScrollPageUpGenericList(
PGENERIC_LIST List);
VOID
ScrollToPositionGenericList(
PGENERIC_LIST List,
ULONG uIndex);
VOID
RedrawGenericList(
PGENERIC_LIST List);
VOID
SetCurrentListEntry(
PGENERIC_LIST List,
PGENERIC_LIST_ENTRY Entry);
PGENERIC_LIST_ENTRY
GetCurrentListEntry(
PGENERIC_LIST List);
PGENERIC_LIST_ENTRY
GetFirstListEntry(
PGENERIC_LIST List);
PGENERIC_LIST_ENTRY
GetNextListEntry(
PGENERIC_LIST_ENTRY Entry);
PVOID
GetListEntryUserData(
PGENERIC_LIST_ENTRY List);
LPCSTR
GetListEntryText(
PGENERIC_LIST_ENTRY List);
VOID
SaveGenericListState(
PGENERIC_LIST List);
VOID
RestoreGenericListState(
PGENERIC_LIST List);
VOID
GenericListKeyPress(
PGENERIC_LIST List,
CHAR AsciChar);
BOOL
GenericListHasSingleEntry(
PGENERIC_LIST List);
/* EOF */

31
base/setup/usetup/host.h Normal file
View file

@ -0,0 +1,31 @@
#ifdef __REACTOS__
#include "native/host_native.h"
#define HOST_InitConsole NATIVE_InitConsole
#define HOST_InitMemory NATIVE_InitMemory
#define HOST_CreateFileSystemList NATIVE_CreateFileSystemList
#else
#include "win32/host_win32.h"
#define HOST_InitConsole WIN32_InitConsole
#define HOST_InitMemory WIN32_InitMemory
#define HOST_CreateFileSystemList WIN32_CreateFileSystemList
#endif
BOOLEAN
HOST_InitConsole(VOID);
BOOLEAN
HOST_InitMemory(VOID);
BOOLEAN
HOST_CreateFileSystemList(
IN PFILE_SYSTEM_LIST List);
BOOLEAN
HOST_FormatPartition(
IN PFILE_SYSTEM_ITEM FileSystem,
IN PCUNICODE_STRING DriveRoot,
IN PFMIFSCALLBACK Callback);

214
base/setup/usetup/inffile.c Normal file
View file

@ -0,0 +1,214 @@
/*
* ReactOS kernel
* Copyright (C) 2002 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/inffile.c
* PURPOSE: .inf files support functions
* PROGRAMMER: Hervé Poussineau
*/
/* INCLUDES ******************************************************************/
#include "usetup.h"
#define NDEBUG
#include <debug.h>
/* FUNCTIONS *****************************************************************/
#ifdef __REACTOS__
BOOL
WINAPI
InfpFindFirstLineW(
IN HINF InfHandle,
IN PCWSTR Section,
IN PCWSTR Key,
IN OUT PINFCONTEXT Context)
{
PINFCONTEXT pContext;
BOOL ret;
ret = InfFindFirstLine(InfHandle, Section, Key, &pContext);
if (!ret)
return FALSE;
memcpy(Context, pContext, sizeof(INFCONTEXT));
InfFreeContext(pContext);
return TRUE;
}
HINF
WINAPI
InfpOpenInfFileW(
IN PCWSTR FileName,
IN PCWSTR InfClass,
IN DWORD InfStyle,
IN LCID LocaleId,
OUT PUINT ErrorLine)
{
HINF hInf = NULL;
UNICODE_STRING FileNameU;
ULONG ErrorLineUL;
NTSTATUS Status;
RtlInitUnicodeString(&FileNameU, FileName);
Status = InfOpenFile(&hInf,
&FileNameU,
LANGIDFROMLCID(LocaleId),
&ErrorLineUL);
*ErrorLine = (UINT)ErrorLineUL;
if (!NT_SUCCESS(Status))
return INVALID_HANDLE_VALUE;
return hInf;
}
#endif /* __REACTOS__ */
BOOLEAN
INF_GetData(
IN PINFCONTEXT Context,
OUT PWCHAR *Key,
OUT PWCHAR *Data)
{
#ifdef __REACTOS__
return InfGetData(Context, Key, Data);
#else
static PWCHAR pLastCallData[4] = { NULL, NULL, NULL, NULL };
static DWORD currentIndex = 0;
DWORD dwSize, i;
BOOL ret;
currentIndex ^= 2;
if (Key)
*Key = NULL;
if (Data)
*Data = NULL;
if (SetupGetFieldCount(Context) != 1)
return FALSE;
for (i = 0; i <= 1; i++)
{
ret = SetupGetStringFieldW(Context,
i,
NULL,
0,
&dwSize);
if (!ret)
return FALSE;
HeapFree(GetProcessHeap(), 0, pLastCallData[i + currentIndex]);
pLastCallData[i + currentIndex] = HeapAlloc(GetProcessHeap(), 0, dwSize * sizeof(WCHAR));
ret = SetupGetStringFieldW(Context,
i,
pLastCallData[i + currentIndex],
dwSize,
NULL);
if (!ret)
return FALSE;
}
if (Key)
*Key = pLastCallData[0 + currentIndex];
if (Data)
*Data = pLastCallData[1 + currentIndex];
return TRUE;
#endif /* !__REACTOS__ */
}
BOOLEAN
INF_GetDataField(
IN PINFCONTEXT Context,
IN ULONG FieldIndex,
OUT PWCHAR *Data)
{
#ifdef __REACTOS__
return InfGetDataField(Context, FieldIndex, Data);
#else
static PWCHAR pLastCallsData[] = { NULL, NULL, NULL };
static DWORD NextIndex = 0;
DWORD dwSize;
BOOL ret;
*Data = NULL;
ret = SetupGetStringFieldW(Context,
FieldIndex,
NULL,
0,
&dwSize);
if (!ret)
return FALSE;
HeapFree(GetProcessHeap(), 0, pLastCallsData[NextIndex]);
pLastCallsData[NextIndex] = HeapAlloc(GetProcessHeap(), 0, dwSize * sizeof(WCHAR));
ret = SetupGetStringFieldW(Context,
FieldIndex,
pLastCallsData[NextIndex],
dwSize,
NULL);
if (!ret)
return FALSE;
*Data = pLastCallsData[NextIndex];
NextIndex = (NextIndex + 1) % (sizeof(pLastCallsData) / sizeof(pLastCallsData[0]));
return TRUE;
#endif /* !__REACTOS__ */
}
HINF WINAPI
INF_OpenBufferedFileA(
IN PSTR FileBuffer,
IN ULONG FileSize,
IN PCSTR InfClass,
IN DWORD InfStyle,
IN LCID LocaleId,
OUT PUINT ErrorLine)
{
#ifdef __REACTOS__
HINF hInf = NULL;
ULONG ErrorLineUL;
NTSTATUS Status;
Status = InfOpenBufferedFile(&hInf,
FileBuffer,
FileSize,
LANGIDFROMLCID(LocaleId),
&ErrorLineUL);
*ErrorLine = (UINT)ErrorLineUL;
if (!NT_SUCCESS(Status))
return INVALID_HANDLE_VALUE;
return hInf;
#else
return INVALID_HANDLE_VALUE;
#endif /* !__REACTOS__ */
}
/* EOF */

View file

@ -0,0 +1,95 @@
/*
* ReactOS kernel
* Copyright (C) 2002 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/inffile.h
* PURPOSE: .inf files support functions
* PROGRAMMER: Hervé Poussineau
*/
#pragma once
#ifndef __REACTOS__
#include <setupapi.h>
#else /* __REACTOS__ */
#include <infcommon.h>
#define SetupFindFirstLineW InfpFindFirstLineW
#define SetupGetFieldCount InfGetFieldCount
#define SetupGetIntField InfGetIntField
#define SetupOpenInfFileW InfpOpenInfFileW
#define INF_STYLE_WIN4 0x00000002
/* FIXME: this structure is the one used in inflib, not in setupapi
* Delete it once we don't use inflib anymore */
typedef struct _INFCONTEXT
{
HINF Inf;
HINF CurrentInf;
UINT Section;
UINT Line;
} INFCONTEXT;
C_ASSERT(sizeof(INFCONTEXT) == 2 * sizeof(PVOID) + 2 * sizeof(UINT));
BOOL
WINAPI
InfpFindFirstLineW(
IN HINF InfHandle,
IN PCWSTR Section,
IN PCWSTR Key,
IN OUT PINFCONTEXT Context);
HINF
WINAPI
InfpOpenInfFileW(
IN PCWSTR FileName,
IN PCWSTR InfClass,
IN DWORD InfStyle,
IN LCID LocaleId,
OUT PUINT ErrorLine);
#endif /* __REACTOS__ */
BOOLEAN
INF_GetData(
IN PINFCONTEXT Context,
OUT PWCHAR *Key,
OUT PWCHAR *Data);
BOOLEAN
INF_GetDataField(
IN PINFCONTEXT Context,
IN ULONG FieldIndex,
OUT PWCHAR *Data);
HINF WINAPI
INF_OpenBufferedFileA(
IN PSTR FileBuffer,
IN ULONG FileSize,
IN PCSTR InfClass,
IN DWORD InfStyle,
IN LCID LocaleId,
OUT PUINT ErrorLine);
/* EOF */

1118
base/setup/usetup/inicache.c Normal file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,135 @@
/*
* ReactOS kernel
* Copyright (C) 2002 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/inicache.h
* PURPOSE: INI file parser that caches contents of INI file in memory
* PROGRAMMER: Royce Mitchell III
* Eric Kohl
*/
#pragma once
typedef struct _INICACHEKEY
{
PWCHAR Name;
PWCHAR Data;
struct _INICACHEKEY *Next;
struct _INICACHEKEY *Prev;
} INICACHEKEY, *PINICACHEKEY;
typedef struct _INICACHESECTION
{
PWCHAR Name;
PINICACHEKEY FirstKey;
PINICACHEKEY LastKey;
struct _INICACHESECTION *Next;
struct _INICACHESECTION *Prev;
} INICACHESECTION, *PINICACHESECTION;
typedef struct _INICACHE
{
PINICACHESECTION FirstSection;
PINICACHESECTION LastSection;
} INICACHE, *PINICACHE;
typedef struct _PINICACHEITERATOR
{
PINICACHESECTION Section;
PINICACHEKEY Key;
} INICACHEITERATOR, *PINICACHEITERATOR;
typedef enum
{
INSERT_FIRST,
INSERT_BEFORE,
INSERT_AFTER,
INSERT_LAST
} INSERTION_TYPE;
/* FUNCTIONS ****************************************************************/
NTSTATUS
IniCacheLoad(
PINICACHE *Cache,
PWCHAR FileName,
BOOLEAN String);
VOID
IniCacheDestroy(
PINICACHE Cache);
PINICACHESECTION
IniCacheGetSection(
PINICACHE Cache,
PWCHAR Name);
NTSTATUS
IniCacheGetKey(
PINICACHESECTION Section,
PWCHAR KeyName,
PWCHAR *KeyData);
PINICACHEITERATOR
IniCacheFindFirstValue(
PINICACHESECTION Section,
PWCHAR *KeyName,
PWCHAR *KeyData);
BOOLEAN
IniCacheFindNextValue(
PINICACHEITERATOR Iterator,
PWCHAR *KeyName,
PWCHAR *KeyData);
VOID
IniCacheFindClose(
PINICACHEITERATOR Iterator);
PINICACHEKEY
IniCacheInsertKey(
PINICACHESECTION Section,
PINICACHEKEY AnchorKey,
INSERTION_TYPE InsertionType,
PWCHAR Name,
PWCHAR Data);
PINICACHE
IniCacheCreate(VOID);
NTSTATUS
IniCacheSave(
PINICACHE Cache,
PWCHAR FileName);
PINICACHESECTION
IniCacheAppendSection(
PINICACHE Cache,
PWCHAR Name);
/* EOF */

View file

@ -0,0 +1,794 @@
/*
* ReactOS kernel
* Copyright (C) 2002 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/interface/consup.c
* PURPOSE: Console support functions
* PROGRAMMER: Eric Kohl
*/
/* INCLUDES ******************************************************************/
#include <usetup.h>
#define NDEBUG
#include <debug.h>
/* GLOBALS ******************************************************************/
HANDLE StdInput = INVALID_HANDLE_VALUE;
HANDLE StdOutput = INVALID_HANDLE_VALUE;
SHORT xScreen = 0;
SHORT yScreen = 0;
/* FUNCTIONS *****************************************************************/
BOOLEAN
CONSOLE_Init(
VOID)
{
CONSOLE_SCREEN_BUFFER_INFO csbi;
if (!HOST_InitConsole())
return FALSE;
StdInput = GetStdHandle(STD_INPUT_HANDLE);
StdOutput = GetStdHandle(STD_OUTPUT_HANDLE);
if (!GetConsoleScreenBufferInfo(StdOutput, &csbi))
return FALSE;
xScreen = csbi.dwSize.X;
yScreen = 50;//csbi.dwSize.Y;
return TRUE;
}
VOID
CONSOLE_ConInKey(
OUT PINPUT_RECORD Buffer)
{
DWORD Read;
while (TRUE)
{
ReadConsoleInput(StdInput, Buffer, 1, &Read);
if ((Buffer->EventType == KEY_EVENT)
&& (Buffer->Event.KeyEvent.bKeyDown != FALSE))
break;
}
}
VOID
CONSOLE_ConOutChar(
IN CHAR c)
{
DWORD Written;
WriteConsole(
StdOutput,
&c,
1,
&Written,
NULL);
}
VOID
CONSOLE_ConOutPuts(
IN LPCSTR szText)
{
DWORD Written;
WriteConsole(
StdOutput,
szText,
(ULONG)strlen(szText),
&Written,
NULL);
WriteConsole(
StdOutput,
"\n",
1,
&Written,
NULL);
}
VOID
CONSOLE_ConOutPrintf(
IN LPCSTR szFormat, ...)
{
CHAR szOut[256];
DWORD dwWritten;
va_list arg_ptr;
va_start(arg_ptr, szFormat);
vsprintf(szOut, szFormat, arg_ptr);
va_end(arg_ptr);
WriteConsole(
StdOutput,
szOut,
(ULONG)strlen(szOut),
&dwWritten,
NULL);
}
BOOL
CONSOLE_Flush(VOID)
{
return FlushConsoleInputBuffer(StdInput);
}
VOID
CONSOLE_GetCursorXY(
PSHORT x,
PSHORT y)
{
CONSOLE_SCREEN_BUFFER_INFO csbi;
GetConsoleScreenBufferInfo(GetStdHandle(STD_OUTPUT_HANDLE), &csbi);
*x = csbi.dwCursorPosition.X;
*y = csbi.dwCursorPosition.Y;
}
SHORT
CONSOLE_GetCursorX(VOID)
{
CONSOLE_SCREEN_BUFFER_INFO csbi;
GetConsoleScreenBufferInfo(StdOutput, &csbi);
return csbi.dwCursorPosition.X;
}
SHORT
CONSOLE_GetCursorY(VOID)
{
CONSOLE_SCREEN_BUFFER_INFO csbi;
GetConsoleScreenBufferInfo(StdOutput, &csbi);
return csbi.dwCursorPosition.Y;
}
VOID
CONSOLE_SetCursorType(
IN BOOL bInsert,
IN BOOL bVisible)
{
CONSOLE_CURSOR_INFO cci;
cci.dwSize = bInsert ? 10 : 99;
cci.bVisible = bVisible;
SetConsoleCursorInfo(StdOutput, &cci);
}
VOID
CONSOLE_SetCursorXY(
IN SHORT x,
IN SHORT y)
{
COORD coPos;
coPos.X = x;
coPos.Y = y;
SetConsoleCursorPosition(StdOutput, coPos);
}
VOID
CONSOLE_ClearScreen(VOID)
{
COORD coPos;
DWORD Written;
coPos.X = 0;
coPos.Y = 0;
FillConsoleOutputAttribute(
StdOutput,
FOREGROUND_WHITE | BACKGROUND_BLUE,
xScreen * yScreen,
coPos,
&Written);
FillConsoleOutputCharacterA(
StdOutput,
' ',
xScreen * yScreen,
coPos,
&Written);
}
VOID
CONSOLE_InvertTextXY(
IN SHORT x,
IN SHORT y,
IN SHORT col,
IN SHORT row)
{
COORD coPos;
DWORD Written;
for (coPos.Y = y; coPos.Y < y + row; coPos.Y++)
{
coPos.X = x;
FillConsoleOutputAttribute(
StdOutput,
FOREGROUND_BLUE | BACKGROUND_WHITE,
col,
coPos,
&Written);
}
}
VOID
CONSOLE_NormalTextXY(
IN SHORT x,
IN SHORT y,
IN SHORT col,
IN SHORT row)
{
COORD coPos;
DWORD Written;
for (coPos.Y = y; coPos.Y < y + row; coPos.Y++)
{
coPos.X = x;
FillConsoleOutputAttribute(
StdOutput,
FOREGROUND_WHITE | BACKGROUND_BLUE,
col,
coPos,
&Written);
}
}
VOID
CONSOLE_SetTextXY(
IN SHORT x,
IN SHORT y,
IN LPCSTR Text)
{
COORD coPos;
DWORD Written;
coPos.X = x;
coPos.Y = y;
WriteConsoleOutputCharacterA(
StdOutput,
Text,
(ULONG)strlen(Text),
coPos,
&Written);
}
static
VOID
CONSOLE_ClearTextXY(IN SHORT x,
IN SHORT y,
IN SHORT Length)
{
COORD coPos;
DWORD Written;
coPos.X = x;
coPos.Y = y;
FillConsoleOutputCharacterA(StdOutput,
' ',
Length,
coPos,
&Written);
}
VOID
CONSOLE_SetInputTextXY(
IN SHORT x,
IN SHORT y,
IN SHORT len,
IN LPCWSTR Text)
{
COORD coPos;
SHORT Length;
DWORD Written;
coPos.X = x;
coPos.Y = y;
Length = (SHORT)wcslen(Text);
if (Length > len - 1)
Length = len - 1;
FillConsoleOutputAttribute(
StdOutput,
BACKGROUND_WHITE,
len,
coPos,
&Written);
WriteConsoleOutputCharacterW(
StdOutput,
Text,
(ULONG)Length,
coPos,
&Written);
coPos.X += Length;
FillConsoleOutputCharacterA(
StdOutput,
'_',
1,
coPos,
&Written);
if (len > Length + 1)
{
coPos.X++;
FillConsoleOutputCharacterA(
StdOutput,
' ',
len - Length - 1,
coPos,
&Written);
}
}
VOID
CONSOLE_SetUnderlinedTextXY(
IN SHORT x,
IN SHORT y,
IN LPCSTR Text)
{
COORD coPos;
DWORD Length;
DWORD Written;
coPos.X = x;
coPos.Y = y;
Length = (ULONG)strlen(Text);
WriteConsoleOutputCharacterA(
StdOutput,
Text,
Length,
coPos,
&Written);
coPos.Y++;
FillConsoleOutputCharacterA(
StdOutput,
0xCD,
Length,
coPos,
&Written);
}
VOID
CONSOLE_SetStatusText(
IN LPCSTR fmt, ...)
{
CHAR Buffer[128];
va_list ap;
COORD coPos;
DWORD Written;
va_start(ap, fmt);
vsprintf(Buffer, fmt, ap);
va_end(ap);
coPos.X = 0;
coPos.Y = yScreen - 1;
FillConsoleOutputAttribute(
StdOutput,
BACKGROUND_WHITE,
xScreen,
coPos,
&Written);
FillConsoleOutputCharacterA(
StdOutput,
' ',
xScreen,
coPos,
&Written);
WriteConsoleOutputCharacterA(
StdOutput,
Buffer,
(ULONG)strlen(Buffer),
coPos,
&Written);
}
VOID
CONSOLE_SetStatusTextX(
IN SHORT x,
IN LPCSTR fmt, ...)
{
CHAR Buffer[128];
va_list ap;
COORD coPos;
DWORD Written;
va_start(ap, fmt);
vsprintf(Buffer, fmt, ap);
va_end(ap);
coPos.X = 0;
coPos.Y = yScreen - 1;
FillConsoleOutputAttribute(
StdOutput,
BACKGROUND_WHITE,
xScreen,
coPos,
&Written);
FillConsoleOutputCharacterA(
StdOutput,
' ',
xScreen,
coPos,
&Written);
coPos.X = x;
WriteConsoleOutputCharacterA(
StdOutput,
Buffer,
(ULONG)strlen(Buffer),
coPos,
&Written);
}
static
VOID
CONSOLE_ClearStatusTextX(IN SHORT x,
IN SHORT Length)
{
COORD coPos;
DWORD Written;
coPos.X = x;
coPos.Y = yScreen - 1;
FillConsoleOutputCharacterA(StdOutput,
' ',
Length,
coPos,
&Written);
}
VOID
CONSOLE_SetStatusTextAutoFitX(
IN SHORT x,
IN LPCSTR fmt, ...)
{
CHAR Buffer[128];
DWORD Length;
va_list ap;
va_start(ap, fmt);
vsprintf(Buffer, fmt, ap);
va_end(ap);
Length = (ULONG)strlen(Buffer);
if (Length + x <= 79)
{
CONSOLE_SetStatusTextX (x , Buffer);
}
else
{
CONSOLE_SetStatusTextX (79 - Length , Buffer);
}
}
VOID
CONSOLE_SetInvertedTextXY(
IN SHORT x,
IN SHORT y,
IN LPCSTR Text)
{
COORD coPos;
DWORD Length;
DWORD Written;
coPos.X = x;
coPos.Y = y;
Length = (ULONG)strlen(Text);
FillConsoleOutputAttribute(
StdOutput,
FOREGROUND_BLUE | BACKGROUND_WHITE,
Length,
coPos,
&Written);
WriteConsoleOutputCharacterA(
StdOutput,
Text,
Length,
coPos,
&Written);
}
VOID
CONSOLE_SetHighlightedTextXY(
IN SHORT x,
IN SHORT y,
IN LPCSTR Text)
{
COORD coPos;
DWORD Length;
DWORD Written;
coPos.X = x;
coPos.Y = y;
Length = (ULONG)strlen(Text);
FillConsoleOutputAttribute(
StdOutput,
FOREGROUND_WHITE | FOREGROUND_INTENSITY | BACKGROUND_BLUE,
Length,
coPos,
&Written);
WriteConsoleOutputCharacterA(
StdOutput,
Text,
Length,
coPos,
&Written);
}
VOID
CONSOLE_PrintTextXY(
IN SHORT x,
IN SHORT y,
IN LPCSTR fmt, ...)
{
CHAR buffer[512];
va_list ap;
COORD coPos;
DWORD Written;
va_start(ap, fmt);
vsprintf(buffer, fmt, ap);
va_end(ap);
coPos.X = x;
coPos.Y = y;
WriteConsoleOutputCharacterA(
StdOutput,
buffer,
(ULONG)strlen(buffer),
coPos,
&Written);
}
VOID
CONSOLE_PrintTextXYN(
IN SHORT x,
IN SHORT y,
IN SHORT len,
IN LPCSTR fmt, ...)
{
CHAR buffer[512];
va_list ap;
COORD coPos;
SHORT Length;
DWORD Written;
va_start(ap, fmt);
vsprintf(buffer, fmt, ap);
va_end(ap);
coPos.X = x;
coPos.Y = y;
Length = (SHORT)strlen(buffer);
if (Length > len - 1)
Length = len - 1;
WriteConsoleOutputCharacterA(
StdOutput,
buffer,
Length,
coPos,
&Written);
coPos.X += Length;
if (len > Length)
{
FillConsoleOutputCharacterA(
StdOutput,
' ',
len - Length,
coPos,
&Written);
}
}
VOID
CONSOLE_SetStyledText(
IN SHORT x,
IN SHORT y,
IN INT Flags,
IN LPCSTR Text)
{
COORD coPos;
DWORD Length;
coPos.X = x;
coPos.Y = y;
Length = (ULONG)strlen(Text);
if (Flags & TEXT_TYPE_STATUS)
{
coPos.X = x;
coPos.Y = yScreen - 1;
}
else /* TEXT_TYPE_REGULAR (Default) */
{
coPos.X = x;
coPos.Y = y;
}
if (Flags & TEXT_ALIGN_CENTER)
{
coPos.X = (xScreen - Length) /2;
}
else if(Flags & TEXT_ALIGN_RIGHT)
{
coPos.X = coPos.X - Length;
if (Flags & TEXT_PADDING_SMALL)
{
coPos.X -= 1;
}
else if (Flags & TEXT_PADDING_MEDIUM)
{
coPos.X -= 2;
}
else if (Flags & TEXT_PADDING_BIG)
{
coPos.X -= 3;
}
}
else /* TEXT_ALIGN_LEFT (Default) */
{
if (Flags & TEXT_PADDING_SMALL)
{
coPos.X += 1;
}
else if (Flags & TEXT_PADDING_MEDIUM)
{
coPos.X += 2;
}
else if (Flags & TEXT_PADDING_BIG)
{
coPos.X += 3;
}
}
if (Flags & TEXT_TYPE_STATUS)
{
CONSOLE_SetStatusTextX(coPos.X, Text);
}
else /* TEXT_TYPE_REGULAR (Default) */
{
if (Flags & TEXT_STYLE_HIGHLIGHT)
{
CONSOLE_SetHighlightedTextXY(coPos.X, coPos.Y, Text);
}
else if (Flags & TEXT_STYLE_UNDERLINE)
{
CONSOLE_SetUnderlinedTextXY(coPos.X, coPos.Y, Text);
}
else /* TEXT_STYLE_NORMAL (Default) */
{
CONSOLE_SetTextXY(coPos.X, coPos.Y, Text);
}
}
}
VOID
CONSOLE_ClearStyledText(IN SHORT x,
IN SHORT y,
IN INT Flags,
IN SHORT Length)
{
COORD coPos;
coPos.X = x;
coPos.Y = y;
if (Flags & TEXT_TYPE_STATUS)
{
coPos.X = x;
coPos.Y = yScreen - 1;
}
else /* TEXT_TYPE_REGULAR (Default) */
{
coPos.X = x;
coPos.Y = y;
}
if (Flags & TEXT_ALIGN_CENTER)
{
coPos.X = (xScreen - Length) /2;
}
else if(Flags & TEXT_ALIGN_RIGHT)
{
coPos.X = coPos.X - Length;
if (Flags & TEXT_PADDING_SMALL)
{
coPos.X -= 1;
}
else if (Flags & TEXT_PADDING_MEDIUM)
{
coPos.X -= 2;
}
else if (Flags & TEXT_PADDING_BIG)
{
coPos.X -= 3;
}
}
else /* TEXT_ALIGN_LEFT (Default) */
{
if (Flags & TEXT_PADDING_SMALL)
{
coPos.X += 1;
}
else if (Flags & TEXT_PADDING_MEDIUM)
{
coPos.X += 2;
}
else if (Flags & TEXT_PADDING_BIG)
{
coPos.X += 3;
}
}
if (Flags & TEXT_TYPE_STATUS)
{
CONSOLE_ClearStatusTextX(coPos.X, Length);
}
else /* TEXT_TYPE_REGULAR (Default) */
{
CONSOLE_ClearTextXY(coPos.X, coPos.Y, Length);
}
}
/* EOF */

View file

@ -0,0 +1,193 @@
/*
* ReactOS kernel
* Copyright (C) 2002 ReactOS Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/interface/consup.h
* PURPOSE: Console support functions
* PROGRAMMER: Eric Kohl
*/
#pragma once
#define FOREGROUND_WHITE (FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE)
#define FOREGROUND_YELLOW (FOREGROUND_INTENSITY | FOREGROUND_RED | FOREGROUND_GREEN)
#define BACKGROUND_WHITE (BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE)
/* Text style */
#define TEXT_STYLE_NORMAL 0x00000001
#define TEXT_STYLE_HIGHLIGHT 0x00000002
#define TEXT_STYLE_UNDERLINE 0x00000004
/* Text type */
#define TEXT_TYPE_REGULAR 0x00000008
#define TEXT_TYPE_STATUS 0x00000010
/* Text align */
#define TEXT_ALIGN_DEFAULT 0x00000020
#define TEXT_ALIGN_RIGHT 0x00000040
#define TEXT_ALIGN_LEFT 0x00000080
#define TEXT_ALIGN_CENTER 0x00000100
/* Text padding */
#define TEXT_PADDING_SMALL 0x00000200 /* One space */
#define TEXT_PADDING_MEDIUM 0x00000400 /* Two spaces */
#define TEXT_PADDING_BIG 0x00000800 /* Three spaces */
extern HANDLE StdInput, StdOutput;
extern SHORT xScreen, yScreen;
BOOLEAN
CONSOLE_Init(
VOID);
VOID
CONSOLE_ClearScreen(VOID);
VOID
CONSOLE_ConInKey(
OUT PINPUT_RECORD Buffer);
VOID
CONSOLE_ConOutChar(
IN CHAR c);
VOID
CONSOLE_ConOutPrintf(
IN LPCSTR szFormat, ...);
VOID
CONSOLE_ConOutPuts(
IN LPCSTR szText);
BOOL
CONSOLE_Flush(VOID);
VOID
CONSOLE_GetCursorXY(
PSHORT x,
PSHORT y);
SHORT
CONSOLE_GetCursorX(VOID);
SHORT
CONSOLE_GetCursorY(VOID);
VOID
CONSOLE_InvertTextXY(
IN SHORT x,
IN SHORT y,
IN SHORT col,
IN SHORT row);
VOID
CONSOLE_NormalTextXY(
IN SHORT x,
IN SHORT y,
IN SHORT col,
IN SHORT row);
VOID
CONSOLE_PrintTextXY(
IN SHORT x,
IN SHORT y,
IN LPCSTR fmt, ...);
VOID
CONSOLE_PrintTextXYN(
IN SHORT x,
IN SHORT y,
IN SHORT len,
IN LPCSTR fmt, ...);
VOID
CONSOLE_SetCursorType(
IN BOOL bInsert,
IN BOOL bVisible);
VOID
CONSOLE_SetCursorXY(
IN SHORT x,
IN SHORT y);
VOID
CONSOLE_SetCursorXY(
IN SHORT x,
IN SHORT y);
VOID
CONSOLE_SetHighlightedTextXY(
IN SHORT x,
IN SHORT y,
IN LPCSTR Text);
VOID
CONSOLE_SetInputTextXY(
IN SHORT x,
IN SHORT y,
IN SHORT len,
IN LPCWSTR Text);
VOID
CONSOLE_SetInvertedTextXY(
IN SHORT x,
IN SHORT y,
IN LPCSTR Text);
VOID
CONSOLE_SetStatusText(
IN LPCSTR fmt, ...);
VOID
CONSOLE_SetStatusTextX(
IN SHORT x,
IN LPCSTR fmt, ...);
VOID
CONSOLE_SetStatusTextAutoFitX(
IN SHORT x,
IN LPCSTR fmt, ...);
VOID
CONSOLE_SetTextXY(
IN SHORT x,
IN SHORT y,
IN LPCSTR Text);
VOID
CONSOLE_SetUnderlinedTextXY(
IN SHORT x,
IN SHORT y,
IN LPCSTR Text);
VOID
CONSOLE_SetStyledText(
IN SHORT x,
IN SHORT y,
IN INT Flags,
IN LPCSTR Text);
VOID
CONSOLE_ClearStyledText(IN SHORT x,
IN SHORT y,
IN INT Flags,
IN SHORT Length);
/* EOF */

View file

@ -0,0 +1,420 @@
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS text-mode setup
* FILE: base/setup/usetup/interface/devinst.c
* PURPOSE: Device installation
* PROGRAMMER: Hervé Poussineau (hpoussin@reactos.org)
*/
#include <usetup.h>
#define NDEBUG
#include <debug.h>
#define INITGUID
#include <guiddef.h>
#include <libs/umpnpmgr/sysguid.h>
BOOLEAN
ResetDevice(
IN LPCWSTR DeviceId)
{
PLUGPLAY_CONTROL_RESET_DEVICE_DATA ResetDeviceData;
NTSTATUS Status;
RtlInitUnicodeString(&ResetDeviceData.DeviceInstance, DeviceId);
Status = NtPlugPlayControl(PlugPlayControlResetDevice, &ResetDeviceData, sizeof(PLUGPLAY_CONTROL_RESET_DEVICE_DATA));
if (!NT_SUCCESS(Status))
{
DPRINT1("NtPlugPlayControl() failed with status 0x%08x\n", Status);
return FALSE;
}
return TRUE;
}
BOOLEAN
InstallDriver(
IN HINF hInf,
IN HANDLE hServices,
IN HANDLE hDeviceKey,
IN LPCWSTR DeviceId,
IN LPCWSTR HardwareId)
{
UNICODE_STRING PathPrefix = RTL_CONSTANT_STRING(L"System32\\DRIVERS\\");
UNICODE_STRING ServiceU = RTL_CONSTANT_STRING(L"Service");
UNICODE_STRING ErrorControlU = RTL_CONSTANT_STRING(L"ErrorControl");
UNICODE_STRING ImagePathU = RTL_CONSTANT_STRING(L"ImagePath");
UNICODE_STRING StartU = RTL_CONSTANT_STRING(L"Start");
UNICODE_STRING TypeU = RTL_CONSTANT_STRING(L"Type");
UNICODE_STRING StringU;
OBJECT_ATTRIBUTES ObjectAttributes;
HANDLE hService;
INFCONTEXT Context;
LPWSTR Driver, ClassGuid, ImagePath, FullImagePath;
ULONG dwValue;
ULONG Disposition;
NTSTATUS Status;
BOOLEAN deviceInstalled = FALSE;
UNICODE_STRING UpperFiltersU = RTL_CONSTANT_STRING(L"UpperFilters");
LPWSTR keyboardClass = L"kbdclass\0";
/* Check if we know the hardware */
if (!SetupFindFirstLineW(hInf, L"HardwareIdsDatabase", HardwareId, &Context))
return FALSE;
if (!INF_GetDataField(&Context, 1, &Driver))
return FALSE;
/* Get associated class GUID (if any) */
if (!INF_GetDataField(&Context, 2, &ClassGuid))
ClassGuid = NULL;
/* Find associated driver name */
/* FIXME: check in other sections too! */
if (!SetupFindFirstLineW(hInf, L"BootBusExtenders.Load", Driver, &Context)
&& !SetupFindFirstLineW(hInf, L"BusExtenders.Load", Driver, &Context)
&& !SetupFindFirstLineW(hInf, L"SCSI.Load", Driver, &Context)
&& !SetupFindFirstLineW(hInf, L"InputDevicesSupport.Load", Driver, &Context)
&& !SetupFindFirstLineW(hInf, L"Keyboard.Load", Driver, &Context))
{
return FALSE;
}
if (!INF_GetDataField(&Context, 1, &ImagePath))
return FALSE;
/* Prepare full driver path */
dwValue = PathPrefix.MaximumLength + wcslen(ImagePath) * sizeof(WCHAR);
FullImagePath = (LPWSTR)RtlAllocateHeap(ProcessHeap, 0, dwValue);
if (!FullImagePath)
{
DPRINT1("RtlAllocateHeap() failed\n");
return FALSE;
}
RtlCopyMemory(FullImagePath, PathPrefix.Buffer, PathPrefix.MaximumLength);
wcscat(FullImagePath, ImagePath);
DPRINT1("Using driver '%S' for device '%S'\n", ImagePath, DeviceId);
/* Create service key */
RtlInitUnicodeString(&StringU, Driver);
InitializeObjectAttributes(&ObjectAttributes, &StringU, 0, hServices, NULL);
Status = NtCreateKey(&hService, KEY_SET_VALUE, &ObjectAttributes, 0, NULL, 0, &Disposition);
if (!NT_SUCCESS(Status))
{
DPRINT1("NtCreateKey('%wZ') failed with status 0x%08x\n", &StringU, Status);
RtlFreeHeap(ProcessHeap, 0, FullImagePath);
return FALSE;
}
/* Fill service key */
if (Disposition == REG_CREATED_NEW_KEY)
{
dwValue = 0;
NtSetValueKey(
hService,
&ErrorControlU,
0,
REG_DWORD,
&dwValue,
sizeof(dwValue));
dwValue = 0;
NtSetValueKey(
hService,
&StartU,
0,
REG_DWORD,
&dwValue,
sizeof(dwValue));
dwValue = SERVICE_KERNEL_DRIVER;
NtSetValueKey(
hService,
&TypeU,
0,
REG_DWORD,
&dwValue,
sizeof(dwValue));
}
/* HACK: don't put any path in registry */
NtSetValueKey(
hService,
&ImagePathU,
0,
REG_SZ,
ImagePath,
(wcslen(ImagePath) + 1) * sizeof(WCHAR));
if (ClassGuid &&_wcsicmp(ClassGuid, L"{4D36E96B-E325-11CE-BFC1-08002BE10318}") == 0)
{
DPRINT1("Installing keyboard class driver for '%S'\n", DeviceId);
NtSetValueKey(hDeviceKey,
&UpperFiltersU,
0,
REG_MULTI_SZ,
keyboardClass,
(wcslen(keyboardClass) + 2) * sizeof(WCHAR));
}
/* Associate device with the service we just filled */
Status = NtSetValueKey(
hDeviceKey,
&ServiceU,
0,
REG_SZ,
Driver,
(wcslen(Driver) + 1) * sizeof(WCHAR));
if (NT_SUCCESS(Status))
{
/* Restart the device, so it will use the driver we registered */
deviceInstalled = ResetDevice(DeviceId);
}
/* HACK: Update driver path */
NtSetValueKey(
hService,
&ImagePathU,
0,
REG_SZ,
FullImagePath,
(wcslen(FullImagePath) + 1) * sizeof(WCHAR));
RtlFreeHeap(ProcessHeap, 0, FullImagePath);
NtClose(hService);
return deviceInstalled;
}
VOID
InstallDevice(
IN HINF hInf,
IN HANDLE hEnum,
IN HANDLE hServices,
IN LPCWSTR DeviceId)
{
UNICODE_STRING HardwareIDU = RTL_CONSTANT_STRING(L"HardwareID");
UNICODE_STRING CompatibleIDsU = RTL_CONSTANT_STRING(L"CompatibleIDs");
UNICODE_STRING DeviceIdU;
OBJECT_ATTRIBUTES ObjectAttributes;
LPCWSTR HardwareID;
PKEY_VALUE_PARTIAL_INFORMATION pPartialInformation = NULL;
HANDLE hDeviceKey;
ULONG ulRequired;
BOOLEAN bDriverInstalled = FALSE;
NTSTATUS Status;
RtlInitUnicodeString(&DeviceIdU, DeviceId);
InitializeObjectAttributes(&ObjectAttributes, &DeviceIdU, 0, hEnum, NULL);
Status = NtOpenKey(&hDeviceKey, KEY_QUERY_VALUE | KEY_SET_VALUE, &ObjectAttributes);
if (!NT_SUCCESS(Status))
{
DPRINT("Unable to open subkey '%S'\n", DeviceId);
return;
}
Status = NtQueryValueKey(
hDeviceKey,
&HardwareIDU,
KeyValuePartialInformation,
NULL,
0,
&ulRequired);
if (Status == STATUS_BUFFER_TOO_SMALL)
{
pPartialInformation = (PKEY_VALUE_PARTIAL_INFORMATION)RtlAllocateHeap(ProcessHeap, 0, ulRequired);
if (!pPartialInformation)
{
DPRINT1("RtlAllocateHeap() failed\n");
NtClose(hDeviceKey);
return;
}
Status = NtQueryValueKey(
hDeviceKey,
&HardwareIDU,
KeyValuePartialInformation,
pPartialInformation,
ulRequired,
&ulRequired);
}
if (Status == STATUS_OBJECT_NAME_NOT_FOUND)
{
/* Nothing to do */
}
else if (!NT_SUCCESS(Status))
{
DPRINT1("NtQueryValueKey() failed with status 0x%08x\n", Status);
if (pPartialInformation)
RtlFreeHeap(ProcessHeap, 0, pPartialInformation);
NtClose(hDeviceKey);
return;
}
else if (pPartialInformation)
{
for (HardwareID = (LPCWSTR)pPartialInformation->Data;
(PUCHAR)HardwareID < pPartialInformation->Data + pPartialInformation->DataLength
&& *HardwareID
&& !bDriverInstalled;
HardwareID += wcslen(HardwareID) + 1)
{
bDriverInstalled = InstallDriver(hInf, hServices,hDeviceKey, DeviceId, HardwareID);
}
}
if (!bDriverInstalled)
{
if (pPartialInformation)
{
RtlFreeHeap(ProcessHeap, 0, pPartialInformation);
pPartialInformation = NULL;
}
Status = NtQueryValueKey(
hDeviceKey,
&CompatibleIDsU,
KeyValuePartialInformation,
NULL,
0,
&ulRequired);
if (Status == STATUS_BUFFER_TOO_SMALL)
{
pPartialInformation = (PKEY_VALUE_PARTIAL_INFORMATION)RtlAllocateHeap(ProcessHeap, 0, ulRequired);
if (!pPartialInformation)
{
DPRINT("RtlAllocateHeap() failed\n");
NtClose(hDeviceKey);
return;
}
Status = NtQueryValueKey(
hDeviceKey,
&CompatibleIDsU,
KeyValuePartialInformation,
pPartialInformation,
ulRequired,
&ulRequired);
}
if (Status == STATUS_OBJECT_NAME_NOT_FOUND)
{
/* Nothing to do */
}
else if (!NT_SUCCESS(Status))
{
if (pPartialInformation)
RtlFreeHeap(ProcessHeap, 0, pPartialInformation);
NtClose(hDeviceKey);
DPRINT1("NtQueryValueKey() failed with status 0x%08x\n", Status);
return;
}
else if (pPartialInformation)
{
for (HardwareID = (LPCWSTR)pPartialInformation->Data;
(PUCHAR)HardwareID < pPartialInformation->Data + pPartialInformation->DataLength
&& *HardwareID
&& !bDriverInstalled;
HardwareID += wcslen(HardwareID) + 1)
{
bDriverInstalled = InstallDriver(hInf, hServices,hDeviceKey, DeviceId, HardwareID);
}
}
}
if (!bDriverInstalled)
DPRINT("No driver available for %S\n", DeviceId);
RtlFreeHeap(ProcessHeap, 0, pPartialInformation);
NtClose(hDeviceKey);
}
NTSTATUS
EventThread(IN LPVOID lpParameter)
{
UNICODE_STRING EnumU = RTL_CONSTANT_STRING(L"\\Registry\\Machine\\SYSTEM\\CurrentControlSet\\Enum");
UNICODE_STRING ServicesU = RTL_CONSTANT_STRING(L"\\Registry\\Machine\\SYSTEM\\CurrentControlSet\\Services");
PPLUGPLAY_EVENT_BLOCK PnpEvent;
OBJECT_ATTRIBUTES ObjectAttributes;
ULONG PnpEventSize;
HINF hInf;
HANDLE hEnum, hServices;
NTSTATUS Status;
hInf = *(HINF *)lpParameter;
InitializeObjectAttributes(&ObjectAttributes, &EnumU, OBJ_CASE_INSENSITIVE, NULL, NULL);
Status = NtOpenKey(&hEnum, KEY_QUERY_VALUE, &ObjectAttributes);
if (!NT_SUCCESS(Status))
{
DPRINT1("NtOpenKey('%wZ') failed with status 0x%08lx\n", &EnumU, Status);
return Status;
}
InitializeObjectAttributes(&ObjectAttributes, &ServicesU, OBJ_CASE_INSENSITIVE, NULL, NULL);
Status = NtCreateKey(&hServices, KEY_ALL_ACCESS, &ObjectAttributes, 0, NULL, 0, NULL);
if (!NT_SUCCESS(Status))
{
DPRINT1("NtCreateKey('%wZ') failed with status 0x%08lx\n", &ServicesU, Status);
NtClose(hEnum);
return Status;
}
PnpEventSize = 0x1000;
PnpEvent = (PPLUGPLAY_EVENT_BLOCK)RtlAllocateHeap(ProcessHeap, 0, PnpEventSize);
if (PnpEvent == NULL)
{
NtClose(hEnum);
NtClose(hServices);
return STATUS_NO_MEMORY;
}
for (;;)
{
DPRINT("Calling NtGetPlugPlayEvent()\n");
/* Wait for the next pnp event */
Status = NtGetPlugPlayEvent(0, 0, PnpEvent, PnpEventSize);
/* Resize the buffer for the PnP event if it's too small. */
if (Status == STATUS_BUFFER_TOO_SMALL)
{
PnpEventSize += 0x400;
RtlFreeHeap(ProcessHeap, 0, PnpEvent);
PnpEvent = (PPLUGPLAY_EVENT_BLOCK)RtlAllocateHeap(ProcessHeap, 0, PnpEventSize);
if (PnpEvent == NULL)
{
NtClose(hEnum);
NtClose(hServices);
return STATUS_NO_MEMORY;
}
continue;
}
if (!NT_SUCCESS(Status))
{
DPRINT("NtPlugPlayEvent() failed (Status %lx)\n", Status);
break;
}
/* Process the pnp event */
DPRINT("Received PnP Event\n");
if (IsEqualIID(&PnpEvent->EventGuid, (REFGUID)&GUID_DEVICE_ENUMERATED))
{
DPRINT("Device arrival event: %S\n", PnpEvent->TargetDevice.DeviceIds);
InstallDevice(hInf, hEnum, hServices, PnpEvent->TargetDevice.DeviceIds);
}
else
{
DPRINT("Unknown event\n");
}
/* Dequeue the current pnp event and signal the next one */
NtPlugPlayControl(PlugPlayControlUserResponse, NULL, 0);
}
RtlFreeHeap(ProcessHeap, 0, PnpEvent);
NtClose(hEnum);
NtClose(hServices);
return STATUS_SUCCESS;
}
DWORD WINAPI
PnpEventThread(IN LPVOID lpParameter)
{
NTSTATUS Status;
Status = EventThread(lpParameter);
NtTerminateThread(NtCurrentThread(), Status);
return 0;
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,8 @@
#pragma once
MUI_LAYOUTS afZALayouts[] =
{
{ L"0436", L"00000409" },
{ L"0409", L"00000409" },
{ NULL, NULL }
};

View file

@ -0,0 +1,8 @@
#pragma once
MUI_LAYOUTS arAELayouts[] =
{
{ L"0409", L"00000409" },
{ L"3801", L"00000401" },
{ NULL, NULL }
};

View file

@ -0,0 +1,8 @@
#pragma once
MUI_LAYOUTS arBHLayouts[] =
{
{ L"0409", L"00000409" },
{ L"3C01", L"00000401" },
{ NULL, NULL }
};

View file

@ -0,0 +1,8 @@
#pragma once
MUI_LAYOUTS arDZLayouts[] =
{
{ L"040C", L"0000040C" },
{ L"1401", L"00020401" },
{ NULL, NULL }
};

View file

@ -0,0 +1,8 @@
#pragma once
MUI_LAYOUTS arEGLayouts[] =
{
{ L"0C01", L"00000401" },
{ L"0409", L"00000409" },
{ NULL, NULL }
};

View file

@ -0,0 +1,8 @@
#pragma once
MUI_LAYOUTS arIQLayouts[] =
{
{ L"0801", L"00000401" },
{ L"0409", L"00000409" },
{ NULL, NULL }
};

View file

@ -0,0 +1,8 @@
#pragma once
MUI_LAYOUTS arJOLayouts[] =
{
{ L"0409", L"00000409" },
{ L"2C01", L"00000401" },
{ NULL, NULL }
};

View file

@ -0,0 +1,8 @@
#pragma once
MUI_LAYOUTS arKWLayouts[] =
{
{ L"0409", L"00000409" },
{ L"3401", L"00000401" },
{ NULL, NULL }
};

View file

@ -0,0 +1,8 @@
#pragma once
MUI_LAYOUTS arLBLayouts[] =
{
{ L"0409", L"00000409" },
{ L"3001", L"00000401" },
{ NULL, NULL }
};

View file

@ -0,0 +1,8 @@
#pragma once
MUI_LAYOUTS arLYLayouts[] =
{
{ L"040C", L"0000040C" },
{ L"1001", L"00020401" },
{ NULL, NULL }
};

View file

@ -0,0 +1,8 @@
#pragma once
MUI_LAYOUTS arMALayouts[] =
{
{ L"040C", L"0000040C" },
{ L"1801", L"00020401" },
{ NULL, NULL }
};

View file

@ -0,0 +1,8 @@
#pragma once
MUI_LAYOUTS arOMLayouts[] =
{
{ L"0409", L"00000409" },
{ L"2001", L"00000401" },
{ NULL, NULL }
};

View file

@ -0,0 +1,8 @@
#pragma once
MUI_LAYOUTS arQALayouts[] =
{
{ L"0409", L"00000409" },
{ L"4001", L"00000401" },
{ NULL, NULL }
};

View file

@ -0,0 +1,8 @@
#pragma once
MUI_LAYOUTS arSALayouts[] =
{
{ L"0401", L"00000401" },
{ L"0409", L"00000409" },
{ NULL, NULL }
};

View file

@ -0,0 +1,8 @@
#pragma once
MUI_LAYOUTS arSYLayouts[] =
{
{ L"0409", L"00000409" },
{ L"2801", L"00000401" },
{ NULL, NULL }
};

View file

@ -0,0 +1,8 @@
#pragma once
MUI_LAYOUTS arTNLayouts[] =
{
{ L"040C", L"0000040C" },
{ L"1C01", L"00020401" },
{ NULL, NULL }
};

View file

@ -0,0 +1,8 @@
#pragma once
MUI_LAYOUTS arYELayouts[] =
{
{ L"0409", L"00000409" },
{ L"2401", L"00000401" },
{ NULL, NULL }
};

View file

@ -0,0 +1,9 @@
#pragma once
MUI_LAYOUTS azAZLayouts[] =
{
{ L"082C", L"0000082C" },
{ L"042C", L"0000042C" },
{ L"0419", L"00000419" },
{ NULL, NULL }
};

View file

@ -0,0 +1,9 @@
#pragma once
MUI_LAYOUTS beBYLayouts[] =
{
{ L"0423", L"00000423" },
{ L"0409", L"00000409" },
{ L"0419", L"00000419" },
{ NULL, NULL }
};

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,7 @@
#pragma once
MUI_LAYOUTS bnINLayouts[] =
{
{ L"0445", L"00000445" },
{ NULL, NULL }
};

View file

@ -0,0 +1,8 @@
#pragma once
MUI_LAYOUTS caESLayouts[] =
{
{ L"0403", L"0000040A" },
{ L"0409", L"00000409" },
{ NULL, NULL }
};

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,8 @@
#pragma once
MUI_LAYOUTS deATLayouts[] =
{
{ L"0C07", L"00000407" },
{ L"0409", L"00000409" },
{ NULL, NULL }
};

View file

@ -0,0 +1,8 @@
#pragma once
MUI_LAYOUTS deCHLayouts[] =
{
{ L"0807", L"00000807" },
{ L"0409", L"00000409" },
{ NULL, NULL }
};

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,9 @@
#pragma once
MUI_LAYOUTS deLILayouts[] =
{
{ L"1407", L"00000807" },
{ L"1407", L"00000407" },
{ L"0409", L"00000409" },
{ NULL, NULL }
};

View file

@ -0,0 +1,8 @@
#pragma once
MUI_LAYOUTS deLULayouts[] =
{
{ L"1007", L"00000407" },
{ L"0409", L"00000409" },
{ NULL, NULL }
};

Some files were not shown because too many files have changed in this diff Show more