[LABEL][CMD] Convert the label command to a standalone executable

CORE-9444
This commit is contained in:
Eric Kohl 2019-09-22 14:50:37 +02:00
parent cf2b918e0f
commit 6bfe4f68af
53 changed files with 710 additions and 227 deletions

View file

@ -0,0 +1,8 @@
include_directories(${REACTOS_SOURCE_DIR}/sdk/lib/conutils)
add_executable(label label.c label.rc)
set_module_type(label win32cui UNICODE)
target_link_libraries(label conutils ${PSEH_LIB})
add_importlibs(label user32 msvcrt kernel32)
add_cd_file(TARGET label DESTINATION reactos/system32 FOR all)

View file

@ -0,0 +1,218 @@
/*
* LABEL.C - label internal command.
*
*
* History:
*
* 10-Dec-1998 (Eric Kohl)
* Started.
*
* 11-Dec-1998 (Eric Kohl)
* Finished.
*
* 19-Jan-1998 (Eric Kohl)
* Unicode ready!
*
* 28-Apr-2005 (Magnus Olsen <magnus@greatlord.com>)
* Remove all hardcoded strings in En.rc
*/
#include <stdio.h>
#include <stdlib.h>
#include <windef.h>
#include <winbase.h>
#include <wincon.h>
#include <winnls.h>
#include <winuser.h>
#include <conutils.h>
#include "resource.h"
#define MAX_LABEL_LENGTH 32
#define MAX_DRIVE_LENGTH 2
static
VOID
ConFormatMessage(PCON_STREAM Stream, DWORD MessageId, ...)
{
va_list arg_ptr;
va_start(arg_ptr, MessageId);
ConMsgPrintfV(Stream,
FORMAT_MESSAGE_FROM_SYSTEM,
NULL,
MessageId,
LANG_USER_DEFAULT,
&arg_ptr);
va_end(arg_ptr);
}
static
VOID
ConInString(LPWSTR lpInput, DWORD dwLength)
{
DWORD dwOldMode;
DWORD dwRead = 0;
HANDLE hFile;
LPWSTR p;
PCHAR pBuf;
pBuf = (PCHAR)HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, dwLength - 1);
hFile = GetStdHandle(STD_INPUT_HANDLE);
GetConsoleMode(hFile, &dwOldMode);
SetConsoleMode(hFile, ENABLE_LINE_INPUT | ENABLE_ECHO_INPUT);
ReadFile(hFile, (PVOID)pBuf, dwLength - 1, &dwRead, NULL);
MultiByteToWideChar(GetConsoleCP(), 0, pBuf, dwRead, lpInput, dwLength - 1);
HeapFree(GetProcessHeap(), 0, pBuf);
for (p = lpInput; *p; p++)
{
if (*p == L'\x0d')
{
*p = UNICODE_NULL;
break;
}
}
SetConsoleMode(hFile, dwOldMode);
}
static
BOOL
IsValidPathName(LPCWSTR pszPath)
{
WCHAR szOldPath[MAX_PATH];
BOOL bResult;
GetCurrentDirectoryW(MAX_PATH, szOldPath);
bResult = SetCurrentDirectoryW(pszPath);
SetCurrentDirectoryW(szOldPath);
return bResult;
}
int wmain(int argc, WCHAR *argv[])
{
WCHAR szRootPath[] = L" :\\";
WCHAR szBuffer[80];
WCHAR szLabel[80];
WCHAR szOldLabel[80];
DWORD dwSerialNr;
INT len, i;
/* Initialize the Console Standard Streams */
ConInitStdStreams();
/* set empty label string */
szLabel[0] = UNICODE_NULL;
/* print help */
if (argc > 1 && wcscmp(argv[1], L"/?") == 0)
{
ConResPuts(StdOut, STRING_LABEL_HELP);
return 0;
}
if (argc > 1)
{
len = 0;
for (i = 1; i < argc; i++)
{
if (i > 1)
len++;
len += wcslen(argv[i]);
}
if (len > MAX_LABEL_LENGTH + MAX_DRIVE_LENGTH)
{
ConResPuts(StdOut, STRING_ERROR_INVALID_LABEL);
return 1;
}
for (i = 1; i < argc; i++)
{
if (i > 1)
wcscat(szBuffer, L" ");
wcscat(szBuffer, argv[i]);
}
}
if (wcslen(szBuffer) > 0)
{
if (szBuffer[1] == L':')
{
szRootPath[0] = towupper(szBuffer[0]);
wcscpy(szLabel, &szBuffer[2]);
}
else
{
wcscpy(szLabel, szBuffer);
}
}
if (wcslen(szLabel) > MAX_LABEL_LENGTH)
{
ConResPuts(StdOut, STRING_ERROR_INVALID_LABEL);
return 1;
}
if (szRootPath[0] == L' ')
{
/* get label of current drive */
WCHAR szCurPath[MAX_PATH];
GetCurrentDirectoryW(MAX_PATH, szCurPath);
szRootPath[0] = szCurPath[0];
}
/* check root path */
if (!IsValidPathName(szRootPath))
{
ConResPuts(StdErr, STRING_ERROR_INVALID_DRIVE);
return 1;
}
if (wcslen(szLabel) == 0)
{
GetVolumeInformationW(szRootPath, szOldLabel, ARRAYSIZE(szOldLabel), &dwSerialNr,
NULL, NULL, NULL, 0);
/* print drive info */
if (szOldLabel[0] != UNICODE_NULL)
{
ConResPrintf(StdOut, STRING_LABEL_TEXT1, towupper(szRootPath[0]), szOldLabel);
}
else
{
ConResPrintf(StdOut, STRING_LABEL_TEXT2, towupper(szRootPath[0]));
}
/* print the volume serial number */
ConResPrintf(StdOut, STRING_LABEL_TEXT3, HIWORD(dwSerialNr), LOWORD(dwSerialNr));
ConResPuts(StdOut, STRING_LABEL_TEXT4);
ConInString(szLabel, ARRAYSIZE(szLabel));
ConPuts(StdOut, L"\n");
}
if (!SetVolumeLabelW(szRootPath, szLabel))
{
ConFormatMessage(StdOut, GetLastError());
return 1;
}
return 0;
}
/* EOF */

View file

@ -0,0 +1,77 @@
#include <windef.h>
#include "resource.h"
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS Label Command"
#define REACTOS_STR_INTERNAL_NAME "label"
#define REACTOS_STR_ORIGINAL_FILENAME "label.exe"
#include <reactos/version.rc>
/* UTF-8 */
#pragma code_page(65001)
#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_FR_FR
#include "lang/fr-FR.rc"
#endif
#ifdef LANGUAGE_HU_HU
#include "lang/hu-HU.rc"
#endif
#ifdef LANGUAGE_ID_ID
#include "lang/id-ID.rc"
#endif
#ifdef LANGUAGE_IT_IT
#include "lang/it-IT.rc"
#endif
#ifdef LANGUAGE_NB_NO
#include "lang/no-NO.rc"
#endif
#ifdef LANGUAGE_JA_JP
#include "lang/ja-JP.rc"
#endif
#ifdef LANGUAGE_PL_PL
#include "lang/pl-PL.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_SV_SE
#include "lang/sv-SE.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

View file

@ -0,0 +1,20 @@
/* FILE: base/shell/cmd/lang/cs-CZ.rc
* TRANSLATOR: Radek Liska aka Black_Fox (radekliska at gmail dot com)
* UPDATED: 2015-04-12
*/
LANGUAGE LANG_CZECH, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
STRING_LABEL_HELP "Creates, changes or deletes the volume label of a disk.\n\n\
LABEL [drive:][label]\n\n\
drive: Specifies the drive letter of a drive.\n\
label Specifies the label of the drive."
STRING_LABEL_TEXT1 "Volume in drive %c: is %s\n"
STRING_LABEL_TEXT2 "Volume in drive %c: has no label\n"
STRING_LABEL_TEXT3 "Volume Serial Number is %04X-%04X\n"
STRING_LABEL_TEXT4 "Volume label (32 Characters, ENTER if none)? "
STRING_ERROR_INVALID_DRIVE "Neplatná specifikace jednotky\n"
STRING_ERROR_INVALID_LABEL "Invalid volume label\n"
END

View file

@ -0,0 +1,17 @@
/* German language file by Klemens Friedl <frik85> 2005-06-03 */
LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL
STRINGTABLE
BEGIN
STRING_LABEL_HELP "Erstellt, ändert oder löscht die Bezeichnung eines Laufwerks.\n\n\
LABEL [Laufwerk:][Bezeichnung]\n\n\
Laufwerk: Gibt den Laufwerksbuchstaben eines Laufwerks an.\n\
Bezeichnung Gibt die Bezeichnung des Laufwerks an.\n"
STRING_LABEL_TEXT1 "Volume in Laufwerk %c: ist %s\n"
STRING_LABEL_TEXT2 "Volume in Laufwerk %c: hat keine Bezeichnung\n"
STRING_LABEL_TEXT3 "Volumenummer: %04X-%04X\n"
STRING_LABEL_TEXT4 "Volumebezeichnung (32 Zeichen, EINGABETASTE für keine)? "
STRING_ERROR_INVALID_DRIVE "Ungültige Laufwerksangaben\n"
STRING_ERROR_INVALID_LABEL "Unzulässige Volumebezeichnung\n"
END

View file

@ -0,0 +1,21 @@
/*
* Αρχική έκδοση - Ημιτελής.
* Ελληνική μετάφραση - Απόστολος Αλεξιάδης
*/
LANGUAGE LANG_GREEK, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
// STRING_LABEL_HELP "Displays or changes drive label.\n\nLABEL [drive:][label]\n"
STRING_LABEL_HELP "Creates, changes or deletes the volume label of a disk.\n\n\
LABEL [drive:][label]\n\n\
drive: Specifies the drive letter of a drive.\n\
label Specifies the label of the drive."
STRING_LABEL_TEXT1 "Volume in drive %c: is %s\n"
STRING_LABEL_TEXT2 "Volume in drive %c: has no label\n"
STRING_LABEL_TEXT3 "Volume Serial Number is %04X-%04X\n"
STRING_LABEL_TEXT4 "Volume label (32 Characters, ENTER if none)? "
STRING_ERROR_INVALID_DRIVE "Invalid drive specification\n"
STRING_ERROR_INVALID_LABEL "Invalid volume label\n"
END

View file

@ -0,0 +1,15 @@
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
STRINGTABLE
BEGIN
STRING_LABEL_HELP "Creates, changes or deletes the volume label of a disk.\n\n\
LABEL [drive:][label]\n\n\
drive: Specifies the drive letter of a drive.\n\
label Specifies the label of the drive."
STRING_LABEL_TEXT1 "Volume in drive %c: is %s\n"
STRING_LABEL_TEXT2 "Volume in drive %c: has no label\n"
STRING_LABEL_TEXT3 "Volume Serial Number is %04X-%04X\n"
STRING_LABEL_TEXT4 "Volume label (32 characters, ENTER if none)? "
STRING_ERROR_INVALID_DRIVE "Invalid drive specification\n"
STRING_ERROR_INVALID_LABEL "Invalid volume label\n"
END

View file

@ -0,0 +1,18 @@
/* Spanish translation by HUMA2000, Jose Pedro Fernández Pascual e Ismael Ferreras Morezuelas (Swyter) */
LANGUAGE LANG_SPANISH, SUBLANG_NEUTRAL
STRINGTABLE
BEGIN
// STRING_LABEL_HELP "Muestra o cambia la etiqueta de una unidad.\n\nLABEL [unidad:][etiqueta]\n"
STRING_LABEL_HELP "Creates, changes or deletes the volume label of a disk.\n\n\
LABEL [drive:][label]\n\n\
drive: Specifies the drive letter of a drive.\n\
label Specifies the label of the drive."
STRING_LABEL_TEXT1 "El volumen en la unidad %c: es %s\n"
STRING_LABEL_TEXT2 "El volumen en la unidad %c: no tiene etiqueta\n"
STRING_LABEL_TEXT3 "El número de serie del volumen es %04X-%04X\n"
STRING_LABEL_TEXT4 "Etiqueta del volumen (32 Caracteres, INTRO para ninguna)? "
STRING_ERROR_INVALID_DRIVE "Especificación de unidad errónea\n"
STRING_ERROR_INVALID_LABEL "Invalid volume label\n"
END

View file

@ -0,0 +1,18 @@
/* French translation by Sylvain Pétréolle, Pierre Schweitzer */
LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
STRINGTABLE
BEGIN
// STRING_LABEL_HELP "Affiche ou change le nom de volume du disque.\n\nLABEL [disque:][nomdevolume]\n"
STRING_LABEL_HELP "Creates, changes or deletes the volume label of a disk.\n\n\
LABEL [drive:][label]\n\n\
drive: Specifies the drive letter of a drive.\n\
label Specifies the label of the drive."
STRING_LABEL_TEXT1 "Le nom de volume du disque %c: est %s\n"
STRING_LABEL_TEXT2 "Le disque %c: n'a pas de nom de volume\n"
STRING_LABEL_TEXT3 "Le numéro de serie du volume est %04X-%04X\n"
STRING_LABEL_TEXT4 "Nom de volume (32 Caractères, ENTREE si aucun) ? "
STRING_ERROR_INVALID_DRIVE "Lecteur spécifié introuvable\n"
STRING_ERROR_INVALID_LABEL "Invalid volume label\n"
END

View file

@ -0,0 +1,19 @@
/* Hungarian translation by Robert Horvath (talley at cubeclub.hu) 2005 */
LANGUAGE LANG_HUNGARIAN, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
// STRING_LABEL_HELP "A kötet címkéjét megjeleníti, vagy megváltoztatja.\n\n\
//LABEL [meghajtó:] [új_címke]\n"
STRING_LABEL_HELP "Creates, changes or deletes the volume label of a disk.\n\n\
LABEL [drive:][label]\n\n\
drive: Specifies the drive letter of a drive.\n\
label Specifies the label of the drive."
STRING_LABEL_TEXT1 "A (%c) meghajtóban lévõ kötet címkéje %s\n"
STRING_LABEL_TEXT2 "A (%c) megjajtóban lévõ kötetnek nincs címkéje.\n"
STRING_LABEL_TEXT3 "A kötet sorozatszáma %04X-%04X\n"
STRING_LABEL_TEXT4 "Új kötetcímke (32 betû, ENTER ha üres)? "
STRING_ERROR_INVALID_DRIVE "Érvénytelen meghajtó\n"
STRING_ERROR_INVALID_LABEL "Invalid volume label\n"
END

View file

@ -0,0 +1,18 @@
/* Indonesian language file by Zaenal Mutaqin <ade999 at gmail dot com> 2007-02-15 */
LANGUAGE LANG_INDONESIAN, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
// STRING_LABEL_HELP "Menampilkan atau mengubah label drive.\n\nLABEL [drive:][label]\n"
STRING_LABEL_HELP "Creates, changes or deletes the volume label of a disk.\n\n\
LABEL [drive:][label]\n\n\
drive: Specifies the drive letter of a drive.\n\
label Specifies the label of the drive."
STRING_LABEL_TEXT1 "Volume di drive %c: adalah %s\n"
STRING_LABEL_TEXT2 "Volume di drive %c: tidak berlabel\n"
STRING_LABEL_TEXT3 "Nomor Seri Volume adalah %04X-%04X\n"
STRING_LABEL_TEXT4 "Label Drive (32 Karakter, ENTER jika sudah)? "
STRING_ERROR_INVALID_DRIVE "Spesifikasi drive tidak benar\n"
STRING_ERROR_INVALID_LABEL "Invalid volume label\n"
END

View file

@ -0,0 +1,17 @@
LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
STRINGTABLE
BEGIN
// STRING_LABEL_HELP "Visualizza o modifica l'etichetta di un disco.\n\n\
//LABEL [disco:][etichetta]\n"
STRING_LABEL_HELP "Creates, changes or deletes the volume label of a disk.\n\n\
LABEL [drive:][label]\n\n\
drive: Specifies the drive letter of a drive.\n\
label Specifies the label of the drive."
STRING_LABEL_TEXT1 "Il Volume nel disco %c: è %s\n"
STRING_LABEL_TEXT2 "Il Volume nel disco %c: non ha etichetta\n"
STRING_LABEL_TEXT3 "Il numero di serie del Volume è %04X-%04X\n"
STRING_LABEL_TEXT4 "Etichetta del disco (32 Caratteri, INVIO per nessuna)? "
STRING_ERROR_INVALID_DRIVE "Disco non valido\n"
STRING_ERROR_INVALID_LABEL "Invalid volume label\n"
END

View file

@ -0,0 +1,16 @@
LANGUAGE LANG_JAPANESE, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
// STRING_LABEL_HELP "ディスクのボリューム ラベルを表示または変更します。\n\nLABEL [ドライブ:][ラベル]\n"
STRING_LABEL_HELP "Creates, changes or deletes the volume label of a disk.\n\n\
LABEL [drive:][label]\n\n\
drive: Specifies the drive letter of a drive.\n\
label Specifies the label of the drive."
STRING_LABEL_TEXT1 "ドライブ %c: のボリューム ラベルは %s です\n"
STRING_LABEL_TEXT2 "ドライブ %c: にはボリューム ラベルがありませんl\n"
STRING_LABEL_TEXT3 "ボリューム シリアル番号は %04X-%04X\n です"
STRING_LABEL_TEXT4 "ボリューム ラベルを 32 文字以内で入力してください。\n必要なければ Enter キーを押してください: "
STRING_ERROR_INVALID_DRIVE "無効なドライブ指定です。\n"
STRING_ERROR_INVALID_LABEL "Invalid volume label\n"
END

View file

@ -0,0 +1,16 @@
LANGUAGE LANG_NORWEGIAN, SUBLANG_NEUTRAL
STRINGTABLE
BEGIN
// STRING_LABEL_HELP "Viser eller endrer navn på stasjon.\n\nLABEL [stasjon:][merke]\n"
STRING_LABEL_HELP "Creates, changes or deletes the volume label of a disk.\n\n\
LABEL [drive:][label]\n\n\
drive: Specifies the drive letter of a drive.\n\
label Specifies the label of the drive."
STRING_LABEL_TEXT1 "Volumet i stasjon %c: er %s\n"
STRING_LABEL_TEXT2 "Volumet i stasjon %c: er uten navn\n"
STRING_LABEL_TEXT3 "Volumserienummeret er %04X-%04X\n"
STRING_LABEL_TEXT4 "Volumnavn (32 tegn, Enter = intet navn)? "
STRING_ERROR_INVALID_DRIVE "Ugyldig stasjon angitt\n"
STRING_ERROR_INVALID_LABEL "Invalid volume label\n"
END

View file

@ -0,0 +1,25 @@
/*
* Translated by Caemyr - Olaf Siejka (Jan, 2008)
* Updated by niski - Maciej Bialas (Mar, 2010)
* Use ReactOS forum PM or IRC to contact me
* http://www.reactos.org
* IRC: irc.freenode.net #reactos-pl;
* UTF-8 conversion by Caemyr (May, 2011)
*/
LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
// STRING_LABEL_HELP "Wyświetla lub zmienia etykietę napędu.\n\nLABEL [napęd:][etykieta]\n"
STRING_LABEL_HELP "Creates, changes or deletes the volume label of a disk.\n\n\
LABEL [drive:][label]\n\n\
drive: Specifies the drive letter of a drive.\n\
label Specifies the label of the drive."
STRING_LABEL_TEXT1 "Wolumin w napędzie %c: ma etykietę: %s\n"
STRING_LABEL_TEXT2 "Wolumin w napędzie %c: nie posiada etykiety\n"
STRING_LABEL_TEXT3 "Numer seryjny woluminu to: %04X-%04X\n"
STRING_LABEL_TEXT4 "Podaj etykietę (0-32 znaków, ENTER = brak etykiety) "
STRING_ERROR_INVALID_DRIVE "Nieprawidłowe określenie napędu\n"
STRING_ERROR_INVALID_LABEL "Invalid volume label\n"
END

View file

@ -0,0 +1,18 @@
/* Translator: Ștefan Fulea (stefan dot fulea at mail dot com) */
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
STRINGTABLE
BEGIN
// STRING_LABEL_HELP "Afișează sau modifică eticheta unei unități (de stocare).\n\nLABEL [unitate:][etichetă]\n"
STRING_LABEL_HELP "Creates, changes or deletes the volume label of a disk.\n\n\
LABEL [drive:][label]\n\n\
drive: Specifies the drive letter of a drive.\n\
label Specifies the label of the drive."
STRING_LABEL_TEXT1 "Volumul unității %c: este etichetat ca %s\n"
STRING_LABEL_TEXT2 "Volumul unității %c: nu este etichetat.\n"
STRING_LABEL_TEXT3 "Numărul de serie al volumului este %04X-%04X\n"
STRING_LABEL_TEXT4 "Introduceți eticheta unității (opțională, de 32 caractere), apoi ENTER "
STRING_ERROR_INVALID_DRIVE "Specificarea unității este eronată\n"
STRING_ERROR_INVALID_LABEL "Invalid volume label\n"
END

View file

@ -0,0 +1,18 @@
/* Russian translation by Andrey Korotaev (unC0Rr@inbox.ru) & Aleksey Bragin (aleksey@reactos.org) & Kudratov Olimjon (olim98@bk.ru)*/
LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
// STRING_LABEL_HELP "Создание, изменение и удаление меток тома.\n\nLABEL [диск:][метка]\n"
STRING_LABEL_HELP "Creates, changes or deletes the volume label of a disk.\n\n\
LABEL [drive:][label]\n\n\
drive: Specifies the drive letter of a drive.\n\
label Specifies the label of the drive."
STRING_LABEL_TEXT1 "Том в устройстве %c имеет метку %s\n"
STRING_LABEL_TEXT2 "Том в устройстве %c: не имеет метки\n"
STRING_LABEL_TEXT3 "Серийный номер тома: %04X-%04X\n"
STRING_LABEL_TEXT4 "Метка тома (32 букв, ВВОД для пустой метки)? "
STRING_ERROR_INVALID_DRIVE "Неверное определение диска\n"
STRING_ERROR_INVALID_LABEL "Invalid volume label\n"
END

View file

@ -0,0 +1,22 @@
/* Slovak translation for CMD
* TRANSLATOR: Mário Kačmár /Mario Kacmar/ aka Kario (kario@szm.sk)
* DATE OF TR: 21-03-2009
* LastChange: 10-08-2010
*/
LANGUAGE LANG_SLOVAK, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
STRING_LABEL_HELP "Displays or changes drive label.\n\nLABEL [drive:][label]\n"
STRING_LABEL_HELP "Creates, changes or deletes the volume label of a disk.\n\n\
LABEL [drive:][label]\n\n\
drive: Specifies the drive letter of a drive.\n\
label Specifies the label of the drive."
STRING_LABEL_TEXT1 "Volume in drive %c: is %s\n"
STRING_LABEL_TEXT2 "Volume in drive %c: has no label\n"
STRING_LABEL_TEXT3 "Volume Serial Number is %04X-%04X\n"
STRING_LABEL_TEXT4 "Volume label (32 Characters, ENTER if none)? "
STRING_ERROR_INVALID_DRIVE "Invalid drive specification\n"
STRING_ERROR_INVALID_LABEL "Invalid volume label\n"
END

View file

@ -0,0 +1,20 @@
/* TRANSLATOR : Ardit Dani (Ard1t) (ardit.dani@gmail.com)
* DATE OF TR: 29-11-2013
*/
LANGUAGE LANG_ALBANIAN, SUBLANG_NEUTRAL
STRINGTABLE
BEGIN
// STRING_LABEL_HELP "Shfaq ose ndrysho etiketën e driverit.\n\nLABEL [drive:][etikete]\n"
STRING_LABEL_HELP "Creates, changes or deletes the volume label of a disk.\n\n\
LABEL [drive:][label]\n\n\
drive: Specifies the drive letter of a drive.\n\
label Specifies the label of the drive."
STRING_LABEL_TEXT1 "Volumi në drive %c: is %s\n"
STRING_LABEL_TEXT2 "Volumi në drive %c: has no label\n"
STRING_LABEL_TEXT3 "Numri Serial i Volumit është %04X-%04X\n"
STRING_LABEL_TEXT4 "Volume label (32 Characters, ENTER if none)? "
STRING_ERROR_INVALID_DRIVE "Specifikimi i drivit invalid\n"
STRING_ERROR_INVALID_LABEL "Invalid volume label\n"
END

View file

@ -0,0 +1,16 @@
LANGUAGE LANG_SWEDISH, SUBLANG_NEUTRAL
STRINGTABLE
BEGIN
// STRING_LABEL_HELP "Skapar, tar bort eller ändrar etikett på enhet.\n\nLABEL [enhet:][etikett]\n"
STRING_LABEL_HELP "Creates, changes or deletes the volume label of a disk.\n\n\
LABEL [drive:][label]\n\n\
drive: Specifies the drive letter of a drive.\n\
label Specifies the label of the drive."
STRING_LABEL_TEXT1 "Volymen i enhet %c: är %s\n"
STRING_LABEL_TEXT2 "Volymen i enhet %c: är utan namn\n"
STRING_LABEL_TEXT3 "Volymens serienummer är %04X-%04X\n"
STRING_LABEL_TEXT4 "Volymnamn (32 tecken, Enter = inget namn)? "
STRING_ERROR_INVALID_DRIVE "Ogiltig enhet angiven\n"
STRING_ERROR_INVALID_LABEL "Invalid volume label\n"
END

View file

@ -0,0 +1,18 @@
/* TRANSLATOR: 2015 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net) */
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
STRING_LABEL_HELP "Sürücü etiketini görüntüler ya da değiştirir.\n\nLABEL [sürücü:][etiket]\n"
STRING_LABEL_HELP "Creates, changes or deletes the volume label of a disk.\n\n\
LABEL [drive:][label]\n\n\
drive: Specifies the drive letter of a drive.\n\
label Specifies the label of the drive."
STRING_LABEL_TEXT1 "%c sürücüsünde birim %s\n"
STRING_LABEL_TEXT2 "%c sürücüsünde birimin etiketi yok\n"
STRING_LABEL_TEXT3 "Birim Dizilik Numarası %04X-%04X\n"
STRING_LABEL_TEXT4 "Sürücü etiketi (32 damga, yok için Giriş)? "
STRING_ERROR_INVALID_DRIVE "Geçersiz sürücü belirtmesi.\n"
STRING_ERROR_INVALID_LABEL "Invalid volume label\n"
END

View file

@ -0,0 +1,24 @@
/*
* PROJECT: Command-line interface
* LICENSE: GPL - See COPYING in the top level directory
* FILE: base/shell/cmd/lang/uk-UA.rc
* PURPOSE: Ukraianian Language File for Command-line interface
* TRANSLATORS: Artem Reznikov, Igor Paliychuk
*/
LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
// STRING_LABEL_HELP "Вображення або змiна мiтки тому.\n\nLABEL [диск:][мiтка]\n"
STRING_LABEL_HELP "Creates, changes or deletes the volume label of a disk.\n\n\
LABEL [drive:][label]\n\n\
drive: Specifies the drive letter of a drive.\n\
label Specifies the label of the drive."
STRING_LABEL_TEXT1 "Том в пристрої %c: має мiтку %s\n"
STRING_LABEL_TEXT2 "Том в пристрої %c: не має мiтки\n"
STRING_LABEL_TEXT3 "Серiйний номер тому: %04X-%04X\n"
STRING_LABEL_TEXT4 "Мiтка тому (32 букв, ENTER без мiтки)? "
STRING_ERROR_INVALID_DRIVE "Невiрне визначення диску\n"
STRING_ERROR_INVALID_LABEL "Invalid volume label\n"
END

View file

@ -0,0 +1,18 @@
/* Simplified Chinese translation by Song Fuchang (0xfc) <sfc_0@yahoo.com.cn> 2011 */
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
STRINGTABLE
BEGIN
// STRING_LABEL_HELP "显示或改变驱动器卷标。\n\nLABEL [驱动器:][卷标]\n"
STRING_LABEL_HELP "Creates, changes or deletes the volume label of a disk.\n\n\
LABEL [drive:][label]\n\n\
drive: Specifies the drive letter of a drive.\n\
label Specifies the label of the drive."
STRING_LABEL_TEXT1 "驱动器 %c 中的卷是 %s\n"
STRING_LABEL_TEXT2 "驱动器 %c 中的卷没有卷标。\n"
STRING_LABEL_TEXT3 "卷的序列号是 %04X-%04X\n"
STRING_LABEL_TEXT4 "驱动器卷标 (32 个字符, 按 ENTER 忽略)? "
STRING_ERROR_INVALID_DRIVE "无效驱动器指定\n"
STRING_ERROR_INVALID_LABEL "Invalid volume label\n"
END

View file

@ -0,0 +1,19 @@
/* Traditional Chinese translation by Henry Tang Ih 2016 (henrytang2@hotmail.com) */
/* Improved by Luo Yufan 2019 <njlyf2011@hotmail.com> */
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL
STRINGTABLE
BEGIN
// STRING_LABEL_HELP "顯示或改變驅動器卷標。\n\nLABEL [驅動器:][卷標]\n"
STRING_LABEL_HELP "Creates, changes or deletes the volume label of a disk.\n\n\
LABEL [drive:][label]\n\n\
drive: Specifies the drive letter of a drive.\n\
label Specifies the label of the drive."
STRING_LABEL_TEXT1 "驅動器 %c 中的卷是 %s\n"
STRING_LABEL_TEXT2 "驅動器 %c 中的卷沒有卷標。\n"
STRING_LABEL_TEXT3 "卷的序列號是 %04X-%04X\n"
STRING_LABEL_TEXT4 "驅動器卷標 (32 個字元, 按 ENTER 忽略)? "
STRING_ERROR_INVALID_DRIVE "無效驅動器指定\n"
STRING_ERROR_INVALID_LABEL "Invalid volume label\n"
END

View file

@ -0,0 +1,13 @@
#pragma once
#define RC_STRING_MAX_SIZE 3072
#define STRING_LABEL_HELP 661
#define STRING_LABEL_TEXT1 662
#define STRING_LABEL_TEXT2 663
#define STRING_LABEL_TEXT3 664
#define STRING_LABEL_TEXT4 665
#define STRING_ERROR_INVALID_DRIVE 106
#define STRING_ERROR_INVALID_LABEL 107