- Update to trunk

svn path=/branches/audio-bringup/; revision=49927
This commit is contained in:
Johannes Anderwald 2010-12-03 15:05:26 +00:00
commit 6c8e7899a9
731 changed files with 37805 additions and 18893 deletions

View file

@ -22,6 +22,9 @@
<directory name="extrac32"> <directory name="extrac32">
<xi:include href="extrac32/extrac32.rbuild" /> <xi:include href="extrac32/extrac32.rbuild" />
</directory> </directory>
<directory name="findstr">
<xi:include href="findstr/findstr.rbuild" />
</directory>
<directory name="fontview"> <directory name="fontview">
<xi:include href="fontview/fontview.rbuild" /> <xi:include href="fontview/fontview.rbuild" />
</directory> </directory>

View file

@ -1,6 +1,6 @@
/* TRANSLATOR : Mário Kaèmár /Mario Kacmar/ aka Kario (kario@szm.sk) /* TRANSLATOR : Mário Kaèmár /Mario Kacmar/ aka Kario (kario@szm.sk)
* DATE OF TR.: 30-01-2008 * DATE OF TR.: 30-01-2008
* LAST CHANGE: 31-05-2010 * LAST CHANGE: 17-09-2010
* --------------------------------------- * ---------------------------------------
* TODO: * TODO:
* pridanie navigaèných znaèiek "&" ? * pridanie navigaèných znaèiek "&" ?
@ -545,9 +545,9 @@ END
STRINGTABLE DISCARDABLE STRINGTABLE DISCARDABLE
BEGIN BEGIN
IDS_ENERGY_15_C_CALORIES "15 °C calories" IDS_ENERGY_15_C_CALORIES "15 °C calories"
IDS_ENERGY_BTUS "British Thermal Units" IDS_ENERGY_BTUS "Britské termálne jednotky"
IDS_ENERGY_ERGS "Ergs" IDS_ENERGY_ERGS "Ergs"
IDS_ENERGY_EVS "Electron-Volts" IDS_ENERGY_EVS "Elektron-Volty"
IDS_ENERGY_FOOT_POUNDS "Foot-Pounds" IDS_ENERGY_FOOT_POUNDS "Foot-Pounds"
IDS_ENERGY_IT_CALORIES "International Table calories" IDS_ENERGY_IT_CALORIES "International Table calories"
IDS_ENERGY_IT_KILOCALORIES "International Table kilocalories" IDS_ENERGY_IT_KILOCALORIES "International Table kilocalories"
@ -593,7 +593,7 @@ BEGIN
IDS_LENGTH_MILLIMETERS "Milimetre" IDS_LENGTH_MILLIMETERS "Milimetre"
IDS_LENGTH_NAUTICAL_MILES "Námorné míle" IDS_LENGTH_NAUTICAL_MILES "Námorné míle"
IDS_LENGTH_NIEU "Nieu" IDS_LENGTH_NIEU "Nieu"
IDS_LENGTH_PARSECS "Parsecy" IDS_LENGTH_PARSECS "Parseky"
IDS_LENGTH_PICAS "Picas" IDS_LENGTH_PICAS "Picas"
IDS_LENGTH_RI_JAPAN "Ri (Japonsko)" IDS_LENGTH_RI_JAPAN "Ri (Japonsko)"
IDS_LENGTH_RI_KOREA "Ri (Kórea)" IDS_LENGTH_RI_KOREA "Ri (Kórea)"
@ -626,10 +626,10 @@ STRINGTABLE DISCARDABLE
BEGIN BEGIN
IDS_PRESSURE_ATMOSPHERES "Atmosféry" IDS_PRESSURE_ATMOSPHERES "Atmosféry"
IDS_PRESSURE_BARS "Bary" IDS_PRESSURE_BARS "Bary"
IDS_PRESSURE_HECTOPASCALS "Hektopascals" IDS_PRESSURE_HECTOPASCALS "Hektopascaly"
IDS_PRESSURE_KILOPASCALS "Kilopascals" IDS_PRESSURE_KILOPASCALS "Kilopascaly"
IDS_PRESSURE_MM_OF_MERCURY "Millimeters of mercury" IDS_PRESSURE_MM_OF_MERCURY "Milimetre ortuti"
IDS_PRESSURE_PASCALS "Pascals" IDS_PRESSURE_PASCALS "Pascaly"
IDS_PRESSURE_PSI "Libry na štvorcový palec" IDS_PRESSURE_PSI "Libry na štvorcový palec"
END END

View file

@ -0,0 +1,295 @@
/* findstr.c */
/* Copyright (C) 1994-2002, Jim Hall <jhall@freedos.org> */
/* Adapted for ReactOS -Edited for Findstr.exe K'Williams */
/*
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.
*/
/* This program locates a string in a text file and prints those lines
* that contain the string. Multiple files are clearly separated.
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <windows.h>
#include <io.h>
#include <dos.h>
#include "resource.h"
/* Symbol definition */
#define MAX_STR 1024
/* This function prints out all lines containing a substring. There are some
* conditions that may be passed to the function.
*
* RETURN: If the string was found at least once, returns 1.
* If the string was not found at all, returns 0.
*/
int
find_str (char *sz, FILE *p, int invert_search,
int count_lines, int number_output, int ignore_case, int at_start, int literal_search,
int at_end, int reg_express, int exact_match, int sub_dirs, int only_fname)
{
int i, length;
long line_number = 0, total_lines = 0;
char *c, temp_str[MAX_STR], this_line[MAX_STR];
/* Convert to upper if needed */
if (ignore_case)
{
length = strlen (sz);
for (i = 0; i < length; i++)
sz[i] = toupper (sz[i]);
}
/* Scan the file until EOF */
while (fgets (temp_str, MAX_STR, p) != NULL)
{
/* Remove the trailing newline */
length = strlen (temp_str);
if (temp_str[length-1] == '\n')
{
temp_str[length-1] = '\0';
}
/* Increment number of lines */
line_number++;
strcpy (this_line, temp_str);
/* Convert to upper if needed */
if (ignore_case)
{
for (i = 0; i < length; i++)
{
temp_str[i] = toupper (temp_str[i]);
}
}
/* Locate the substring */
/* strstr() returns a pointer to the first occurrence in the
string of the substring */
c = strstr (temp_str, sz);
if ( ((invert_search) ? (c == NULL) : (c != NULL)) )
{
if (!count_lines)
{
if (number_output)
printf ("%ld:", line_number);
/* Print the line of text */
puts (this_line);
}
total_lines++;
} /* long if */
} /* while fgets */
if (count_lines)
{
/* Just show num. lines that contain the string */
printf ("%ld\n", total_lines);
}
/* RETURN: If the string was found at least once, returns 1.
* If the string was not found at all, returns 0.
*/
return (total_lines > 0 ? 1 : 0);
}
/* Show usage */
void
usage (void)
{
TCHAR lpUsage[4096];
LoadString( GetModuleHandle(NULL), IDS_USAGE, (LPTSTR)lpUsage, 4096);
CharToOem(lpUsage, lpUsage);
printf( lpUsage );
}
/* Main program */
int
main (int argc, char **argv)
{
char *opt, *needle = NULL;
int ret = 0;
TCHAR lpMessage[4096];
int invert_search = 0; /* flag to invert the search */
int count_lines = 0; /* flag to whether/not count lines */
int number_output = 0; /* flag to print line numbers */
int ignore_case = 0; /* flag to be case insensitive */
int at_start = 0; /* flag to Match if at the beginning of a line. */
int at_end = 0; /* flag to Match if at the beginning of a line. */
int reg_express = 0; /* flag to use/not use regular expressions */
int exact_match = 0; /* flag to be exact match */
int sub_dirs= 0; /* this and all subdirectories */
int only_fname= 0; /* print only the name of the file*/
int literal_search=0;
FILE *pfile; /* file pointer */
int hfind; /* search handle */
struct _finddata_t finddata; /* _findfirst, filenext block */
/* Scan the command line */
while ((--argc) && (needle == NULL))
{
if (*(opt = *++argv) == '/')
{
switch (opt[1])
{
case 'b':
case 'B': /* Matches pattern if at the beginning of a line */
at_start = 1;
break;
//case 'c':
//case 'C': /* Literal? */
// literal_search = 1;
// break;
case 'e':
case 'E': /* matches pattern if at end of line */
at_end = 1;
break;
case 'i':
case 'I': /* Ignore */
ignore_case = 1;
break;
case 'm':
case 'M': /* only filename */
only_fname = 1;
break;
case 'n':
case 'N': /* Number */
number_output = 1;
break;
case 'r':
case 'R': /* search strings as regular expressions */
reg_express = 1;
break;
case 's':
case 'S': /* search files in child directory too*/
sub_dirs = 1;
break;
case 'v':
case 'V': /* Not with */
invert_search = 1;
break;
case 'x':
case 'X': /* exact match */
exact_match = 1;
break;
default:
usage ();
exit (2); /* syntax error .. return error 2 */
break;
}
}
else
{
/* Get the string */
if (needle == NULL)
{
/* Assign the string to find */
needle = *argv;
}
}
}
/* Check for search string */
if (needle == NULL)
{
/* No string? */
usage ();
exit (1);
}
/* Scan the files for the string */
if (argc == 0)
{
ret = find_str (needle, stdin, invert_search, count_lines,
number_output, ignore_case, at_start, literal_search, at_end, reg_express, exact_match,
sub_dirs, only_fname);
}
while (--argc >= 0)
{
hfind = _findfirst (*++argv, &finddata);
if (hfind < 0)
{
/* We were not able to find a file. Display a message and
set the exit status. */
LoadString( GetModuleHandle(NULL), IDS_NO_SUCH_FILE, (LPTSTR)lpMessage, 4096);
CharToOem(lpMessage, lpMessage);
fprintf (stderr, lpMessage, *argv);//
}
else
{
/* repeat find next file to match the filemask */
do
{
/* We have found a file, so try to open it */
if ((pfile = fopen (finddata.name, "r")) != NULL)
{
printf ("---------------- %s\n", finddata.name);
ret = find_str (needle, pfile, invert_search, count_lines,
number_output, ignore_case, at_start, literal_search, at_end, reg_express, exact_match,
sub_dirs, only_fname);
fclose (pfile);
}
else
{
LoadString(GetModuleHandle(NULL), IDS_CANNOT_OPEN, (LPTSTR)lpMessage, 4096);
CharToOem(lpMessage, lpMessage);
fprintf (stderr, lpMessage,
finddata.name);
}
}
while (_findnext(hfind, &finddata) > 0);
}
_findclose(hfind);
} /* for each argv */
/* RETURN: If the string was found at least once, returns 0.
* If the string was not found at all, returns 1.
* (Note that find_str.c returns the exact opposite values.)
*/
exit ( (ret ? 0 : 1) );
}

View file

@ -0,0 +1,8 @@
<?xml version="1.0"?>
<!DOCTYPE module SYSTEM "../../../../tools/rbuild/project.dtd">
<module name="findstr" type="win32cui" installbase="system32" installname="findstr.exe">
<library>user32</library>
<file>findstr.c</file>
<file>findstr.rc</file>
<file>rsrc.rc</file>
</module>

View file

@ -0,0 +1,6 @@
#define REACTOS_STR_FILE_DESCRIPTION "W32 findstr command\0"
#define REACTOS_STR_INTERNAL_NAME "findstr\0"
#define REACTOS_STR_ORIGINAL_FILENAME "findstr.exe\0"
#include <reactos/version.rc>
#include "rsrc.rc"

View file

@ -0,0 +1,17 @@
LANGUAGE LANG_BULGARIAN, SUBLANG_DEFAULT
STRINGTABLE DISCARDABLE
BEGIN
IDS_USAGE, "FIND: Извежда всички редове във файла, които съдържат указания низ..\n\n\
FIND [ /C ] [ /I ] [ /N ] [ /V ] \"низ\" [ файл... ]\n\
/C Брои колко реда съдържат низа\n\
/I Пренебрегва ГлАвНОсТта\n\
/N Брой показани редове, като се започва от 1\n\
/V Извеждане на редовете, НЕсъдържащи низа."
IDS_NO_SUCH_FILE, "FIND: %s: Няма такъв файл\n"
IDS_CANNOT_OPEN, "FIND: %s: Отварянето на файла е невъзможно\n"
END

View file

@ -0,0 +1,17 @@
LANGUAGE LANG_CATALAN, SUBLANG_DEFAULT
STRINGTABLE DISCARDABLE
BEGIN
IDS_USAGE, "FIND: Mostra totes les linies que continguin una determinada cadena de caràcters.\n\n\
FIND [ /C ] [ /I ] [ /N ] [ /V ] \"Cadena de caràcters\" [ file... ]\n\
/C Conta el numero de linies que contenen la cadena de caràcters\n\
/I Ignora majúscules i minúscules\n\
/N Numero de linies mostrades, començant per la primera\n\
/V Mostra les linies que no contenen la cadena de caràcters"
IDS_NO_SUCH_FILE, "FIND: %s: No he trobat el fitxer\n"
IDS_CANNOT_OPEN, "FIND: %s: No puc obrir el fitxer\n"
END

View file

@ -0,0 +1,23 @@
/* FILE: applications/cmdutils/find/lang/cs-CZ.rc
* TRANSLATOR: Radek Liska aka Black_Fox (radekliska at gmail dot com)
* THANKS TO: Mario Kacmar aka Kario (kario@szm.sk)
* UPDATED: 2008-02-29
*/
LANGUAGE LANG_CZECH, SUBLANG_DEFAULT
STRINGTABLE DISCARDABLE
BEGIN
IDS_USAGE, "FIND: Zobrazí všechny øádky souboru obsahující hledaný øetìzec.\n\n\
FIND [ /C ] [ /I ] [ /N ] [ /V ] \"øetìzec\" [ soubor... ]\n\
/C Zobrazí poèet øádkù obsahující øetìzec.\n\
/I Ignoruje velikost písmen.\n\
/N Èísluje zobrazené øádky, zaèíná od 1.\n\
/V Zobrazí všechny øádky, které NEobsahují zadaný øetìžec."
IDS_NO_SUCH_FILE, "FIND: Soubor %s nebyl nalezen.\n"
IDS_CANNOT_OPEN, "FIND: Soubor %s nelze otevøít!\n"
END

View file

@ -0,0 +1,17 @@
LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL
STRINGTABLE DISCARDABLE
BEGIN
IDS_USAGE, "Sucht in einer Datei nach einer Zeichenfolge.\n\n\
FIND [ /C ] [ /I ] [ /N ] [ /V ] \"string\" [ file... ]\n\
/C Zeigt nur die Anzahl der die Zeichenfolge enthaltenen Zeilen an.\n\
/I Ignoriert Groß-/Kleinbuchstaben bei der Suche.\n\
/N Zeigt die Zeilen mit ihren Zeilennummern an.\n\
/V Zeigt alle Zeilen an, die die Zeichenfolge NICHT enhalten."
IDS_NO_SUCH_FILE, "Datei %s nicht gefunden\n"
IDS_CANNOT_OPEN, "Datei %s kann nicht geöffnet werden.\n"
END

View file

@ -0,0 +1,17 @@
LANGUAGE LANG_GREEK, SUBLANG_DEFAULT
STRINGTABLE DISCARDABLE
BEGIN
IDS_USAGE, "FIND: Εκτυπώνει όλες τις γραμμές ενός αρχείου που περιέχουν ένα αλφαριθμητικό.\n\n\
FIND [ /C ] [ /I ] [ /N ] [ /V ] \"αλφαριθμητικό\" [ αρχείο... ]\n\
/C Μέτρηση γραμμών που περιέχουν το αλφαριθμητικό\n\
/I Αγνόηση κεφαλαίων\n\
/N Εμφάνιση αριθμών στις εμφανιζόμενες γραμμές, ξεκινώντας από το 1\n\
/V Εκτύπωση γραμμών που δεν περιέχουν το αλφαριθμητικό"
IDS_NO_SUCH_FILE, "FIND: %s: Δεν υπάρχει αυτό το αρχείο\n"
IDS_CANNOT_OPEN, "FIND: %s: Δεν ήταν δυνατό το άνοιγμα του αρχείου\n"
END

View file

@ -0,0 +1,17 @@
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
STRINGTABLE DISCARDABLE
BEGIN
IDS_USAGE, "FINDSTR: Prints all lines of a file that contain a string.\n\n\
FIND [ /C ] [ /I ] [ /N ] [ /V ] \"string\" [ file... ]\n\
/C Count the number of lines that contain string\n\
/I Ignore case\n\
/N Number the displayed lines, starting at 1\n\
/V Print lines that do not contain the string"
IDS_NO_SUCH_FILE, "FINDSTR: %s: No such file\n"
IDS_CANNOT_OPEN, "FINDSTR: %s: Cannot open file\n"
END

View file

@ -0,0 +1,17 @@
LANGUAGE LANG_SPANISH, SUBLANG_NEUTRAL
STRINGTABLE DISCARDABLE
BEGIN
IDS_USAGE, "FIND: Imprime todas las líneas de un fichero que contiene una cadena.\n\n\
FIND [ /C ] [ /I ] [ /N ] [ /V ] \"cadena\" [ fichero... ]\n\
/C Cuenta el número de líneas que contienen la cadena de caracteres\n\
/I Ignora mayúsculas y minúsculas\n\
/N Numero de líneas a mostrar en pantalla, a partir de la primera\n\
/V Muestra las líneas que no contienen la cadena de caracteres."
IDS_NO_SUCH_FILE, "FIND: %s: No se encontró el fichero\n"
IDS_CANNOT_OPEN, "FIND: %s: No se pudo abrir el fichero\n"
END

View file

@ -0,0 +1,17 @@
LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
STRINGTABLE DISCARDABLE
BEGIN
IDS_USAGE, "FIND: Affiche toutes les lignes d'un fichier qui contiennent un morceau de texte.\n\n\
FIND [ /C ] [ /I ] [ /N ] [ /V ] \"texte\" [ fichier... ]\n\
/C Compte le nombre de lignes qui contiennent le texte\n\
/I Insensible à la casse\n\
/N Numérote les lignes affichées en commençant à 1\n\
/V Affiche les lignes qui ne contiennent pas le texte"
IDS_NO_SUCH_FILE, "FIND: %s : fichier inexistant\n"
IDS_CANNOT_OPEN, "FIND: %s : impossible d'ouvrir le fichier\n"
END

View file

@ -0,0 +1,17 @@
LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
STRINGTABLE DISCARDABLE
BEGIN
IDS_USAGE, "FIND: Visualizza le linee di un file che contengono un stringa.\n\n\
FIND [ /C ] [ /I ] [ /N ] [ /V ] \"stringa\" [ file... ]\n\
/C Conta il numero di linee che contengono la stringa\n\
/I Ignora maiuscole/minuscole\n\
/N Numera le linee visualizzate a partire da 1\n\
/V Visualizza le linee che non contengono la stringa"
IDS_NO_SUCH_FILE, "FIND: %s: File non trovato\n"
IDS_CANNOT_OPEN, "FIND: %s: Impossibile aprire il file\n"
END

View file

@ -0,0 +1,26 @@
/*
* PROJECT: ReactOS find command
* LICENSE: GPL - See COPYING in the top level directory
* FILE: base/applications/cmdutils/find/lang/lt-LT.rc
* PURPOSE: Lithuanian Language File
* TRANSLATOR: Vytis "CMan" Girdþijauskas (cman@cman.us)
* DATE: 2007-09-23
*/
LANGUAGE LANG_LITHUANIAN, SUBLANG_DEFAULT
STRINGTABLE DISCARDABLE
BEGIN
IDS_USAGE, "FIND: Spausdina visas bylos eilutes, kuriose yra ieðkomas tekstas.\n\n\
FIND [ /C ] [ /I ] [ /N ] [ /V ] \"tekstas\" [ byla... ]\n\
/C Skaièiuoti eilutes, kuriose yra ieðkomas tekstas\n\
/I Ignoruoti raidþiø dydá\n\
/N Numeruoti vaizduojamas eilutes, pradedant nuo 1\n\
/V Spausdinti eilutes, kuriose nëra ieðkomo teksto"
IDS_NO_SUCH_FILE, "FIND: %s: Tokios bylos nëra\n"
IDS_CANNOT_OPEN, "FIND: %s: Nepavyko atverti bylos\n"
END

View file

@ -0,0 +1,17 @@
LANGUAGE LANG_NORWEGIAN, SUBLANG_NEUTRAL
STRINGTABLE DISCARDABLE
BEGIN
IDS_USAGE, "FINN: Skriv alle linjene for filen som inneholder en streng.\n\n\
FIND [ /C ] [ /I ] [ /N ] [ /V ] \"streng\" [ fil... ]\n\
/C Teller nummer av linjer som inneholder strenger\n\
/I Ignorere sak\n\
/N Nummer viste linjer, start med 1\n\
/V Skriv linjer som ikke inneholder en streng"
IDS_NO_SUCH_FILE, "FINN: %s: Ingen filer\n"
IDS_CANNOT_OPEN, "FINN: %s: Kan ikke åpne filen\n"
END

View file

@ -0,0 +1,24 @@
/*
* translated by Caemyr - Olaf Siejka (Dec,2007)
* Use ReactOS forum PM or IRC to contact me
* http://www.reactos.org
* IRC: irc.freenode.net #reactos-pl
*/
LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
STRINGTABLE DISCARDABLE
BEGIN
IDS_USAGE, "FIND: Wyświetla wszystkie linie danego pliku, zawierające szukany ciąg znaków.\n\n\
FIND [ /C ] [ /I ] [ /N ] [ /V ] \"ciąg znaków\" [ plik... ]\n\
/C Oblicza w ilu liniach pojawił się szukany ciąg znaków\n\
/I Ignoruje wielkość liter\n\
/N Numeruje wyświetlane linie, zaczynając od 1\n\
/V Wyświetla te linie które nie zawierają szukanego ciągu znaków"
IDS_NO_SUCH_FILE, "FIND: %s: Plik nie został znaleziony\n"
IDS_CANNOT_OPEN, "FIND: %s: Nie można otworzyć pliku\n"
END

View file

@ -0,0 +1,17 @@
LANGUAGE LANG_PORTUGUESE, SUBLANG_NEUTRAL
STRINGTABLE DISCARDABLE
BEGIN
IDS_USAGE, "FIND: Localiza uma seqüência de texto em um ou mais arquivos.\n\n\
FIND [ /C ] [ /I ] [ /N ] [ /V ] \"seqüência\" [ arquivo... ]\n\
/C Exibe apenas o número de linhas que contêm a seqüência.\n\
/I Ignora maiúsculas/minúsculas ao localizar uma seqüência.\n\
/N Exibe o número de cada linha, iniciando no 1.\n\
/V Exibe todas as linhas que NÃO contêm a seqüência especificada."
IDS_NO_SUCH_FILE, "FIND: %s: Arquivo não encontrado\n"
IDS_CANNOT_OPEN, "FIND: %s: Não foi possível abrir o arquivo\n"
END

View file

@ -0,0 +1,17 @@
LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
STRINGTABLE DISCARDABLE
BEGIN
IDS_USAGE, "FIND: Поиск текстовой строки в одном или нескольких файлах.\n\n\
FIND [ /C ] [ /I ] [ /N ] [ /V ] \"строка\" [ файл... ]\n\
/C Вывод только общего числа строк, содержащих заданную строку.\n\
/I Поиск без учета регистра символов.\n\
/N Вывод номеров отображаемых строк (начиная с 1).\n\
/V Вывод всех строк, НЕ содержащих заданную строку."
IDS_NO_SUCH_FILE, "FIND: %s: Файл не существует.\n"
IDS_CANNOT_OPEN, "FIND: %s: Невозможно открыть файл.\n"
END

View file

@ -0,0 +1,21 @@
/* TRANSLATOR: M rio KaŸm r /Mario Kacmar/ aka Kario (kario@szm.sk)
* DATE OF TR: 12-02-2008
*/
LANGUAGE LANG_SLOVAK, SUBLANG_DEFAULT
STRINGTABLE DISCARDABLE
BEGIN
IDS_USAGE, "FIND: Zobraz¡ vçetky riadky s£boru obsahuj£ce hadanì reœazec.\n\n\
FIND [ /C ] [ /I ] [ /N ] [ /V ] \"reœazec\" [ s£bor... ]\n\
/C Zobraz¡ poŸet riadkov, ktor obsahuj£ reœazec.\n\
/I Ignoruje vekosœ p¡smen.\n\
/N ¬¡sluje zobrazen riadky, zaŸ¡na od 1.\n\
/V Zobraz¡ vçetky riadky, ktor neobsahuj£ hadanì reœazec."
IDS_NO_SUCH_FILE, "FIND: S£bor %s sa nenaçiel.\n"
IDS_CANNOT_OPEN, "FIND: S£bor %s sa ned  otvoriœ.\n"
END

View file

@ -0,0 +1,17 @@
LANGUAGE LANG_SWEDISH, SUBLANG_NEUTRAL
STRINGTABLE DISCARDABLE
BEGIN
IDS_USAGE, "FIND: Skriver ut alla rader i en fil som innehåller en sträng.\n\n\
FIND [ /C ] [ /I ] [ /N ] [ /V ] \"sträng\" [ fil... ]\n\
/C Räkna nummren av linjer som innehåller en strängen\n\
/I Ignorera skiftläge\n\
/N Antal visade rader, börjar på 1\n\
/V Skriver ut rader som inte innehåller strängen"
IDS_NO_SUCH_FILE, "FIND: %s: Ingen sorts fil\n"
IDS_CANNOT_OPEN, "FIND: %s: Kan inte öppna filen\n"
END

View file

@ -0,0 +1,25 @@
/*
* PROJECT: Find
* LICENSE: GPL - See COPYING in the top level directory
* FILE: base/applications/cmdutils/find/lang/uk-UA.rc
* PURPOSE: Ukraianian Language File for find
* TRANSLATOR: Artem Reznikov
*/
LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT
STRINGTABLE DISCARDABLE
BEGIN
IDS_USAGE, "FIND: Âèâåäåííÿ âñ³õ ðÿäê³â ôàéëó, ÿê³ ì³ñòÿòü ðÿäîê.\n\n\
FIND [ /C ] [ /I ] [ /N ] [ /V ] \"ðÿäîê\" [ ôàéë... ]\n\
/C Ïîðàõóâàòè ê³ëüê³ñòü ðÿäê³â, ÿê³ ì³ñòÿòü ðÿäîê\n\
/I Íå âðàõîâóâàòè ðåã³ñòð ñèìâîë³â\n\
/N Íóìåðóâàòè ðÿäêè, ÿê³ â³äîáðàæàþòüñÿ (ïî÷èíàþ÷è ç 1)\n\
/V Âèâåäåííÿ ðÿäê³â, ÿê³ íå ì³ñòÿòü çàäàíèé ðÿäîê"
IDS_NO_SUCH_FILE, "FIND: %s: Ôàéë íå ³ñíóº\n"
IDS_CANNOT_OPEN, "FIND: %s: Íåìîæëèâî â³äêðèòè ôàéë\n"
END

View file

@ -0,0 +1,3 @@
#define IDS_USAGE 1000
#define IDS_NO_SUCH_FILE 1001
#define IDS_CANNOT_OPEN 1002

View file

@ -0,0 +1,20 @@
#include <windows.h>
#include "resource.h"
#include "lang/bg-BG.rc"
#include "lang/ca-ES.rc"
#include "lang/cs-CZ.rc"
#include "lang/de-DE.rc"
#include "lang/el-GR.rc"
#include "lang/en-US.rc"
#include "lang/es-ES.rc"
#include "lang/fr-FR.rc"
#include "lang/it-IT.rc"
#include "lang/lt-LT.rc"
#include "lang/no-NO.rc"
#include "lang/pl-PL.rc"
#include "lang/pt-BR.rc"
#include "lang/ru-RU.rc"
#include "lang/sk-SK.rc"
#include "lang/sv-SE.rc"
#include "lang/uk-UA.rc"

View file

@ -25,6 +25,17 @@
HINSTANCE hInstance; HINSTANCE hInstance;
HANDLE ProcessHeap; HANDLE ProcessHeap;
int LoadStringAndOem(HINSTANCE hInst,
UINT uID,
LPTSTR szNode,
int Siz
)
{
TCHAR szTmp[25];
int res = LoadString(hInst, uID, szTmp, sizeof(szTmp));
CharToOem(szTmp, szNode);
return(res);
}
LPTSTR GetNodeTypeName(UINT NodeType) LPTSTR GetNodeTypeName(UINT NodeType)
{ {
@ -33,27 +44,27 @@ LPTSTR GetNodeTypeName(UINT NodeType)
switch (NodeType) switch (NodeType)
{ {
case 1: case 1:
if (!LoadString(hInstance, IDS_BCAST, szNode, sizeof(szNode))) if (!LoadStringAndOem(hInstance, IDS_BCAST, szNode, sizeof(szNode)))
return NULL; return NULL;
break; break;
case 2: case 2:
if (!LoadString(hInstance, IDS_P2P, szNode, sizeof(szNode))) if (!LoadStringAndOem(hInstance, IDS_P2P, szNode, sizeof(szNode)))
return NULL; return NULL;
break; break;
case 4: case 4:
if (!LoadString(hInstance, IDS_MIXED, szNode, sizeof(szNode))) if (!LoadStringAndOem(hInstance, IDS_MIXED, szNode, sizeof(szNode)))
return NULL; return NULL;
break; break;
case 8: case 8:
if (!LoadString(hInstance, IDS_HYBRID, szNode, sizeof(szNode))) if (!LoadStringAndOem(hInstance, IDS_HYBRID, szNode, sizeof(szNode)))
return NULL; return NULL;
break; break;
default : default :
if (!LoadString(hInstance, IDS_UNKNOWN, szNode, sizeof(szNode))) if (!LoadStringAndOem(hInstance, IDS_UNKNOWN, szNode, sizeof(szNode)))
return NULL; return NULL;
break; break;
} }
@ -69,42 +80,42 @@ LPTSTR GetInterfaceTypeName(UINT InterfaceType)
switch (InterfaceType) switch (InterfaceType)
{ {
case MIB_IF_TYPE_OTHER: case MIB_IF_TYPE_OTHER:
if (!LoadString(hInstance, IDS_OTHER, szIntType, sizeof(szIntType))) if (!LoadStringAndOem(hInstance, IDS_OTHER, szIntType, sizeof(szIntType)))
return NULL; return NULL;
break; break;
case MIB_IF_TYPE_ETHERNET: case MIB_IF_TYPE_ETHERNET:
if (!LoadString(hInstance, IDS_ETH, szIntType, sizeof(szIntType))) if (!LoadStringAndOem(hInstance, IDS_ETH, szIntType, sizeof(szIntType)))
return NULL; return NULL;
break; break;
case MIB_IF_TYPE_TOKENRING: case MIB_IF_TYPE_TOKENRING:
if (!LoadString(hInstance, IDS_TOKEN, szIntType, sizeof(szIntType))) if (!LoadStringAndOem(hInstance, IDS_TOKEN, szIntType, sizeof(szIntType)))
return NULL; return NULL;
break; break;
case MIB_IF_TYPE_FDDI: case MIB_IF_TYPE_FDDI:
if (!LoadString(hInstance, IDS_FDDI, szIntType, sizeof(szIntType))) if (!LoadStringAndOem(hInstance, IDS_FDDI, szIntType, sizeof(szIntType)))
return NULL; return NULL;
break; break;
case MIB_IF_TYPE_PPP: case MIB_IF_TYPE_PPP:
if (!LoadString(hInstance, IDS_PPP, szIntType, sizeof(szIntType))) if (!LoadStringAndOem(hInstance, IDS_PPP, szIntType, sizeof(szIntType)))
return NULL; return NULL;
break; break;
case MIB_IF_TYPE_LOOPBACK: case MIB_IF_TYPE_LOOPBACK:
if (!LoadString(hInstance, IDS_LOOP, szIntType, sizeof(szIntType))) if (!LoadStringAndOem(hInstance, IDS_LOOP, szIntType, sizeof(szIntType)))
return NULL; return NULL;
break; break;
case MIB_IF_TYPE_SLIP: case MIB_IF_TYPE_SLIP:
if (!LoadString(hInstance, IDS_SLIP, szIntType, sizeof(szIntType))) if (!LoadStringAndOem(hInstance, IDS_SLIP, szIntType, sizeof(szIntType)))
return NULL; return NULL;
break; break;
default: default:
if (!LoadString(hInstance, IDS_UNKNOWN, szIntType, sizeof(szIntType))) if (!LoadStringAndOem(hInstance, IDS_UNKNOWN, szIntType, sizeof(szIntType)))
return NULL; return NULL;
break; break;
} }
@ -153,6 +164,7 @@ LPTSTR GetConnectionType(LPTSTR lpClass)
{ {
HKEY hKey = NULL; HKEY hKey = NULL;
LPTSTR ConType = NULL; LPTSTR ConType = NULL;
LPTSTR ConTypeTmp = NULL;
TCHAR Path[256]; TCHAR Path[256];
LPTSTR PrePath = _T("SYSTEM\\CurrentControlSet\\Control\\Network\\{4D36E972-E325-11CE-BFC1-08002BE10318}\\"); LPTSTR PrePath = _T("SYSTEM\\CurrentControlSet\\Control\\Network\\{4D36E972-E325-11CE-BFC1-08002BE10318}\\");
LPTSTR PostPath = _T("\\Connection"); LPTSTR PostPath = _T("\\Connection");
@ -180,24 +192,34 @@ LPTSTR GetConnectionType(LPTSTR lpClass)
NULL, NULL,
&dwDataSize) == ERROR_SUCCESS) &dwDataSize) == ERROR_SUCCESS)
{ {
ConTypeTmp = (LPTSTR)HeapAlloc(ProcessHeap,
0,
dwDataSize);
ConType = (LPTSTR)HeapAlloc(ProcessHeap, ConType = (LPTSTR)HeapAlloc(ProcessHeap,
0, 0,
dwDataSize); dwDataSize);
if (ConType) if (ConType && ConTypeTmp)
{ {
if(RegQueryValueEx(hKey, if(RegQueryValueEx(hKey,
_T("Name"), _T("Name"),
NULL, NULL,
&dwType, &dwType,
(PBYTE)ConType, (PBYTE)ConTypeTmp,
&dwDataSize) != ERROR_SUCCESS) &dwDataSize) != ERROR_SUCCESS)
{ {
HeapFree(ProcessHeap, HeapFree(ProcessHeap,
0, 0,
ConType); ConType);
HeapFree(ProcessHeap,
0,
ConTypeTmp);
ConType = NULL; ConType = NULL;
} }
if (ConType) CharToOem(ConTypeTmp, ConType);
} }
} }
} }
@ -674,7 +696,7 @@ VOID Usage(VOID)
if (lpUsage == NULL) if (lpUsage == NULL)
return; return;
if (LoadString(hInstance, if (LoadStringAndOem(hInstance,
IDS_USAGE, IDS_USAGE,
lpUsage, lpUsage,
Size)) Size))

View file

@ -422,7 +422,7 @@ AllocateBuffers(PAPPINFO pInfo)
pInfo->RecvPacket = (PIPv4_HEADER)HeapAlloc(GetProcessHeap(), pInfo->RecvPacket = (PIPv4_HEADER)HeapAlloc(GetProcessHeap(),
0, 0,
sizeof(IPv4_HEADER) + PACKET_SIZE); MAX_PING_PACKET_SIZE);
if (!pInfo->RecvPacket) if (!pInfo->RecvPacket)
{ {
HeapFree(GetProcessHeap(), HeapFree(GetProcessHeap(),

View file

@ -2,13 +2,13 @@
[Section] [Section]
Name = 7-Zip Name = 7-Zip
Version = 4.65 Version = 9.20
Licence = LGPL Licence = LGPL
Description = Utility to create and open 7zip, zip, tar, rar and other archive files. Description = Utility to create and open 7zip, zip, tar, rar and other archive files.
Size = 0.9M Size = 1.0M
Category = 12 Category = 12
URLSite = http://www.7-zip.org/ URLSite = http://www.7-zip.org/
URLDownload = http://ovh.dl.sourceforge.net/project/sevenzip/7-Zip/4.65/7z465.exe URLDownload = http://ovh.dl.sourceforge.net/project/sevenzip/7-Zip/9.20/7z920.exe
CDPath = none CDPath = none
[Section.0407] [Section.0407]
@ -17,5 +17,8 @@ Description = Tool zum Erstellen und Öffnen von 7zip, zip, tar, rar und andrern
[Section.040a] [Section.040a]
Description = Utilidad para crear y abrir 7zip, zip, tar, rar y otros archivos comprimidos. Description = Utilidad para crear y abrir 7zip, zip, tar, rar y otros archivos comprimidos.
[Section.0415]
Description = Narzędzie do tworzenia i otwierania plików typu 7zip, zip, tar, i innych plików archiwizacyjnych.
[Section.0422] [Section.0422]
Description = Утиліта для створення та відкриття 7zip, zip, tar, rar та інших архівних файлів. Description = Утиліта для створення та відкриття 7zip, zip, tar, rar та інших архівних файлів.

View file

@ -14,5 +14,10 @@ CDPath = none
[Section.0407] [Section.0407]
Description = Abyss Web Server ermöglicht es Webseiten auf Ihrem Computer zu hosten. Er unterstützt sichere SSL/TLS Verbindungen (HTTPS) sowie eine Vielfalt an Web Technologien. Er kann ebenfalls PHP, Perl, Python, ASP, ASP.NET, und Ruby on Rails Web Anwendungen ausführen, welche von Datenbanken, wie MySQL, SQLite, MS SQL Server, MS Access, oder Oracle unterstützt werden können. Description = Abyss Web Server ermöglicht es Webseiten auf Ihrem Computer zu hosten. Er unterstützt sichere SSL/TLS Verbindungen (HTTPS) sowie eine Vielfalt an Web Technologien. Er kann ebenfalls PHP, Perl, Python, ASP, ASP.NET, und Ruby on Rails Web Anwendungen ausführen, welche von Datenbanken, wie MySQL, SQLite, MS SQL Server, MS Access, oder Oracle unterstützt werden können.
[Section.0415]
Description = Abyss Web Server pozwala Ci na stworzenie serwera WWW na własnym komputerze. Ten program obsługuje zabezpieczone połączenia typu SSL/TLS (HTTPS) i wiele technologii Sieci.
Może także uruchamiać zaawansowane aplikacje internetowe takie jak PHP, Perl, Python, ASP, ASP.NET, i Ruby on Rails.
Mogą one zostać oparte o MySQL, SQLite, MS SQL Server, MS Access, lub Oracle.
[Section.0422] [Section.0422]
Description = Abyss Web Server дозволить вам утримувати веб-сайти на вашому комп'ютері. Від підтримує безпечні SSL/TLS з'єднання (HTTPS) та великий ряд веб-технологій. Він також запускає PHP, Perl, Python, ASP, ASP.NET, та Ruby on Rails веб-додатки, які можуть підтримуватись такими базами даних, як MySQL, SQLite, MS SQL Server, MS Access, чи Oracle. Description = Abyss Web Server дозволить вам утримувати веб-сайти на вашому комп'ютері. Від підтримує безпечні SSL/TLS з'єднання (HTTPS) та великий ряд веб-технологій. Він також запускає PHP, Perl, Python, ASP, ASP.NET, та Ruby on Rails веб-додатки, які можуть підтримуватись такими базами даних, як MySQL, SQLite, MS SQL Server, MS Access, чи Oracle.

View file

@ -21,7 +21,7 @@ Description = X es necesario para varias aplicaciones.
[Section.0415] [Section.0415]
Licence = Nieznana Licence = Nieznana
Description = X jest używana przez część aplikacji. Description = Microsoft Visual Basic 6.0 Common Controls jest używany przez część aplikacji.
[Section.0422] [Section.0422]
Licence = Невідома Licence = Невідома

View file

@ -17,5 +17,8 @@ Description = DosBlaster ist eine Shell Extension, die es ermöglicht jede DOS A
[Section.040a] [Section.040a]
Description = DosBlaster en una extensión Shell que permite abrir cualquier ejecutable DOS en DOSBox desde el botón derecho del ratón. Esta versión contiene DOSBox 0.70, pero puede ser actualizado facilmente instalando una nueva versión de DOSBox en la carpeta de DosBlaster. Description = DosBlaster en una extensión Shell que permite abrir cualquier ejecutable DOS en DOSBox desde el botón derecho del ratón. Esta versión contiene DOSBox 0.70, pero puede ser actualizado facilmente instalando una nueva versión de DOSBox en la carpeta de DosBlaster.
[Section.0415]
Description = DosBlaster to rozszerzenie powłoki, które umożliwia otwarcie każdego DOS-owego pliku wykonywalnego w DOSBox za pomocą prawego klawisza myszki. Ta wersja zawiera DosBox 0.70, ale można go łatwo zaktualizować, instalując nowszą wersje DOSBox do folderów DosBlaster.
[Section.0422] [Section.0422]
Description = DosBlaster це розширення оболонки, яке дозволяє запустити будь-який виконавчий файл DOS в DOSBox через правий клік. Ця версія містить DOSBox 0.70, але може бути оновлена встановленням новішої версії DOSBox в теки DosBlaster. Description = DosBlaster це розширення оболонки, яке дозволяє запустити будь-який виконавчий файл DOS в DOSBox через правий клік. Ця версія містить DOSBox 0.70, але може бути оновлена встановленням новішої версії DOSBox в теки DosBlaster.

View file

@ -14,5 +14,8 @@ CDPath = none
[Section.0407] [Section.0407]
Description = Kleiner und einfacher Mediaplayer. Description = Kleiner und einfacher Mediaplayer.
[Section.0415]
Description = Prosty i lekki odtwarzacz audio.
[Section.0422] [Section.0422]
Description = Простий та маленький програвач аудіо файлів. Description = Простий та маленький програвач аудіо файлів.

View file

@ -2,47 +2,47 @@
[Section] [Section]
Name = Mozilla Firefox 3.6 Name = Mozilla Firefox 3.6
Version = 3.6.10 Version = 3.6.12
Licence = MPL/GPL/LGPL Licence = MPL/GPL/LGPL
Description = The most popular and one of the best free Web Browsers out there. Description = The most popular and one of the best free Web Browsers out there.
Size = 8.1M Size = 8.1M
Category = 5 Category = 5
URLSite = http://www.mozilla.com/en-US/ URLSite = http://www.mozilla.com/en-US/
URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.6.10/win32/en-US/Firefox%20Setup%203.6.10.exe URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.6.12/win32/en-US/Firefox%20Setup%203.6.12.exe
CDPath = none CDPath = none
[Section.0407] [Section.0407]
Description = Der populärste und einer der besten freien Webbrowser. Description = Der populärste und einer der besten freien Webbrowser.
Size = 8.0M Size = 8.0M
URLSite = http://www.mozilla-europe.org/de/ URLSite = http://www.mozilla-europe.org/de/
URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.6.10/win32/de/Firefox%20Setup%203.6.10.exe URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.6.12/win32/de/Firefox%20Setup%203.6.12.exe
[Section.040a] [Section.040a]
Description = El más popular y uno de los mejores navegadores web gratuitos que hay. Description = El más popular y uno de los mejores navegadores web gratuitos que hay.
Size = 8.0M Size = 8.0M
URLSite = http://www.mozilla-europe.org/es/ URLSite = http://www.mozilla-europe.org/es/
URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.6.10/win32/es-ES/Firefox%20Setup%203.6.10.exe URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.6.12/win32/es-ES/Firefox%20Setup%203.6.12.exe
[Section.0414] [Section.0414]
Description = Mest populære og best også gratis nettleserene der ute. Description = Mest populære og best også gratis nettleserene der ute.
Size = 8.0M Size = 8.0M
URLSite = http://www.mozilla-europe.org/no/ URLSite = http://www.mozilla-europe.org/no/
URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.6.10/win32/nb-NO/Firefox%20Setup%203.6.10.exe URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.6.12/win32/nb-NO/Firefox%20Setup%203.6.12.exe
[Section.0415] [Section.0415]
Description = Najpopularniejsza i jedna z najlepszych darmowych przeglądarek internetowych. Description = Najpopularniejsza i jedna z najlepszych darmowych przeglądarek internetowych.
Size = 8.8M Size = 8.8M
URLSite = http://www.mozilla-europe.org/pl/ URLSite = http://www.mozilla-europe.org/pl/
URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.6.10/win32/pl/Firefox%20Setup%203.6.10.exe URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.6.12/win32/pl/Firefox%20Setup%203.6.12.exe
[Section.0419] [Section.0419]
Description = Один из самых популярных и лучших бесплатных браузеров. Description = Один из самых популярных и лучших бесплатных браузеров.
Size = 8.4M Size = 8.4M
URLSite = http://www.mozilla-europe.org/ru/ URLSite = http://www.mozilla-europe.org/ru/
URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.6.10/win32/ru/Firefox%20Setup%203.6.10.exe URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.6.12/win32/ru/Firefox%20Setup%203.6.12.exe
[Section.0422] [Section.0422]
Description = Найпопулярніший та один з кращих безплатних веб-браузерів. Description = Найпопулярніший та один з кращих безплатних веб-браузерів.
Size = 8.4M Size = 8.4M
URLSite = http://www.mozilla-europe.org/uk/ URLSite = http://www.mozilla-europe.org/uk/
URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.6.10/win32/uk/Firefox%20Setup%203.6.10.exe URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.6.12/win32/uk/Firefox%20Setup%203.6.12.exe

View file

@ -18,7 +18,7 @@ Description = Open Source Office Suite, basierend auf Open Office, aber viel bes
Description = La suite de ofimática de código abierto. Description = La suite de ofimática de código abierto.
[Section.0415] [Section.0415]
Description = Otwarty pakiet biurowy. Description = Otwarty pakiet biurowy, bazujący na Open Office, ale znacznie lepszy.
[Section.0422] [Section.0422]
Description = Відкритий офісний пакет. Description = Відкритий офісний пакет.

View file

@ -14,5 +14,8 @@ CDPath = none
[Section.0407] [Section.0407]
Description = KDE für Windows. Description = KDE für Windows.
[Section.0415]
Description = KDE dla Windows.
[Section.0422] [Section.0422]
Description = KDE для Windows. Description = KDE для Windows.

View file

@ -2,13 +2,13 @@
[Section] [Section]
Name = LibreOffice Name = LibreOffice
Version = 3.3.0 Beta 1 Version = 3.3.0 Beta 3
Licence = LGPL Licence = LGPL
Description = Former called OpenOffice. Open Source Office Suite. Description = Former called OpenOffice. Open Source Office Suite.
Size = 138.0MB Size = 300.0MB
Category = 6 Category = 6
URLSite = http://www.documentfoundation.org/ URLSite = http://www.documentfoundation.org/
URLDownload = http://download.documentfoundation.org/libreoffice/testing/LO_3.3.0-beta1_Win_x86_install_en-US.exe URLDownload = http://download.documentfoundation.org/libreoffice/testing/3.3.0-beta3/win/x86/LibO_3.3.0_Win_x86_install_multi.exe
CDPath = none CDPath = none
[Section.0407] [Section.0407]

View file

@ -2,13 +2,13 @@
[Section] [Section]
Name = Miranda IM Name = Miranda IM
Version = 0.9.5 Version = 0.9.11
Licence = GPL Licence = GPL
Description = Open source multiprotocol instant messaging application - May not work completely. Description = Open source multiprotocol instant messaging application - May not work completely.
Size = 2.2MB Size = 3.0MB
Category = 5 Category = 5
URLSite = http://www.miranda-im.org/ URLSite = http://www.miranda-im.org/
URLDownload = http://miranda.googlecode.com/files/miranda-im-v0.9.5-unicode.exe URLDownload = http://miranda.googlecode.com/files/miranda-im-v0.9.11-unicode.exe
CDPath = none CDPath = none
[Section.0407] [Section.0407]

View file

@ -2,13 +2,13 @@
[Section] [Section]
Name = mIRC Name = mIRC
Version = 7.1 Version = 7.15
Licence = Shareware Licence = Shareware
Description = The most popular client for the Internet Relay Chat (IRC). Description = The most popular client for the Internet Relay Chat (IRC).
Size = 1.8M Size = 2.0M
Category = 5 Category = 5
URLSite = http://www.mirc.com/ URLSite = http://www.mirc.com/
URLDownload = http://download.mirc.com/mirc71.exe URLDownload = http://download.mirc.com/mirc715.exe
CDPath = none CDPath = none
[Section.0407] [Section.0407]

View file

@ -2,14 +2,17 @@
[Section] [Section]
Name = Mono .net Development Framework Name = Mono .net Development Framework
Version = 2.6.7 Version = 2.8.1
Licence = Unknown Licence = Unknown
Description = Open Source .net Framework. Description = Open Source .net Framework.
Size = 72MB Size = 77MB
Category = 14 Category = 14
URLSite = http://www.mono-project.com/Main_Page URLSite = http://www.mono-project.com/Main_Page
URLDownload = http://ftp.novell.com/pub/mono/archive/2.6.7/windows-installer/2/mono-2.6.7-gtksharp-2.12.10-win32-2.exe URLDownload = http://ftp.novell.com/pub/mono/archive/2.8.1/windows-installer/3/mono-2.8.1-gtksharp-2.12.10-win32-3.exe
CDPath = none CDPath = none
[Section.0415]
Description = Pakiet Mono .net Framework dla Programistów.
[Section.0422] [Section.0422]
Description = Відкритий .net Фреймворк. Description = Відкритий .net Фреймворк.

View file

@ -20,5 +20,8 @@ Description = Reproductor multimedia.
[Section.0419] [Section.0419]
Description = Мультимедийный проигрыватель. Description = Мультимедийный проигрыватель.
[Section.0415]
Description = Odtwarzacz multimediów.
[Section.0422] [Section.0422]
Description = Мультимедійний програвач. Description = Мультимедійний програвач.

View file

@ -10,3 +10,6 @@ Category = 14
URLSite = http://www.microsoft.com/downloads/details.aspx?FamilyId=262D25E3-F589-4842-8157-034D1E7CF3A3 URLSite = http://www.microsoft.com/downloads/details.aspx?FamilyId=262D25E3-F589-4842-8157-034D1E7CF3A3
URLDownload = http://download.microsoft.com/download/a/a/c/aac39226-8825-44ce-90e3-bf8203e74006/dotnetfx.exe URLDownload = http://download.microsoft.com/download/a/a/c/aac39226-8825-44ce-90e3-bf8203e74006/dotnetfx.exe
CDPath = none CDPath = none
[Section.0415]
Description = Microsoft .NET Framework Wersja 1.1 - Pakiet Dystrybucyjny.

View file

@ -10,3 +10,6 @@ Category = 14
URLSite = http://www.microsoft.com/downloads/details.aspx?FamilyID=0856eacb-4362-4b0d-8edd-aab15c5e04f5 URLSite = http://www.microsoft.com/downloads/details.aspx?FamilyID=0856eacb-4362-4b0d-8edd-aab15c5e04f5
URLDownload = http://download.microsoft.com/download/5/6/7/567758a3-759e-473e-bf8f-52154438565a/dotnetfx.exe URLDownload = http://download.microsoft.com/download/5/6/7/567758a3-759e-473e-bf8f-52154438565a/dotnetfx.exe
CDPath = none CDPath = none
[Section.0415]
Description = Microsoft .NET Framework Wersja 2.0 - Pakiet Dystrybucyjny.

View file

@ -10,3 +10,6 @@ Category = 14
URLSite = http://www.microsoft.com/downloads/details.aspx?familyid=5B2C0358-915B-4EB5-9B1D-10E506DA9D0F URLSite = http://www.microsoft.com/downloads/details.aspx?familyid=5B2C0358-915B-4EB5-9B1D-10E506DA9D0F
URLDownload = http://download.microsoft.com/download/c/6/e/c6e88215-0178-4c6c-b5f3-158ff77b1f38/NetFx20SP2_x86.exe URLDownload = http://download.microsoft.com/download/c/6/e/c6e88215-0178-4c6c-b5f3-158ff77b1f38/NetFx20SP2_x86.exe
CDPath = none CDPath = none
[Section.0415]
Description = Microsoft .NET Framework Wersja 2.0 Service Pack 2.

View file

@ -2,13 +2,13 @@
[Section] [Section]
Name = OpenTTD Name = OpenTTD
Version = 1.0.4 Version = 1.0.5
Licence = GPL v2 Licence = GPL v2
Description = Open Source clone of the "Transport Tycoon Deluxe" game engine. You need a copy of Transport Tycoon. Description = Open Source clone of the "Transport Tycoon Deluxe" game engine. You need a copy of Transport Tycoon.
Size = 3.4MB Size = 3.4MB
Category = 4 Category = 4
URLSite = http://www.openttd.org/ URLSite = http://www.openttd.org/
URLDownload = http://cz.binaries.openttd.org/openttd/binaries/releases/1.0.4/openttd-1.0.4-windows-win32.exe URLDownload = http://cz.binaries.openttd.org/openttd/binaries/releases/1.0.5/openttd-1.0.5-windows-win32.exe
CDPath = none CDPath = none
[Section.0407] [Section.0407]

View file

@ -2,13 +2,13 @@
[Section] [Section]
Name = Opera Name = Opera
Version = 10.62 Version = 10.63
Licence = Freeware Licence = Freeware
Description = The popular Opera Browser with many advanced features and including a Mail and BitTorrent client. Description = The popular Opera Browser with many advanced features and including a Mail and BitTorrent client.
Size = 12.7M Size = 12.7M
Category = 5 Category = 5
URLSite = http://www.opera.com/ URLSite = http://www.opera.com/
URLDownload = http://get4.opera.com/pub/opera/win/1062/int/Opera_1062_int_Setup.exe URLDownload = http://get4.opera.com/pub/opera/win/1063/int/Opera_1063_int_Setup.exe
CDPath = none CDPath = none
[Section.0407] [Section.0407]

View file

@ -14,5 +14,9 @@ CDPath = none
[Section.0407] [Section.0407]
Description = Eine sehr mächtige, dynamische Programmiersprache. Description = Eine sehr mächtige, dynamische Programmiersprache.
[Section.0415]
Description = Potęży i dynamiczny język programowania.
[Section.0422] [Section.0422]
Description = Дуже потужна динамічна мова програмування. Description = Дуже потужна динамічна мова програмування.

View file

@ -14,5 +14,8 @@ CDPath = none
[Section.0407] [Section.0407]
Description = ReMooD ist ein Port des Doom Legacy Sources. Es versucht das klassische Legacy Erfahrung zusammen mit neuen Features und mehr Stabilität zu bieten. Unterstützt werden Windows 98/98SE/ME/NT/2000/XP/2003/ Vista/2008/7/XP 64-bit/2003 64-bit/Vista 64-bit/2008 64-bit/7 64-bit; ReactOS 0.3.x und höher; und Linux (x86 und x86_64). Description = ReMooD ist ein Port des Doom Legacy Sources. Es versucht das klassische Legacy Erfahrung zusammen mit neuen Features und mehr Stabilität zu bieten. Unterstützt werden Windows 98/98SE/ME/NT/2000/XP/2003/ Vista/2008/7/XP 64-bit/2003 64-bit/Vista 64-bit/2008 64-bit/7 64-bit; ReactOS 0.3.x und höher; und Linux (x86 und x86_64).
[Section.0415]
Description = Żródłowy port Doom. Jego celem jest zapewnienie rozrywki znanej z klasycznej wersji z nowymi funkcjami, i lepszą stabilnością. Obsługuje Windows 98/98SE/ME/NT/2000/XP/2003/ Vista/2008/7/XP 64-bit/2003 64-bit/Vista 64-bit/2008 64-bit/7 64-bit; ReactOS 0.3.x i wyższe; i Linux (x86 i x86_64).
[Section.0422] [Section.0422]
Description = ReMooD Ñ<> Портом вихідних кодів Doom Legacy. Його метою Ñ” додати нові можливоÑ<C2BE>ÑÑ Ñ‚Ð° Ñ<>ÑабÑльнÑÑ<E28093>ÑÑŒ до доÑ<C2BE>вÑду клаÑ<C2B0>ичного Legacy. Він підтримує Windows 98/98SE/ME/NT/2000/XP/2003/ Vista/2008/7/XP 64-bit/2003 64-bit/Vista 64-bit/2008 64-bit/7 64-bit; ReactOS 0.3.x та новіші; а також Linux (x86 та x86_64). Description = ReMooD Ñ<> Портом вихідних кодів Doom Legacy. Його метою Ñ” додати нові можливоÑ<C2BE>ÑÑ Ñ‚Ð° Ñ<>ÑабÑльнÑÑ<E28093>ÑÑŒ до доÑ<C2BE>вÑду клаÑ<C2B0>ичного Legacy. Він підтримує Windows 98/98SE/ME/NT/2000/XP/2003/ Vista/2008/7/XP 64-bit/2003 64-bit/Vista 64-bit/2008 64-bit/7 64-bit; ReactOS 0.3.x та новіші; а також Linux (x86 та x86_64).

View file

@ -2,13 +2,13 @@
[Section] [Section]
Name = SciTE Name = SciTE
Version = 2.21 Version = 2.22
Licence = Freeware Licence = Freeware
Description = SciTE is a SCIntilla based Text Editor. Originally built to demonstrate Scintilla, it has grown to be a generally useful editor with facilities for building and running programs. Description = SciTE is a SCIntilla based Text Editor. Originally built to demonstrate Scintilla, it has grown to be a generally useful editor with facilities for building and running programs.
Size = 0.6M Size = 0.6M
Category = 7 Category = 7
URLSite = http://www.scintilla.org/ URLSite = http://www.scintilla.org/
URLDownload = http://kent.dl.sourceforge.net/project/scintilla/SciTE/2.21/Sc221.exe URLDownload = http://kent.dl.sourceforge.net/project/scintilla/SciTE/2.22/Sc222.exe
CDPath = none CDPath = none
[Section.0407] [Section.0407]
@ -17,5 +17,8 @@ Description = SciTE ist ein SCIntilla basierter Text Editor. Ursprünglich wurde
[Section.040a] [Section.040a]
Description = Editor de texto basado en SCIntilla. Originalmente creado para demostrar Scintilla, a crecido para ser un gran editor con capacidad para crear y ejecutar programas. Description = Editor de texto basado en SCIntilla. Originalmente creado para demostrar Scintilla, a crecido para ser un gran editor con capacidad para crear y ejecutar programas.
[Section.0415]
Description = SciTE to edytor tekstu bazowany na SCIntilla. Oryginalnie stworzony aby pokazać Scintille, stał sie ogólnie przydatnym edytorem z infrastrukturą potrzebną do tworzenia i uruchamiania programów.
[Section.0422] [Section.0422]
Description = Текстовий редактор на основі SCIntilla. Був зібраний як презентація Scintilla, але виріс до редактора загального користування з засобами збирання та запуску програм. Description = Текстовий редактор на основі SCIntilla. Був зібраний як презентація Scintilla, але виріс до редактора загального користування з засобами збирання та запуску програм.

View file

@ -2,13 +2,13 @@
[Section] [Section]
Name = ScummVM Name = ScummVM
Version = 1.1.1 Version = 1.2.0
Licence = GPL Licence = GPL
Description = Sam and Max, Day of the Tentacle, etc on ReactOS. Description = Sam and Max, Day of the Tentacle, etc on ReactOS.
Size = 3.3MB Size = 3.5MB
Category = 4 Category = 4
URLSite = http://scummvm.org/ URLSite = http://scummvm.org/
URLDownload = http://dfn.dl.sourceforge.net/project/scummvm/scummvm/1.1.1/scummvm-1.1.1-win32.exe URLDownload = http://dfn.dl.sourceforge.net/project/scummvm/scummvm/1.2.0/scummvm-1.2.0-win32.exe
CDPath = none CDPath = none
[Section.0407] [Section.0407]

View file

@ -2,31 +2,31 @@
[Section] [Section]
Name = Mozilla SeaMonkey Name = Mozilla SeaMonkey
Version = 2.0.8 Version = 2.0.10
Licence = MPL/GPL/LGPL Licence = MPL/GPL/LGPL
Description = Mozilla Suite is alive. This is the one and only Browser, Mail, Chat, and Composer bundle you will ever need. Description = Mozilla Suite is alive. This is the one and only Browser, Mail, Chat, and Composer bundle you will ever need.
Size = 10.1MB Size = 10.1MB
Category = 5 Category = 5
URLSite = http://www.seamonkey-project.org/ URLSite = http://www.seamonkey-project.org/
URLDownload = http://releases.mozilla.org/pub/mozilla.org/seamonkey/releases/2.0.8/win32/en-US/SeaMonkey%20Setup%202.0.8.exe URLDownload = http://releases.mozilla.org/pub/mozilla.org/seamonkey/releases/2.0.10/win32/en-US/SeaMonkey%20Setup%202.0.10.exe
CDPath = none CDPath = none
[Section.0407] [Section.0407]
Description = Mozilla Suite lebt. Dies ist das einzige Browser-, Mail-, Chat- and Composerwerkzeug-Bundle welches Sie benötigen. Description = Mozilla Suite lebt. Dies ist das einzige Browser-, Mail-, Chat- and Composerwerkzeug-Bundle welches Sie benötigen.
Size = 10.0MB Size = 10.0MB
URLDownload = http://releases.mozilla.org/pub/mozilla.org/seamonkey/releases/2.0.8/win32/de/SeaMonkey%20Setup%202.0.8.exe URLDownload = http://releases.mozilla.org/pub/mozilla.org/seamonkey/releases/2.0.10/win32/de/SeaMonkey%20Setup%202.0.10.exe
[Section.040a] [Section.040a]
Description = La suite de Mozilla está viva. Es el primero y único navegador web, gestor de correo, lector de noticias, Chat y editor HTML que necesitarás. Description = La suite de Mozilla está viva. Es el primero y único navegador web, gestor de correo, lector de noticias, Chat y editor HTML que necesitarás.
Size = 10.0MB Size = 10.0MB
URLDownload = http://releases.mozilla.org/pub/mozilla.org/seamonkey/releases/2.0.8/win32/es-ES/SeaMonkey%20Setup%202.0.8.exe URLDownload = http://releases.mozilla.org/pub/mozilla.org/seamonkey/releases/2.0.10/win32/es-ES/SeaMonkey%20Setup%202.0.10.exe
[Section.0415] [Section.0415]
Description = Pakiet Mozilla żyje. W zestawie: przeglądarka, klient poczty, IRC oraz Edytor HTML - wszystko, czego potrzebujesz. Description = Pakiet Mozilla żyje. W zestawie: przeglądarka, klient poczty, IRC oraz Edytor HTML - wszystko, czego potrzebujesz.
Size = 10.8MB Size = 10.8MB
URLDownload = http://releases.mozilla.org/pub/mozilla.org/seamonkey/releases/2.0.8/win32/pl/SeaMonkey%20Setup%202.0.8.exe URLDownload = http://releases.mozilla.org/pub/mozilla.org/seamonkey/releases/2.0.10/win32/pl/SeaMonkey%20Setup%202.0.10.exe
[Section.0419] [Section.0419]
Description = Продолжение Mozilla Suite. Включает браузер, почтовый клиент, IRC-клиент и HTML-редактор. Description = Продолжение Mozilla Suite. Включает браузер, почтовый клиент, IRC-клиент и HTML-редактор.
Size = 10.4MB Size = 10.4MB
URLDownload = http://releases.mozilla.org/pub/mozilla.org/seamonkey/releases/2.0.8/win32/ru/SeaMonkey%20Setup%202.0.8.exe URLDownload = http://releases.mozilla.org/pub/mozilla.org/seamonkey/releases/2.0.10/win32/ru/SeaMonkey%20Setup%202.0.10.exe

View file

@ -14,5 +14,8 @@ CDPath = none
[Section.0407] [Section.0407]
Description = Die STEAM Spieleplattform, die von viele Spielen verwendet wird. Description = Die STEAM Spieleplattform, die von viele Spielen verwendet wird.
[Section.0415]
Description = STEAM - platforma, którą używa obecnie wiele gier.
[Section.0422] [Section.0422]
Description = Ігрова платформа, що використовується багатьма іграми. Description = Ігрова платформа, що використовується багатьма іграми.

View file

@ -13,3 +13,6 @@ CDPath = none
[Section.0407] [Section.0407]
Description = Eine schnelle und effektive Suchanwendung. Description = Eine schnelle und effektive Suchanwendung.
[Section.0415]
Description = Szybka i bogata w opcje aplikacja szukająca.

View file

@ -15,6 +15,9 @@ CDPath = none
Licence = Unbekannt Licence = Unbekannt
Description = Tahoma Font pack, der von einigen Anwendungen benötigt wird (Steam). Description = Tahoma Font pack, der von einigen Anwendungen benötigt wird (Steam).
[Section.0415]
Description = Pakiet Czcionki Tahoma wymagany przez niektóre programy (np. Steam).
[Section.0422] [Section.0422]
Licence = Невідома Licence = Невідома
Description = Пакет шрифтів Tahoma, що необхідні деяким програмам (Steam). Description = Пакет шрифтів Tahoma, що необхідні деяким програмам (Steam).

View file

@ -2,41 +2,41 @@
[Section] [Section]
Name = Mozilla Thunderbird Name = Mozilla Thunderbird
Version = 3.1.4 Version = 3.1.6
Licence = MPL/GPL/LGPL Licence = MPL/GPL/LGPL
Description = The most popular and one of the best free Mail Clients out there. Description = The most popular and one of the best free Mail Clients out there.
Size = 9.0M Size = 9.0M
Category = 5 Category = 5
URLSite = http://www.mozilla-europe.org/en/products/thunderbird/ URLSite = http://www.mozilla-europe.org/en/products/thunderbird/
URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/3.1.4/win32/en-US/Thunderbird%20Setup%203.1.4.exe URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/3.1.6/win32/en-US/Thunderbird%20Setup%203.1.6.exe
CDPath = none CDPath = none
[Section.0407] [Section.0407]
Description = Der populärste und einer der besten freien Mail-Clients. Description = Der populärste und einer der besten freien Mail-Clients.
Size = 8.8M Size = 8.8M
URLSite = http://www.mozilla-europe.org/de/products/thunderbird/ URLSite = http://www.mozilla-europe.org/de/products/thunderbird/
URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/3.1.4/win32/de/Thunderbird%20Setup%203.1.4.exe URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/3.1.6/win32/de/Thunderbird%20Setup%203.1.6.exe
[Section.040a] [Section.040a]
Description = El más popular y uno de los mejores clientes mail que hay. Description = El más popular y uno de los mejores clientes mail que hay.
Size = 8.8M Size = 8.8M
URLSite = http://www.mozilla-europe.org/es/products/thunderbird/ URLSite = http://www.mozilla-europe.org/es/products/thunderbird/
URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/3.1.4/win32/es-ES/Thunderbird%20Setup%203.1.4.exe URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/3.1.6/win32/es-ES/Thunderbird%20Setup%203.1.6.exe
[Section.0415] [Section.0415]
Description = Najpopularniejszy i jeden z najlepszych darmowych klientów poczty. Description = Najpopularniejszy i jeden z najlepszych darmowych klientów poczty.
Size = 9.7M Size = 9.7M
URLSite = http://www.mozilla-europe.org/pl/products/thunderbird/ URLSite = http://www.mozilla-europe.org/pl/products/thunderbird/
URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/3.1.4/win32/pl/Thunderbird%20Setup%203.1.4.exe URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/3.1.6/win32/pl/Thunderbird%20Setup%203.1.6.exe
[Section.0419] [Section.0419]
Description = Один из самых популярных и лучших бесплатных почтовых клиентов. Description = Один из самых популярных и лучших бесплатных почтовых клиентов.
Size = 9.2M Size = 9.2M
URLSite = http://www.mozilla-europe.org/ru/products/thunderbird/ URLSite = http://www.mozilla-europe.org/ru/products/thunderbird/
URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/3.1.4/win32/ru/Thunderbird%20Setup%203.1.4.exe URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/3.1.6/win32/ru/Thunderbird%20Setup%203.1.6.exe
[Section.0422] [Section.0422]
Description = Найпопулярніший та один з кращих поштових клієнтів. Description = Найпопулярніший та один з кращих поштових клієнтів.
Size = 9.2M Size = 9.2M
URLSite = http://www.mozillamessaging.com/uk/thunderbird/ URLSite = http://www.mozillamessaging.com/uk/thunderbird/
URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/3.1.4/win32/uk/Thunderbird%20Setup%203.1.4.exe URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/3.1.6/win32/uk/Thunderbird%20Setup%203.1.6.exe

View file

@ -2,17 +2,20 @@
[Section] [Section]
Name = UltraVNC Name = UltraVNC
Version = 1.0.8.2 Version = 1.0.9.1
Licence = GPL Licence = GPL
Description = Open-source VNC client/server. Description = Open-source VNC client/server.
Size = 1.9MB Size = 2.0MB
Category = 5 Category = 5
URLSite = http://www.uvnc.com/ URLSite = http://www.uvnc.com/
URLDownload = http://support1.uvnc.com/download/1082/UltraVNC_1.0.8.2_Setup.exe URLDownload = http://support1.uvnc.com/download/109/UltraVNC_1.0.9.1_Setup.exe
CDPath = none CDPath = none
[Section.040a] [Section.040a]
Description = Cliente/Servidor VNC de código abierto. Description = Cliente/Servidor VNC de código abierto.
[Section.0415]
Description = Otwarty klient/serwer VNC.
[Section.0422] [Section.0422]
Description = Відкритий VNC клієнт/сервер. Description = Відкритий VNC клієнт/сервер.

View file

@ -2,13 +2,13 @@
[Section] [Section]
Name = µTorrent Name = µTorrent
Version = 2.0.4 Version = 2.2
Licence = Freeware for non-commercial uses Licence = Freeware for non-commercial uses
Description = Small and fast BitTorrent Client. Description = Small and fast BitTorrent Client.
Size = 320K Size = 385K
Category = 5 Category = 5
URLSite = http://www.utorrent.com/ URLSite = http://www.utorrent.com/
URLDownload = http://download.utorrent.com/2.0.4/utorrent.exe URLDownload = http://download.utorrent.com/2.2/utorrent.exe
CDPath = none CDPath = none

View file

@ -2,13 +2,13 @@
[Section] [Section]
Name = VLC media player Name = VLC media player
Version = 1.1.4 Version = 1.1.5
Licence = GPL Licence = GPL
Description = A media player. Description = A media player.
Size = 18.7MB Size = 19.1MB
Category = 1 Category = 1
URLSite = http://www.videolan.org/vlc/ URLSite = http://www.videolan.org/vlc/
URLDownload = http://ignum.dl.sourceforge.net/project/vlc/1.1.4/win32/vlc-1.1.4-win32.exe URLDownload = http://ignum.dl.sourceforge.net/project/vlc/1.1.5/win32/vlc-1.1.5-win32.exe
CDPath = none CDPath = none
[Section.0407] [Section.0407]
@ -20,5 +20,8 @@ Description = Reproductor multimedia.
[Section.0419] [Section.0419]
Description = Мультимедийный проигрыватель. Description = Мультимедийный проигрыватель.
[Section.0415]
Description = Odtwarzacz multimediów.
[Section.0422] [Section.0422]
Description = Мультимедійний програвач. Description = Мультимедійний програвач.

View file

@ -67,19 +67,21 @@ static void draw_splitbar(HWND hWnd, int x)
static void ResizeWnd(ChildWnd* pChildWnd, int cx, int cy) static void ResizeWnd(ChildWnd* pChildWnd, int cx, int cy)
{ {
HDWP hdwp = BeginDeferWindowPos(2); HDWP hdwp = BeginDeferWindowPos(3);
RECT rt, rs; RECT rt, rs, rb;
const int tHeight = 18;
SetRect(&rt, 0, 0, cx, cy); SetRect(&rt, 0, 0, cx, cy);
cy = 0; cy = 0;
if (hStatusBar != NULL) { if (hStatusBar != NULL) {
GetWindowRect(hStatusBar, &rs); GetWindowRect(hStatusBar, &rs);
cy = rs.bottom - rs.top + 8; cy = rs.bottom - rs.top;
} }
GetWindowRect(pChildWnd->hAddressBtnWnd, &rb);
cx = pChildWnd->nSplitPos + SPLIT_WIDTH/2; cx = pChildWnd->nSplitPos + SPLIT_WIDTH/2;
DeferWindowPos(hdwp, pChildWnd->hAddressBarWnd, 0, rt.left, rt.top, rt.right-rt.left, 23, SWP_NOZORDER|SWP_NOACTIVATE); DeferWindowPos(hdwp, pChildWnd->hAddressBarWnd, 0, rt.left, rt.top, rt.right-rt.left - tHeight-2, tHeight, SWP_NOZORDER|SWP_NOACTIVATE);
DeferWindowPos(hdwp, pChildWnd->hTreeWnd, 0, rt.left, rt.top + 25, pChildWnd->nSplitPos-SPLIT_WIDTH/2-rt.left, rt.bottom-rt.top-cy, SWP_NOZORDER|SWP_NOACTIVATE); DeferWindowPos(hdwp, pChildWnd->hAddressBtnWnd, 0, rt.right - tHeight, rt.top, tHeight, tHeight, SWP_NOZORDER|SWP_NOACTIVATE);
DeferWindowPos(hdwp, pChildWnd->hListWnd, 0, rt.left+cx , rt.top + 25, rt.right-cx, rt.bottom-rt.top-cy, SWP_NOZORDER|SWP_NOACTIVATE); DeferWindowPos(hdwp, pChildWnd->hTreeWnd, 0, rt.left, rt.top + tHeight+2, pChildWnd->nSplitPos-SPLIT_WIDTH/2-rt.left, rt.bottom-rt.top-cy, SWP_NOZORDER|SWP_NOACTIVATE);
DeferWindowPos(hdwp, pChildWnd->hListWnd, 0, rt.left+cx, rt.top + tHeight+2, rt.right-cx, rt.bottom-rt.top-cy, SWP_NOZORDER|SWP_NOACTIVATE);
EndDeferWindowPos(hdwp); EndDeferWindowPos(hdwp);
} }
@ -259,7 +261,7 @@ static void SuggestKeys(HKEY hRootKey, LPCTSTR pszKeyPath, LPTSTR pszSuggestions
/* Check CLSID key */ /* Check CLSID key */
if (RegOpenKey(hRootKey, pszKeyPath, &hSubKey) == ERROR_SUCCESS) if (RegOpenKey(hRootKey, pszKeyPath, &hSubKey) == ERROR_SUCCESS)
{ {
if (QueryStringValue(hSubKey, TEXT("CLSID"), NULL, szBuffer, if (QueryStringValue(hSubKey, TEXT("CLSID"), NULL, szBuffer,
COUNT_OF(szBuffer)) == ERROR_SUCCESS) COUNT_OF(szBuffer)) == ERROR_SUCCESS)
{ {
lstrcpyn(pszSuggestions, TEXT("HKCR\\CLSID\\"), (int) iSuggestionsLength); lstrcpyn(pszSuggestions, TEXT("HKCR\\CLSID\\"), (int) iSuggestionsLength);
@ -324,29 +326,35 @@ LRESULT CALLBACK ChildWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lPa
/* load "My Computer" string */ /* load "My Computer" string */
LoadString(hInst, IDS_MY_COMPUTER, buffer, sizeof(buffer)/sizeof(TCHAR)); LoadString(hInst, IDS_MY_COMPUTER, buffer, sizeof(buffer)/sizeof(TCHAR));
g_pChildWnd = pChildWnd = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(ChildWnd)); g_pChildWnd = pChildWnd = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(ChildWnd));
if (!pChildWnd) return 0; if (!pChildWnd) return 0;
_tcsncpy(pChildWnd->szPath, buffer, MAX_PATH); _tcsncpy(pChildWnd->szPath, buffer, MAX_PATH);
pChildWnd->nSplitPos = 250; pChildWnd->nSplitPos = 250;
pChildWnd->hWnd = hWnd; pChildWnd->hWnd = hWnd;
pChildWnd->hAddressBarWnd = CreateWindowEx(WS_EX_CLIENTEDGE, _T("Edit"), NULL, WS_CHILD | WS_VISIBLE | WS_CHILDWINDOW | WS_TABSTOP, pChildWnd->hAddressBarWnd = CreateWindowEx(WS_EX_CLIENTEDGE, _T("Edit"), NULL, WS_CHILD | WS_VISIBLE | WS_CHILDWINDOW | WS_TABSTOP,
CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
hWnd, (HMENU)0, hInst, 0); hWnd, (HMENU)0, hInst, 0);
pChildWnd->hAddressBtnWnd = CreateWindowEx(WS_EX_CLIENTEDGE, _T("Button"), _T("»"), WS_CHILD | WS_VISIBLE | WS_CHILDWINDOW | WS_TABSTOP | BS_DEFPUSHBUTTON,
CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
hWnd, (HMENU)0, hInst, 0);
pChildWnd->hTreeWnd = CreateTreeView(hWnd, pChildWnd->szPath, (HMENU) TREE_WINDOW); pChildWnd->hTreeWnd = CreateTreeView(hWnd, pChildWnd->szPath, (HMENU) TREE_WINDOW);
pChildWnd->hListWnd = CreateListView(hWnd, (HMENU) LIST_WINDOW/*, pChildWnd->szPath*/); pChildWnd->hListWnd = CreateListView(hWnd, (HMENU) LIST_WINDOW/*, pChildWnd->szPath*/);
SetFocus(pChildWnd->hTreeWnd); SetFocus(pChildWnd->hTreeWnd);
/* set the address bar font */ /* set the address bar and button font */
if (pChildWnd->hAddressBarWnd) if ((pChildWnd->hAddressBarWnd) && (pChildWnd->hAddressBtnWnd))
{ {
hFont = (HFONT)GetStockObject(DEFAULT_GUI_FONT); hFont = (HFONT)GetStockObject(DEFAULT_GUI_FONT);
SendMessage(pChildWnd->hAddressBarWnd, SendMessage(pChildWnd->hAddressBarWnd,
WM_SETFONT, WM_SETFONT,
(WPARAM)hFont, (WPARAM)hFont,
0); 0);
SendMessage(pChildWnd->hAddressBtnWnd,
WM_SETFONT,
(WPARAM)hFont,
0);
} }
/* Subclass the AddressBar */ /* Subclass the AddressBar */
oldproc = (WNDPROC)(LONG_PTR)GetWindowLongPtr(pChildWnd->hAddressBarWnd, GWL_WNDPROC); oldproc = (WNDPROC)(LONG_PTR)GetWindowLongPtr(pChildWnd->hAddressBarWnd, GWL_WNDPROC);
SetWindowLongPtr(pChildWnd->hAddressBarWnd, GWL_USERDATA, (DWORD_PTR)oldproc); SetWindowLongPtr(pChildWnd->hAddressBarWnd, GWL_USERDATA, (DWORD_PTR)oldproc);
@ -354,7 +362,10 @@ LRESULT CALLBACK ChildWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lPa
break; break;
} }
case WM_COMMAND: case WM_COMMAND:
if (!_CmdWndProc(hWnd, message, wParam, lParam)) { if(HIWORD(wParam) == BN_CLICKED){
PostMessage(pChildWnd->hAddressBarWnd, WM_KEYUP, VK_RETURN, 0);
}
else if (!_CmdWndProc(hWnd, message, wParam, lParam)) {
goto def; goto def;
} }
break; break;
@ -477,10 +488,28 @@ LRESULT CALLBACK ChildWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lPa
rootName = get_root_key_name(hRootKey); rootName = get_root_key_name(hRootKey);
fullPath = HeapAlloc(GetProcessHeap(), 0, (_tcslen(rootName) + 1 + _tcslen(keyPath) + 1) * sizeof(TCHAR)); fullPath = HeapAlloc(GetProcessHeap(), 0, (_tcslen(rootName) + 1 + _tcslen(keyPath) + 1) * sizeof(TCHAR));
if (fullPath) { if (fullPath) {
_stprintf(fullPath, _T("%s\\%s"), rootName, keyPath); /* set (correct) the address bar text */
if(keyPath[0] != '\0')
_stprintf(fullPath, _T("%s\\%s"), rootName, keyPath);
else
fullPath = _tcscpy(fullPath, rootName);
SendMessage(hStatusBar, SB_SETTEXT, 0, (LPARAM)fullPath); SendMessage(hStatusBar, SB_SETTEXT, 0, (LPARAM)fullPath);
SendMessage(pChildWnd->hAddressBarWnd, WM_SETTEXT, 0, (LPARAM)fullPath); SendMessage(pChildWnd->hAddressBarWnd, WM_SETTEXT, 0, (LPARAM)fullPath);
HeapFree(GetProcessHeap(), 0, fullPath); HeapFree(GetProcessHeap(), 0, fullPath);
/* disable hive manipulation items temporarily (enable only if necessary) */
EnableMenuItem(GetSubMenu(hMenuFrame,0), ID_REGISTRY_LOADHIVE, MF_BYCOMMAND | MF_GRAYED);
EnableMenuItem(GetSubMenu(hMenuFrame,0), ID_REGISTRY_UNLOADHIVE, MF_BYCOMMAND | MF_GRAYED);
/* compare the strings to see if we should enable/disable the "Load Hive" menus accordingly */
if (!(_tcsicmp(rootName, TEXT("HKEY_LOCAL_MACHINE")) &&
_tcsicmp(rootName, TEXT("HKEY_USERS"))))
{
// enable the unload menu item if at the root
// otherwise enable the load menu item if there is no slash in keyPath (ie. immediate child selected)
if(keyPath[0] == '\0')
EnableMenuItem(GetSubMenu(hMenuFrame,0), ID_REGISTRY_LOADHIVE, MF_BYCOMMAND | MF_ENABLED);
else if(!_tcschr(keyPath, _T('\\')))
EnableMenuItem(GetSubMenu(hMenuFrame,0), ID_REGISTRY_UNLOADHIVE, MF_BYCOMMAND | MF_ENABLED);
}
{ {
HKEY hKey; HKEY hKey;

View file

@ -59,19 +59,10 @@ void error(HWND hwnd, INT resId, ...)
static void error_code_messagebox(HWND hwnd, DWORD error_code) static void error_code_messagebox(HWND hwnd, DWORD error_code)
{ {
LPTSTR lpMsgBuf;
DWORD status;
TCHAR title[256]; TCHAR title[256];
static const TCHAR fallback[] = TEXT("Error displaying error message.\n");
if (!LoadString(hInst, IDS_ERROR, title, COUNT_OF(title))) if (!LoadString(hInst, IDS_ERROR, title, COUNT_OF(title)))
lstrcpy(title, TEXT("Error")); lstrcpy(title, TEXT("Error"));
status = FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, ErrorMessageBox(hwnd, title, error_code);
NULL, error_code, 0, (LPTSTR)&lpMsgBuf, 0, NULL);
if (!status)
lpMsgBuf = (LPTSTR)fallback;
MessageBox(hwnd, lpMsgBuf, title, MB_OK | MB_ICONERROR);
if (lpMsgBuf != fallback)
LocalFree(lpMsgBuf);
} }
void warning(HWND hwnd, INT resId, ...) void warning(HWND hwnd, INT resId, ...)

View file

@ -0,0 +1,14 @@
#include <regedit.h>
void ErrorMessageBox(HWND hWnd, LPCTSTR title, DWORD code)
{
LPTSTR lpMsgBuf;
DWORD status;
static const TCHAR fallback[] = TEXT("Error displaying error message.\n");
status = FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
NULL, code, 0, (LPTSTR)&lpMsgBuf, 0, NULL);
if (!status)
lpMsgBuf = (LPTSTR)fallback;
MessageBox(hWnd, lpMsgBuf, title, MB_OK | MB_ICONERROR);
if (lpMsgBuf != fallback)
LocalFree(lpMsgBuf);
}

View file

@ -282,6 +282,105 @@ static BOOL InitOpenFileName(HWND hWnd, OPENFILENAME* pofn)
return TRUE; return TRUE;
} }
static INT_PTR CALLBACK LoadHive_KeyNameInHookProc(HWND hWndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
static LPTSTR sKey = NULL;
static INT sLength = 0;
switch(uMsg)
{
case WM_INITDIALOG:
sKey = (LPTSTR)lParam;
sLength = 128; /* FIXME: Ugly hack! */
case WM_COMMAND:
switch(LOWORD(wParam))
{
case IDOK:
if(GetDlgItemText(hWndDlg, IDC_EDIT_KEY, sKey, sLength))
return EndDialog(hWndDlg, -1);
else
return EndDialog(hWndDlg, 0);
case IDCANCEL:
return EndDialog(hWndDlg, 0);
}
break;
}
return FALSE;
}
static BOOL LoadHive(HWND hWnd)
{
OPENFILENAME ofn;
TCHAR Caption[128];
LPCTSTR pszKeyPath;
TCHAR xPath[128];
HKEY hRootKey;
TCHAR Filter[1024];
FILTERPAIR filter;
/* get the item key to load the hive in */
pszKeyPath = GetItemPath(g_pChildWnd->hTreeWnd, 0, &hRootKey);
/* initialize the "open file" dialog */
InitOpenFileName(hWnd, &ofn);
/* build the "All Files" filter up */
filter.DisplayID = IDS_FLT_ALLFILES;
filter.FilterID = IDS_FLT_ALLFILES_FLT;
BuildFilterStrings(Filter, &filter, sizeof(filter));
ofn.lpstrFilter = Filter;
/* load and set the caption and flags for dialog */
LoadString(hInst, IDS_LOAD_HIVE, Caption, COUNT_OF(Caption));
ofn.lpstrTitle = Caption;
ofn.Flags |= OFN_ENABLESIZING;
/* ofn.lCustData = ;*/
/* now load the hive */
if (GetOpenFileName(&ofn))
{
if(DialogBoxParam(hInst, MAKEINTRESOURCE(IDD_LOADHIVE), hWnd, &LoadHive_KeyNameInHookProc, (LPARAM)xPath))
{
LONG regLoadResult = RegLoadKey(hRootKey, xPath, ofn.lpstrFile);
if(regLoadResult == ERROR_SUCCESS)
{
/* refresh tree and list views */
RefreshTreeView(g_pChildWnd->hTreeWnd);
pszKeyPath = GetItemPath(g_pChildWnd->hTreeWnd, 0, &hRootKey);
RefreshListView(g_pChildWnd->hListWnd, hRootKey, pszKeyPath);
}
else
{
ErrorMessageBox(hWnd, Caption, regLoadResult);
return FALSE;
}
}
} else {
CheckCommDlgError(hWnd);
}
return TRUE;
}
static BOOL UnloadHive(HWND hWnd)
{
TCHAR Caption[128];
LPCTSTR pszKeyPath;
HKEY hRootKey;
/* get the item key to unload */
pszKeyPath = GetItemPath(g_pChildWnd->hTreeWnd, 0, &hRootKey);
/* load and set the caption and flags for dialog */
LoadString(hInst, IDS_UNLOAD_HIVE, Caption, COUNT_OF(Caption));
/* now unload the hive */
LONG regUnloadResult = RegUnLoadKey(hRootKey, pszKeyPath);
if(regUnloadResult == ERROR_SUCCESS)
{
/* refresh tree and list views */
RefreshTreeView(g_pChildWnd->hTreeWnd);
pszKeyPath = GetItemPath(g_pChildWnd->hTreeWnd, 0, &hRootKey);
RefreshListView(g_pChildWnd->hListWnd, hRootKey, pszKeyPath);
}
else
{
ErrorMessageBox(hWnd, Caption, regUnloadResult);
return FALSE;
}
return TRUE;
}
static BOOL ImportRegistryFile(HWND hWnd) static BOOL ImportRegistryFile(HWND hWnd)
{ {
OPENFILENAME ofn; OPENFILENAME ofn;
@ -316,7 +415,6 @@ static BOOL ImportRegistryFile(HWND hWnd)
return TRUE; return TRUE;
} }
static UINT_PTR CALLBACK ExportRegistryFile_OFNHookProc(HWND hdlg, UINT uiMsg, WPARAM wParam, LPARAM lParam) static UINT_PTR CALLBACK ExportRegistryFile_OFNHookProc(HWND hdlg, UINT uiMsg, WPARAM wParam, LPARAM lParam)
{ {
HWND hwndExportAll; HWND hwndExportAll;
@ -397,7 +495,7 @@ BOOL ExportRegistryFile(HWND hWnd)
if (GetSaveFileName(&ofn)) { if (GetSaveFileName(&ofn)) {
BOOL result; BOOL result;
DWORD format; DWORD format;
if (ofn.nFilterIndex == 1) if (ofn.nFilterIndex == 1)
format = REG_FORMAT_5; format = REG_FORMAT_5;
else else
@ -758,6 +856,12 @@ static BOOL _CmdWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
UNREFERENCED_PARAMETER(message); UNREFERENCED_PARAMETER(message);
switch (LOWORD(wParam)) { switch (LOWORD(wParam)) {
case ID_REGISTRY_LOADHIVE:
LoadHive(hWnd);
return TRUE;
case ID_REGISTRY_UNLOADHIVE:
UnloadHive(hWnd);
return TRUE;
case ID_REGISTRY_IMPORTREGISTRYFILE: case ID_REGISTRY_IMPORTREGISTRYFILE:
ImportRegistryFile(hWnd); ImportRegistryFile(hWnd);
return TRUE; return TRUE;

View file

@ -177,6 +177,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84 IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -276,6 +286,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Внася словесен файл в регистъра" ID_REGISTRY_IMPORTREGISTRYFILE "Внася словесен файл в регистъра"
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"Изнася целия регистър или части от него в словесен файл" "Изнася целия регистър или части от него в словесен файл"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"Свързва се с регистъра на далечен компютър" "Свързва се с регистъра на далечен компютър"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -332,6 +346,8 @@ BEGIN
IDS_MY_COMPUTER "Моят компютър" IDS_MY_COMPUTER "Моят компютър"
IDS_IMPORT_REG_FILE "Внос на регистърен файл" IDS_IMPORT_REG_FILE "Внос на регистърен файл"
IDS_EXPORT_REG_FILE "Износ на регистърен файл" IDS_EXPORT_REG_FILE "Износ на регистърен файл"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(самостоятелна стойност на двойна дума)" IDS_INVALID_DWORD "(самостоятелна стойност на двойна дума)"
END END

View file

@ -175,6 +175,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84 IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -274,6 +284,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Importuje textový soubor do registru" ID_REGISTRY_IMPORTREGISTRYFILE "Importuje textový soubor do registru"
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"Exportuje všechny části registru do textového souboru" "Exportuje všechny části registru do textového souboru"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"Připojí se ke vzdálenému registru jiného počítače" "Připojí se ke vzdálenému registru jiného počítače"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -330,6 +344,8 @@ BEGIN
IDS_MY_COMPUTER "Tento počítač" IDS_MY_COMPUTER "Tento počítač"
IDS_IMPORT_REG_FILE "Importovat soubor registru" IDS_IMPORT_REG_FILE "Importovat soubor registru"
IDS_EXPORT_REG_FILE "Exportovat do souboru registru" IDS_EXPORT_REG_FILE "Exportovat do souboru registru"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(Neplatná hodnota DWORD)" IDS_INVALID_DWORD "(Neplatná hodnota DWORD)"
END END

View file

@ -177,6 +177,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84 IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -276,6 +286,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Importiert eine Textddatei in die Registry" ID_REGISTRY_IMPORTREGISTRYFILE "Importiert eine Textddatei in die Registry"
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"Exportiert Teile oder die ganze Registry in eine Textdatei" "Exportiert Teile oder die ganze Registry in eine Textdatei"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"Verbindet zu einer Registry eines Fremdcomputers" "Verbindet zu einer Registry eines Fremdcomputers"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -332,6 +346,8 @@ BEGIN
IDS_MY_COMPUTER "Arbeitsplatz" IDS_MY_COMPUTER "Arbeitsplatz"
IDS_IMPORT_REG_FILE "Registry importieren" IDS_IMPORT_REG_FILE "Registry importieren"
IDS_EXPORT_REG_FILE "Registry exportieren" IDS_EXPORT_REG_FILE "Registry exportieren"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(ungültiger DWORD-Wert)" IDS_INVALID_DWORD "(ungültiger DWORD-Wert)"
END END

View file

@ -177,6 +177,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84 IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -276,6 +286,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "ÅéóÜãåé Ýíá áñ÷åßï êåéìÝíïõ óôç registry" ID_REGISTRY_IMPORTREGISTRYFILE "ÅéóÜãåé Ýíá áñ÷åßï êåéìÝíïõ óôç registry"
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"ÅîÜãùç üëç Þ Ýíá êïììÜôé ôçò registry óå Ýíá áñ÷åßï êåéìÝíïõ" "ÅîÜãùç üëç Þ Ýíá êïììÜôé ôçò registry óå Ýíá áñ÷åßï êåéìÝíïõ"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"ÓõíäÝååôáé óôç registry åíüò áðïìáêñõóìÝíïõ õðïëïãéóôÞ" "ÓõíäÝååôáé óôç registry åíüò áðïìáêñõóìÝíïõ õðïëïãéóôÞ"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -332,6 +346,8 @@ BEGIN
IDS_MY_COMPUTER "Ï ÕðïëïãéóôÞò Ìïõ" IDS_MY_COMPUTER "Ï ÕðïëïãéóôÞò Ìïõ"
IDS_IMPORT_REG_FILE "ÅéóáãùãÞ Áñ÷åßïõ Registry" IDS_IMPORT_REG_FILE "ÅéóáãùãÞ Áñ÷åßïõ Registry"
IDS_EXPORT_REG_FILE "ÅîáãùãÞ Áñ÷åßïõ Registry" IDS_EXPORT_REG_FILE "ÅîáãùãÞ Áñ÷åßïõ Registry"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(ìç Ýãêõñç DWORD ôéìÞ)" IDS_INVALID_DWORD "(ìç Ýãêõñç DWORD ôéìÞ)"
END END

View file

@ -274,6 +274,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Imports a text file into the registry" ID_REGISTRY_IMPORTREGISTRYFILE "Imports a text file into the registry"
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"Exports all or part of the registry to a text file" "Exports all or part of the registry to a text file"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"Connects to a remote computer's registry" "Connects to a remote computer's registry"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -330,6 +334,8 @@ BEGIN
IDS_MY_COMPUTER "My Computer" IDS_MY_COMPUTER "My Computer"
IDS_IMPORT_REG_FILE "Import Registry File" IDS_IMPORT_REG_FILE "Import Registry File"
IDS_EXPORT_REG_FILE "Export Registry File" IDS_EXPORT_REG_FILE "Export Registry File"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(invalid DWORD value)" IDS_INVALID_DWORD "(invalid DWORD value)"
END END
@ -392,6 +398,20 @@ BEGIN
EDITTEXT IDC_EXPORT_BRANCH_TEXT,30,34,335,12 EDITTEXT IDC_EXPORT_BRANCH_TEXT,30,34,335,12
END END
//
// Dialog resources
//
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_ADDFAVORITES DIALOGEX DISCARDABLE 0, 0, 186, 46 IDD_ADDFAVORITES DIALOGEX DISCARDABLE 0, 0, 186, 46
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Add to Favorites" CAPTION "Add to Favorites"

View file

@ -180,6 +180,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84 IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -279,6 +289,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Importa un archivo de texto al registro" ID_REGISTRY_IMPORTREGISTRYFILE "Importa un archivo de texto al registro"
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"Exporta todo o parte del registro a un archivo de texto" "Exporta todo o parte del registro a un archivo de texto"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"Se conecta al registro de un ordenador remoto" "Se conecta al registro de un ordenador remoto"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -335,6 +349,8 @@ BEGIN
IDS_MY_COMPUTER "Mi PC" IDS_MY_COMPUTER "Mi PC"
IDS_IMPORT_REG_FILE "Importa Fichero de Registro" IDS_IMPORT_REG_FILE "Importa Fichero de Registro"
IDS_EXPORT_REG_FILE "Exporta Fichero de Registro" IDS_EXPORT_REG_FILE "Exporta Fichero de Registro"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(valor DWORD invalido)" IDS_INVALID_DWORD "(valor DWORD invalido)"
END END

View file

@ -180,6 +180,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84 IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -279,6 +289,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Importe un fichier texte dans les registres" ID_REGISTRY_IMPORTREGISTRYFILE "Importe un fichier texte dans les registres"
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"Exporte tout ou une partie des registres dans un fichier texte" "Exporte tout ou une partie des registres dans un fichier texte"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"Connecte aux registres d'un ordinateur distant" "Connecte aux registres d'un ordinateur distant"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -335,6 +349,8 @@ BEGIN
IDS_MY_COMPUTER "Mon ordinateur" IDS_MY_COMPUTER "Mon ordinateur"
IDS_IMPORT_REG_FILE "Importer un fichier registre" IDS_IMPORT_REG_FILE "Importer un fichier registre"
IDS_EXPORT_REG_FILE "Exporter un fichier registre" IDS_EXPORT_REG_FILE "Exporter un fichier registre"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(valeur mot double invalide)" IDS_INVALID_DWORD "(valeur mot double invalide)"
END END

View file

@ -178,6 +178,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84 IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -277,6 +287,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Imports a text file into the registry" ID_REGISTRY_IMPORTREGISTRYFILE "Imports a text file into the registry"
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"Exports all or part of the registry to a text file" "Exports all or part of the registry to a text file"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"Connects to a remote computer's registry" "Connects to a remote computer's registry"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -333,6 +347,8 @@ BEGIN
IDS_MY_COMPUTER "My Computer" IDS_MY_COMPUTER "My Computer"
IDS_IMPORT_REG_FILE "Import Registry File" IDS_IMPORT_REG_FILE "Import Registry File"
IDS_EXPORT_REG_FILE "Export Registry File" IDS_EXPORT_REG_FILE "Export Registry File"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(invalid DWORD value)" IDS_INVALID_DWORD "(invalid DWORD value)"
END END

View file

@ -177,6 +177,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84 IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -276,6 +286,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Mengimpor file teks ke dalam registri" ID_REGISTRY_IMPORTREGISTRYFILE "Mengimpor file teks ke dalam registri"
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"Mengekspor semua atau sebagian registri le file teks" "Mengekspor semua atau sebagian registri le file teks"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"Menyambung ke registri komputer remote" "Menyambung ke registri komputer remote"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -332,6 +346,8 @@ BEGIN
IDS_MY_COMPUTER "My Computer" IDS_MY_COMPUTER "My Computer"
IDS_IMPORT_REG_FILE "Impor File Registri" IDS_IMPORT_REG_FILE "Impor File Registri"
IDS_EXPORT_REG_FILE "Ekspor File Registri" IDS_EXPORT_REG_FILE "Ekspor File Registri"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(nilai DWORD tidak benar)" IDS_INVALID_DWORD "(nilai DWORD tidak benar)"
END END

View file

@ -180,6 +180,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84 IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -281,6 +291,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Importa un file di testo nel Registro" ID_REGISTRY_IMPORTREGISTRYFILE "Importa un file di testo nel Registro"
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"Esporta tutto o parte del Registro in un file di testo" "Esporta tutto o parte del Registro in un file di testo"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"Si connette al Registro di un computer remoto" "Si connette al Registro di un computer remoto"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -337,6 +351,8 @@ BEGIN
IDS_MY_COMPUTER "Il mio Computer" IDS_MY_COMPUTER "Il mio Computer"
IDS_IMPORT_REG_FILE "Importa file di Registro" IDS_IMPORT_REG_FILE "Importa file di Registro"
IDS_EXPORT_REG_FILE "Esporta file di Registro" IDS_EXPORT_REG_FILE "Esporta file di Registro"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(valore DWORD non valido)" IDS_INVALID_DWORD "(valore DWORD non valido)"
END END

View file

@ -175,6 +175,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84 IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -274,6 +284,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "テキスト ファイルをレジストリにインポートします。" ID_REGISTRY_IMPORTREGISTRYFILE "テキスト ファイルをレジストリにインポートします。"
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"レジストリの一部または全体をテキスト ファイルにエクスポートします。" "レジストリの一部または全体をテキスト ファイルにエクスポートします。"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"リモート コンピュータのレジストリに接続します。" "リモート コンピュータのレジストリに接続します。"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -330,6 +344,8 @@ BEGIN
IDS_MY_COMPUTER "マイ コンピュータ" IDS_MY_COMPUTER "マイ コンピュータ"
IDS_IMPORT_REG_FILE "レジストリ ファイルのインポート" IDS_IMPORT_REG_FILE "レジストリ ファイルのインポート"
IDS_EXPORT_REG_FILE "レジストリ ファイルのエクスポート" IDS_EXPORT_REG_FILE "レジストリ ファイルのエクスポート"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(無効な DWORD 値)" IDS_INVALID_DWORD "(無効な DWORD 値)"
END END

View file

@ -162,6 +162,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84 IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -261,6 +271,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "텍스트 파일을 레지스트리로 불러 옵니다" ID_REGISTRY_IMPORTREGISTRYFILE "텍스트 파일을 레지스트리로 불러 옵니다"
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"텍스트 파일로 레지스트리의 전체나 일부를 내보냅니다" "텍스트 파일로 레지스트리의 전체나 일부를 내보냅니다"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"원격 컴퓨터의 레지스트리로 접속합니다" "원격 컴퓨터의 레지스트리로 접속합니다"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -317,6 +331,8 @@ BEGIN
IDS_MY_COMPUTER "내 컴퓨터" IDS_MY_COMPUTER "내 컴퓨터"
IDS_IMPORT_REG_FILE "레지스트리 파일 불러오기" IDS_IMPORT_REG_FILE "레지스트리 파일 불러오기"
IDS_EXPORT_REG_FILE "레지스트리 파일 내보내기" IDS_EXPORT_REG_FILE "레지스트리 파일 내보내기"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(잘못된 DWORD값)" IDS_INVALID_DWORD "(잘못된 DWORD값)"
END END

View file

@ -177,6 +177,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84 IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -276,6 +286,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Een tekstbestand in het register importeren" ID_REGISTRY_IMPORTREGISTRYFILE "Een tekstbestand in het register importeren"
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"Het register of een gedeelte ervan naar een tekstbestand exporteren" "Het register of een gedeelte ervan naar een tekstbestand exporteren"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"Een verbinding maken met het register van een externe computer" "Een verbinding maken met het register van een externe computer"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -332,6 +346,8 @@ BEGIN
IDS_MY_COMPUTER "My Computer" IDS_MY_COMPUTER "My Computer"
IDS_IMPORT_REG_FILE "Import Registry File" IDS_IMPORT_REG_FILE "Import Registry File"
IDS_EXPORT_REG_FILE "Export Registry File" IDS_EXPORT_REG_FILE "Export Registry File"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(invalid DWORD value)" IDS_INVALID_DWORD "(invalid DWORD value)"
END END

View file

@ -177,6 +177,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84 IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -276,6 +286,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Importerer en tekstfil inn i Registret" ID_REGISTRY_IMPORTREGISTRYFILE "Importerer en tekstfil inn i Registret"
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"Eksporterer hele eller deler av Registret til en tekstfil" "Eksporterer hele eller deler av Registret til en tekstfil"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"Kobler til Registret på en annen datamaskin" "Kobler til Registret på en annen datamaskin"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -332,6 +346,8 @@ BEGIN
IDS_MY_COMPUTER "Min datamaskin" IDS_MY_COMPUTER "Min datamaskin"
IDS_IMPORT_REG_FILE "Importer registerfil" IDS_IMPORT_REG_FILE "Importer registerfil"
IDS_EXPORT_REG_FILE "Eksporter registerfil" IDS_EXPORT_REG_FILE "Eksporter registerfil"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(ugyldig DWORD-verdi)" IDS_INVALID_DWORD "(ugyldig DWORD-verdi)"
END END

View file

@ -182,6 +182,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84 IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -281,6 +291,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Importuje plik do rejestru" ID_REGISTRY_IMPORTREGISTRYFILE "Importuje plik do rejestru"
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"Eksportuje ca³oœæ lub czêœæ rejestru do pliku" "Eksportuje ca³oœæ lub czêœæ rejestru do pliku"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"Po³¹czenie z rejestrem zdalnego komputera" "Po³¹czenie z rejestrem zdalnego komputera"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -337,6 +351,8 @@ BEGIN
IDS_MY_COMPUTER "Mój komputer" IDS_MY_COMPUTER "Mój komputer"
IDS_IMPORT_REG_FILE "Importuj plik rejestru" IDS_IMPORT_REG_FILE "Importuj plik rejestru"
IDS_EXPORT_REG_FILE "Eksportuj plik rejestru" IDS_EXPORT_REG_FILE "Eksportuj plik rejestru"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(niew³aœciwa wartoœæ DWORD)" IDS_INVALID_DWORD "(niew³aœciwa wartoœæ DWORD)"
END END

View file

@ -178,6 +178,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84 IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -277,6 +287,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Importa um arquivo de texto para o registro" ID_REGISTRY_IMPORTREGISTRYFILE "Importa um arquivo de texto para o registro"
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"Exporta todo ou parte do Registro para um arquivo texto" "Exporta todo ou parte do Registro para um arquivo texto"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"Conecta-se ao Registro de um computador remoto" "Conecta-se ao Registro de um computador remoto"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -333,6 +347,8 @@ BEGIN
IDS_MY_COMPUTER "Meu computador" IDS_MY_COMPUTER "Meu computador"
IDS_IMPORT_REG_FILE "Importar arquivo do Registro" IDS_IMPORT_REG_FILE "Importar arquivo do Registro"
IDS_EXPORT_REG_FILE "Exportar arquivo do Registro" IDS_EXPORT_REG_FILE "Exportar arquivo do Registro"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(valor DWORD inválido)" IDS_INVALID_DWORD "(valor DWORD inválido)"
END END

View file

@ -277,6 +277,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Importa um arquivo texto para o registro." ID_REGISTRY_IMPORTREGISTRYFILE "Importa um arquivo texto para o registro."
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"Exporta todo ou parte do registro para um arquivo texto." "Exporta todo ou parte do registro para um arquivo texto."
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"Conecta a um registro em um computador remoto." "Conecta a um registro em um computador remoto."
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -333,6 +337,8 @@ BEGIN
IDS_MY_COMPUTER "My Computer" IDS_MY_COMPUTER "My Computer"
IDS_IMPORT_REG_FILE "Import Registry File" IDS_IMPORT_REG_FILE "Import Registry File"
IDS_EXPORT_REG_FILE "Export Registry File" IDS_EXPORT_REG_FILE "Export Registry File"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(invalid DWORD value)" IDS_INVALID_DWORD "(invalid DWORD value)"
END END
@ -384,6 +390,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EXPORTRANGE DIALOGEX DISCARDABLE 50, 50, 370, 50 IDD_EXPORTRANGE DIALOGEX DISCARDABLE 50, 50, 370, 50
STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS |

View file

@ -177,6 +177,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84 IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
@ -275,6 +285,8 @@ BEGIN
ID_EDIT_NEW_DWORDVALUE "Добавляет новое DWORD-значение" ID_EDIT_NEW_DWORDVALUE "Добавляет новое DWORD-значение"
ID_REGISTRY_IMPORTREGISTRYFILE "Импортирует текстовой файл в реестр" ID_REGISTRY_IMPORTREGISTRYFILE "Импортирует текстовой файл в реестр"
ID_REGISTRY_EXPORTREGISTRYFILE "Экспортирует весь реестр или его часть в текстовой файл" ID_REGISTRY_EXPORTREGISTRYFILE "Экспортирует весь реестр или его часть в текстовой файл"
ID_REGISTRY_LOADHIVE "Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE "Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY "Подключается к реестру удалённого компьютера" ID_REGISTRY_CONNECTNETWORKREGISTRY "Подключается к реестру удалённого компьютера"
@ -332,6 +344,8 @@ BEGIN
IDS_MY_COMPUTER "Мой компьютер" IDS_MY_COMPUTER "Мой компьютер"
IDS_IMPORT_REG_FILE "Импортирование файла реестра" IDS_IMPORT_REG_FILE "Импортирование файла реестра"
IDS_EXPORT_REG_FILE "Экспортирование файла реестра" IDS_EXPORT_REG_FILE "Экспортирование файла реестра"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(неправильное значение DWORD)" IDS_INVALID_DWORD "(неправильное значение DWORD)"
END END

View file

@ -162,6 +162,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84 IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -261,6 +271,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Imports a text file into the registry" ID_REGISTRY_IMPORTREGISTRYFILE "Imports a text file into the registry"
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"Exports all or part of the registry to a text file" "Exports all or part of the registry to a text file"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"Connects to a remote computer's registry" "Connects to a remote computer's registry"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -317,6 +331,8 @@ BEGIN
IDS_MY_COMPUTER "Tento poèítaè" IDS_MY_COMPUTER "Tento poèítaè"
IDS_IMPORT_REG_FILE "Import Registry File" IDS_IMPORT_REG_FILE "Import Registry File"
IDS_EXPORT_REG_FILE "Export Registry File" IDS_EXPORT_REG_FILE "Export Registry File"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(neplatná DWORD hodnota)" IDS_INVALID_DWORD "(neplatná DWORD hodnota)"
END END

View file

@ -177,6 +177,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84 IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -276,6 +286,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "V register uvozi datoteko z besedilom" ID_REGISTRY_IMPORTREGISTRYFILE "V register uvozi datoteko z besedilom"
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"Registrsko datoteko ali njen del izvozi v besedilno datoteko" "Registrsko datoteko ali njen del izvozi v besedilno datoteko"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"Vzpostavi povezavo z registrom oddaljenega raèunalnika" "Vzpostavi povezavo z registrom oddaljenega raèunalnika"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -332,6 +346,8 @@ BEGIN
IDS_MY_COMPUTER "My Computer" IDS_MY_COMPUTER "My Computer"
IDS_IMPORT_REG_FILE "Import Registry File" IDS_IMPORT_REG_FILE "Import Registry File"
IDS_EXPORT_REG_FILE "Export Registry File" IDS_EXPORT_REG_FILE "Export Registry File"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(invalid DWORD value)" IDS_INVALID_DWORD "(invalid DWORD value)"
END END

View file

@ -175,6 +175,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84 IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -274,6 +284,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Importerar en textfil till registret" ID_REGISTRY_IMPORTREGISTRYFILE "Importerar en textfil till registret"
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"Exporterar hela eller en del av registret till en textfil" "Exporterar hela eller en del av registret till en textfil"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"Ansluter till en annan dators register" "Ansluter till en annan dators register"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -330,6 +344,8 @@ BEGIN
IDS_MY_COMPUTER "Den här datorn" IDS_MY_COMPUTER "Den här datorn"
IDS_IMPORT_REG_FILE "Importera registerfil" IDS_IMPORT_REG_FILE "Importera registerfil"
IDS_EXPORT_REG_FILE "Exportera registerfil" IDS_EXPORT_REG_FILE "Exportera registerfil"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(felaktigt DWORD-värde)" IDS_INVALID_DWORD "(felaktigt DWORD-värde)"
END END

View file

@ -177,6 +177,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84 IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -276,6 +286,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Imports a text file into the registry" ID_REGISTRY_IMPORTREGISTRYFILE "Imports a text file into the registry"
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"Exports all or part of the registry to a text file" "Exports all or part of the registry to a text file"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"Connects to a remote computer's registry" "Connects to a remote computer's registry"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -332,6 +346,8 @@ BEGIN
IDS_MY_COMPUTER "My Computer" IDS_MY_COMPUTER "My Computer"
IDS_IMPORT_REG_FILE "Import Registry File" IDS_IMPORT_REG_FILE "Import Registry File"
IDS_EXPORT_REG_FILE "Export Registry File" IDS_EXPORT_REG_FILE "Export Registry File"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(invalid DWORD value)" IDS_INVALID_DWORD "(invalid DWORD value)"
END END

View file

@ -178,6 +178,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84 IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -277,6 +287,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "²ìïîðòóº òåêñòîâèé ôàéë äî ðåºñòðó" ID_REGISTRY_IMPORTREGISTRYFILE "²ìïîðòóº òåêñòîâèé ôàéë äî ðåºñòðó"
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"Åêñïîðòóº âåñü ðåºñòð àáî éîãî ÷àñòèíó â òåêñòîâèé ôàéë" "Åêñïîðòóº âåñü ðåºñòð àáî éîãî ÷àñòèíó â òåêñòîâèé ôàéë"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"ϳäêëþ÷àºòüñÿ äî ðåºñòðó â³ääàëåíîãî êîìï'þòåðà" "ϳäêëþ÷àºòüñÿ äî ðåºñòðó â³ääàëåíîãî êîìï'þòåðà"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -333,6 +347,8 @@ BEGIN
IDS_MY_COMPUTER "̳é êîìï'þòåð" IDS_MY_COMPUTER "̳é êîìï'þòåð"
IDS_IMPORT_REG_FILE "²ìïîðòóâàòè ôàéë ðåºñòðó" IDS_IMPORT_REG_FILE "²ìïîðòóâàòè ôàéë ðåºñòðó"
IDS_EXPORT_REG_FILE "Åêñïîðòóâàòè ôàéë ðåºñòðó" IDS_EXPORT_REG_FILE "Åêñïîðòóâàòè ôàéë ðåºñòðó"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(Íåïðàâèëüíå çíà÷åííÿ DWORD)" IDS_INVALID_DWORD "(Íåïðàâèëüíå çíà÷åííÿ DWORD)"
END END

View file

@ -177,6 +177,16 @@ END
/* /*
* Dialog * Dialog
*/ */
IDD_LOADHIVE DIALOGEX DISCARDABLE 0, 0, 193, 34
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Load Hive"
FONT 8, "Ms Shell Dlg"
{
LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT
EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13
DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14
}
IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84 IDD_EDIT_STRING DIALOGEX 32, 24, 252, 84
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -276,6 +286,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "将文件导入到注册表中。" ID_REGISTRY_IMPORTREGISTRYFILE "将文件导入到注册表中。"
ID_REGISTRY_EXPORTREGISTRYFILE ID_REGISTRY_EXPORTREGISTRYFILE
"将注册表全部或部分导出到文件中。" "将注册表全部或部分导出到文件中。"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY ID_REGISTRY_CONNECTNETWORKREGISTRY
"连接到远程计算机的注册表。" "连接到远程计算机的注册表。"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -332,6 +346,8 @@ BEGIN
IDS_MY_COMPUTER "My Computer" IDS_MY_COMPUTER "My Computer"
IDS_IMPORT_REG_FILE "导入注册表文件" IDS_IMPORT_REG_FILE "导入注册表文件"
IDS_EXPORT_REG_FILE "导出注册表文件" IDS_EXPORT_REG_FILE "导出注册表文件"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(不正确的 DWORD 值)" IDS_INVALID_DWORD "(不正确的 DWORD 值)"
END END

View file

@ -556,18 +556,12 @@ BOOL RefreshListView(HWND hwndLV, HKEY hKey, LPCTSTR keyPath)
/* } */ /* } */
/* dwValSize = max_val_size; */ /* dwValSize = max_val_size; */
while (RegEnumValue(hNewKey, dwIndex, ValName, &dwValNameLen, NULL, &dwValType, ValBuf, &dwValSize) == ERROR_SUCCESS) { while (RegEnumValue(hNewKey, dwIndex, ValName, &dwValNameLen, NULL, &dwValType, ValBuf, &dwValSize) == ERROR_SUCCESS) {
/* Remove unwanted path from key name */
TCHAR *pLastBl = _tcsrchr(ValName, TEXT('\\'));
if (pLastBl != NULL)
++pLastBl;
else
pLastBl = ValName;
/* Add a terminating 0 character. Usually this is only necessary for strings. */ /* Add a terminating 0 character. Usually this is only necessary for strings. */
ValBuf[dwValSize] = 0; ValBuf[dwValSize] = 0;
#ifdef UNICODE #ifdef UNICODE
ValBuf[dwValSize + 1] = 0; ValBuf[dwValSize + 1] = 0;
#endif #endif
AddEntryToList(hwndLV, pLastBl, dwValType, ValBuf, dwValSize, -1, TRUE); AddEntryToList(hwndLV, ValName, dwValType, ValBuf, dwValSize, -1, TRUE);
dwValNameLen = max_val_name_len; dwValNameLen = max_val_name_len;
dwValSize = max_val_size; dwValSize = max_val_size;
dwValType = 0L; dwValType = 0L;

View file

@ -58,6 +58,7 @@ typedef struct {
HWND hTreeWnd; HWND hTreeWnd;
HWND hListWnd; HWND hListWnd;
HWND hAddressBarWnd; HWND hAddressBarWnd;
HWND hAddressBtnWnd;
int nFocusPanel; /* 0: left 1: right */ int nFocusPanel; /* 0: left 1: right */
int nSplitPos; int nSplitPos;
WINDOWPLACEMENT pos; WINDOWPLACEMENT pos;
@ -88,6 +89,9 @@ extern void ShowAboutBox(HWND hWnd);
/* childwnd.c */ /* childwnd.c */
extern LRESULT CALLBACK ChildWndProc(HWND, UINT, WPARAM, LPARAM); extern LRESULT CALLBACK ChildWndProc(HWND, UINT, WPARAM, LPARAM);
/* error.c */
extern void ErrorMessageBox(HWND hWnd, LPCTSTR title, DWORD code);
/* find.c */ /* find.c */
extern void FindDialog(HWND hWnd); extern void FindDialog(HWND hWnd);
extern BOOL FindNext(HWND hWnd); extern BOOL FindNext(HWND hWnd);

View file

@ -23,6 +23,7 @@
<file>hexedit.c</file> <file>hexedit.c</file>
<file>listview.c</file> <file>listview.c</file>
<file>main.c</file> <file>main.c</file>
<file>error.c</file>
<file>regedit.c</file> <file>regedit.c</file>
<file>regproc.c</file> <file>regproc.c</file>
<file>security.c</file> <file>security.c</file>

View file

@ -137,9 +137,11 @@
#define IDS_ERR_RENVAL_CAPTION 32856 #define IDS_ERR_RENVAL_CAPTION 32856
#define IDS_ERR_RENVAL_TOEMPTY 32857 #define IDS_ERR_RENVAL_TOEMPTY 32857
#define IDS_BAD_KEY 32858 #define IDS_BAD_KEY 32858
#define IDS_LOAD_HIVE 32859
#define IDS_UNLOAD_HIVE 32860
#define ID_EDIT_NEW_MULTISTRINGVALUE 32860 #define ID_EDIT_NEW_MULTISTRINGVALUE 32861
#define ID_EDIT_NEW_EXPANDABLESTRINGVALUE 32861 #define ID_EDIT_NEW_EXPANDABLESTRINGVALUE 32862
#define ID_SWITCH_PANELS 32871 #define ID_SWITCH_PANELS 32871
#define ID_EDIT_PERMISSIONS 32872 #define ID_EDIT_PERMISSIONS 32872
@ -199,6 +201,8 @@
#define IDC_EXPORT_BRANCH 2009 #define IDC_EXPORT_BRANCH 2009
#define IDC_EXPORT_BRANCH_TEXT 2010 #define IDC_EXPORT_BRANCH_TEXT 2010
#define IDD_LOADHIVE 2500
#define IDC_EDIT_KEY 2501
#define IDC_FAVORITENAME 2011 #define IDC_FAVORITENAME 2011
#define IDC_FAVORITESLIST 2012 #define IDC_FAVORITESLIST 2012

View file

@ -633,7 +633,7 @@ BOOL SelectNode(HWND hwndTV, LPCTSTR keyPath)
TVITEM tvi; TVITEM tvi;
/* Total no-good hack */ /* Total no-good hack */
if (!_tcsncmp(keyPath, _T("My Computer\\"), 12)) if (!_tcsnicmp(keyPath, _T("My Computer\\"), 12))
keyPath += 12; keyPath += 12;
hRoot = TreeView_GetRoot(hwndTV); hRoot = TreeView_GetRoot(hwndTV);
@ -647,17 +647,17 @@ BOOL SelectNode(HWND hwndTV, LPCTSTR keyPath)
/* Special case for root to expand root key abbreviations */ /* Special case for root to expand root key abbreviations */
if (hItem == hRoot) if (hItem == hRoot)
{ {
if (!_tcscmp(szPathPart, TEXT("HKCR"))) if (!_tcsicmp(szPathPart, TEXT("HKCR")))
_tcscpy(szPathPart, TEXT("HKEY_CLASSES_ROOT")); _tcscpy(szPathPart, TEXT("HKEY_CLASSES_ROOT"));
else if (!_tcscmp(szPathPart, TEXT("HKCU"))) else if (!_tcsicmp(szPathPart, TEXT("HKCU")))
_tcscpy(szPathPart, TEXT("HKEY_CURRENT_USER")); _tcscpy(szPathPart, TEXT("HKEY_CURRENT_USER"));
else if (!_tcscmp(szPathPart, TEXT("HKLM"))) else if (!_tcsicmp(szPathPart, TEXT("HKLM")))
_tcscpy(szPathPart, TEXT("HKEY_LOCAL_MACHINE")); _tcscpy(szPathPart, TEXT("HKEY_LOCAL_MACHINE"));
else if (!_tcscmp(szPathPart, TEXT("HKU"))) else if (!_tcsicmp(szPathPart, TEXT("HKU")))
_tcscpy(szPathPart, TEXT("HKEY_USERS")); _tcscpy(szPathPart, TEXT("HKEY_USERS"));
else if (!_tcscmp(szPathPart, TEXT("HKCC"))) else if (!_tcsicmp(szPathPart, TEXT("HKCC")))
_tcscpy(szPathPart, TEXT("HKEY_CURRENT_CONFIG")); _tcscpy(szPathPart, TEXT("HKEY_CURRENT_CONFIG"));
else if (!_tcscmp(szPathPart, TEXT("HKDD"))) else if (!_tcsicmp(szPathPart, TEXT("HKDD")))
_tcscpy(szPathPart, TEXT("HKEY_DYN_DATA")); _tcscpy(szPathPart, TEXT("HKEY_DYN_DATA"));
} }
@ -672,7 +672,7 @@ BOOL SelectNode(HWND hwndTV, LPCTSTR keyPath)
(void)TreeView_GetItem(hwndTV, &tvi); (void)TreeView_GetItem(hwndTV, &tvi);
if (!_tcscmp(szBuffer, szPathPart)) if (!_tcsicmp(szBuffer, szPathPart))
break; break;
} }

View file

@ -641,10 +641,10 @@ BEGIN
IDS_MSG_UNABLEDEBUGPROCESS "Отладка процесса невозможна" IDS_MSG_UNABLEDEBUGPROCESS "Отладка процесса невозможна"
IDS_MSG_WARNINGDEBUG "ВНИМАНИЕ: Отладка этого процесса может закончиться потерей данных.\nВы уверены, что можно продолжать?" IDS_MSG_WARNINGDEBUG "ВНИМАНИЕ: Отладка этого процесса может закончиться потерей данных.\nВы уверены, что можно продолжать?"
IDS_MSG_TASKMGRWARNING "Ошибка Менеджера задач" IDS_MSG_TASKMGRWARNING "Ошибка Менеджера задач"
IDS_MSG_WARNINGTERMINATING "ВНИМАНИЕ: Завершение процесса может повлеч неустойчивую работу системы и потерю данных\nСохраните важные данные перед продолжением.\nПродолжить завершение процесса?" IDS_MSG_WARNINGTERMINATING "ВНИМАНИЕ: Завершение процесса может повлечь неустойчивую работу системы и потерю данных\nСохраните важные данные перед продолжением.\nПродолжить завершение процесса?"
IDS_MSG_UNABLETERMINATEPRO "Не удалось завершить процесс" IDS_MSG_UNABLETERMINATEPRO "Не удалось завершить процесс"
IDS_MSG_UNABLECHANGEPRIORITY "Не удалось изменить приоритет" IDS_MSG_UNABLECHANGEPRIORITY "Не удалось изменить приоритет"
IDS_MSG_WARNINGCHANGEPRIORITY "ВНИМАНИЕ: Изменение приоритета может повлеч неустойчивую работу и потерю данных.\nВы уверены, что можно продолжать?" IDS_MSG_WARNINGCHANGEPRIORITY "ВНИМАНИЕ: Изменение приоритета может повлечь неустойчивую работу и потерю данных.\nВы уверены, что можно продолжать?"
IDS_MSG_TRAYICONCPUUSAGE "Загрузка ЦП: %d%%" IDS_MSG_TRAYICONCPUUSAGE "Загрузка ЦП: %d%%"
IDS_STATUS_MEMUSAGE "Выделение памяти: %dK / %dK" IDS_STATUS_MEMUSAGE "Выделение памяти: %dK / %dK"
IDS_STATUS_CPUUSAGE "Загрузка ЦП: %3d%%" IDS_STATUS_CPUUSAGE "Загрузка ЦП: %3d%%"

View file

@ -1,7 +1,7 @@
/* TRANSLATOR: M rio KaŸm r /Mario Kacmar/ aka Kario (kario@szm.sk) /* TRANSLATOR: M rio KaŸm r /Mario Kacmar/ aka Kario (kario@szm.sk)
* DATE OF TR: 22-01-2008 * DATE OF TR: 22-01-2008
* Encoding : Latin II (852) * Encoding : Latin II (852)
* LastChange: 31-05-2010 * LastChange: 05-09-2010
*/ */
#pragma once #pragma once
@ -993,13 +993,13 @@ static MUI_ENTRY skSKBootLoaderEntries[] =
{ {
8, 8,
12, 12,
"Install bootloader on the harddisk (MBR and VBR).", "Nainçtalovaś zav dzaź systmu na pevně disk (MBR a VBR).",
TEXT_STYLE_NORMAL TEXT_STYLE_NORMAL
}, },
{ {
8, 8,
13, 13,
"Install bootloader on the harddisk (VBR only).", "Nainçtalovaś zav dzaź systmu na pevně disk (iba VBR).",
TEXT_STYLE_NORMAL TEXT_STYLE_NORMAL
}, },
{ {

View file

@ -180,7 +180,7 @@ WORD wDefColor; /* default color */
* insert commas into a number * insert commas into a number
*/ */
INT INT
ConvertULargeInteger(ULONGLONG num, LPTSTR des, INT len, BOOL bPutSeperator) ConvertULargeInteger(ULONGLONG num, LPTSTR des, UINT len, BOOL bPutSeperator)
{ {
TCHAR temp[39]; /* maximum length with nNumberGroups == 1 */ TCHAR temp[39]; /* maximum length with nNumberGroups == 1 */
UINT n, iTarget; UINT n, iTarget;

View file

@ -99,7 +99,7 @@ INT cmd_cls (LPTSTR);
/* Prototypes for CMD.C */ /* Prototypes for CMD.C */
INT ConvertULargeInteger(ULONGLONG num, LPTSTR des, INT len, BOOL bPutSeperator); INT ConvertULargeInteger(ULONGLONG num, LPTSTR des, UINT len, BOOL bPutSeperator);
HANDLE RunFile(DWORD, LPTSTR, LPTSTR, LPTSTR, INT); HANDLE RunFile(DWORD, LPTSTR, LPTSTR, LPTSTR, INT);
INT ParseCommandLine(LPTSTR); INT ParseCommandLine(LPTSTR);
struct _PARSED_COMMAND; struct _PARSED_COMMAND;

View file

@ -131,7 +131,7 @@ static VOID ConWrite(TCHAR *str, DWORD len, DWORD nStdHandle)
error_out_of_memory(); error_out_of_memory();
return; return;
} }
len = MultiByteToWideChar(OutputCodePage, 0, str, len, buffer, len, NULL, NULL); len = MultiByteToWideChar(OutputCodePage, 0, str, len, buffer, len);
str = (PVOID)buffer; str = (PVOID)buffer;
#endif #endif
WriteFile(hOutput, str, len * sizeof(WCHAR), &dwWritten, NULL); WriteFile(hOutput, str, len * sizeof(WCHAR), &dwWritten, NULL);

View file

@ -1,9 +1,9 @@
/* Slovak translation for CMD /* Slovak translation for CMD
* TRANSLATOR: Mário Kaèmár /Mario Kacmar/ aka Kario (kario@szm.sk) * TRANSLATOR: Mário Kaèmár /Mario Kacmar/ aka Kario (kario@szm.sk)
* DATE OF TR: 21-03-2009 * DATE OF TR: 21-03-2009
* LastChange: 21-06-2009 * LastChange: 10-08-2010
* _________________________________________________________________ * _________________________________________________________________
* NOTE : this file is not really translated (only scrap yet) * NOTE : this file is not fully translated
*/ */
LANGUAGE LANG_SLOVAK, SUBLANG_DEFAULT LANGUAGE LANG_SLOVAK, SUBLANG_DEFAULT
@ -118,7 +118,7 @@ dec hex name dec hex name\n\
6 6 Yellow 14 E Bright Yellow\n\ 6 6 Yellow 14 E Bright Yellow\n\
7 7 White 15 F Bright White\n" 7 7 White 15 F Bright White\n"
STRING_COPY_HELP1, "Overwrite %s (Yes/No/All)? " STRING_COPY_HELP1, "Prepísa<EFBFBD> %s (Yes/No/All)? "
STRING_COPY_HELP2, "Skopíruje jeden alebo viac súborov na iné umiestnenie.\n\n\ STRING_COPY_HELP2, "Skopíruje jeden alebo viac súborov na iné umiestnenie.\n\n\
COPY [/V][/Y|/-Y][/A|/B] source [/A|/B]\n\ COPY [/V][/Y|/-Y][/A|/B] source [/A|/B]\n\
@ -141,7 +141,7 @@ STRING_DATE_HELP2, "\nZadajte nov
STRING_DATE_HELP3, "\nZadajte nový dátum (rrrr%cmm%cdd): " STRING_DATE_HELP3, "\nZadajte nový dátum (rrrr%cmm%cdd): "
STRING_DATE_HELP4, "Displays or sets the date.\n\n\ STRING_DATE_HELP4, "Zobrazí alebo nastaví dátum.\n\n\
DATE [/T][date]\n\n\ DATE [/T][date]\n\n\
/T display only\n\n\ /T display only\n\n\
Type DATE without parameters to display the current date setting and\n\ Type DATE without parameters to display the current date setting and\n\
@ -469,7 +469,7 @@ STRING_TITLE_HELP, "Sets the window title for the command prompt window.\n\n\
TITLE [string]\n\n\ TITLE [string]\n\n\
string Specifies the title for the command prompt window.\n" string Specifies the title for the command prompt window.\n"
STRING_TIME_HELP1, "Displays or sets the system time.\n\n\ STRING_TIME_HELP1, "Zobrazí alebo nastaví systémový èas.\n\n\
TIME [/T][time]\n\n\ TIME [/T][time]\n\n\
/T display only\n\n\ /T display only\n\n\
Type TIME with no parameters to display the current time setting and a prompt\n\ Type TIME with no parameters to display the current time setting and a prompt\n\
@ -547,18 +547,18 @@ STRING_WINDOW_HELP1, "change console window aspect\n\n\
WINDOW [/POS[=]left,top,width,heigth]\n\ WINDOW [/POS[=]left,top,width,heigth]\n\
[MIN|MAX|RESTORE] ['title']\n\n\ [MIN|MAX|RESTORE] ['title']\n\n\
/POS specify window placement and dimensions\n\ /POS specify window placement and dimensions\n\
MIN minimize the window\n\ MIN minimalizova<EFBFBD> okno\n\
MAX maximize the window\n\ MAX maximalizujte okno\n\
RESTORE restore the window" RESTORE obnovi<EFBFBD> okno"
STRING_WINDOW_HELP2, "change console window aspect\n\n\ STRING_WINDOW_HELP2, "change console window aspect\n\n\
ACTIVATE 'window' [/POS[=]left,top,width,heigth]\n\ ACTIVATE 'window' [/POS[=]left,top,width,heigth]\n\
[MIN|MAX|RESTORE] ['title']\n\n\ [MIN|MAX|RESTORE] ['title']\n\n\
window tile of window on which perform actions\n\ window tile of window on which perform actions\n\
/POS specify window placement and dimensions\n\ /POS specify window placement and dimensions\n\
MIN minimize the window\n\ MIN minimalizova<EFBFBD> okno\n\
MAX maximize the window\n\ MAX maximalizujte okno\n\
RESTORE restore the window\n\ RESTORE obnovi<EFBFBD> okno\n\
title new title\n" title new title\n"
@ -576,7 +576,7 @@ CLS Vyma
CMD Starts a new instance of the ReactOS command interpreter.\n\ CMD Starts a new instance of the ReactOS command interpreter.\n\
COLOR Sets the default console foreground and background colors.\n\ COLOR Sets the default console foreground and background colors.\n\
COPY Skopíruje jeden alebo viac súborov na iné umiestnenie.\n\ COPY Skopíruje jeden alebo viac súborov na iné umiestnenie.\n\
DATE Displays or sets the date.\n\ DATE Zobrazí alebo nastaví dátum.\n\
DELETE Deletes one or more files.\n\ DELETE Deletes one or more files.\n\
DIR Displays a list of files and subdirectories in a directory.\n\ DIR Displays a list of files and subdirectories in a directory.\n\
ECHO Displays messages, or turns command echoing on or off.\n\ ECHO Displays messages, or turns command echoing on or off.\n\
@ -590,8 +590,8 @@ HELP Provides Help information for ReactOS commands.\n\
HISTORY List all commands which has been used\n\ HISTORY List all commands which has been used\n\
IF Performs conditional processing in batch programs.\n\ IF Performs conditional processing in batch programs.\n\
LABEL Creates, changes, or deletes the volume label of a disk.\n\ LABEL Creates, changes, or deletes the volume label of a disk.\n\
MD Creates a directory.\n\ MD Vytvorí adresár.\n\
MKDIR Creates a directory.\n\ MKDIR Vytvorí adresár.\n\
MKLINK Creates a filesystem link object.\n\ MKLINK Creates a filesystem link object.\n\
MOVE Moves one or more files from one directory to another\n\ MOVE Moves one or more files from one directory to another\n\
directory.\n\ directory.\n\
@ -603,8 +603,8 @@ PROMPT Changes the command prompt.\n\
PUSHD Saves the current directory then changes it.\n\ PUSHD Saves the current directory then changes it.\n\
RD Removes a directory.\n\ RD Removes a directory.\n\
REM Records comments (remarks) in batch files.\n\ REM Records comments (remarks) in batch files.\n\
REN Renames a file or files.\n\ REN Premenuje súbor alebo súbory.\n\
RENAME Renames a file or files.\n\ RENAME Premenuje súbor alebo súbory.\n\
REPLACE Replaces files.\n\ REPLACE Replaces files.\n\
RMDIR Removes a directory.\n\ RMDIR Removes a directory.\n\
SCREEN Move cursor and optionally print text.\n\ SCREEN Move cursor and optionally print text.\n\
@ -612,7 +612,7 @@ SET Displays, sets, or removes ReactOS environment variables.\n\
SHIFT Shifts the position of replaceable parameters in batch files.\n" SHIFT Shifts the position of replaceable parameters in batch files.\n"
STRING_HELP2, "START Starts a separate window to run a specified program or command.\n\ STRING_HELP2, "START Starts a separate window to run a specified program or command.\n\
Executes command.\n\ Executes command.\n\
TIME Displays or sets the system time.\n\ TIME Zobrazí alebo nastaví systémový èas.\n\
TIMER Allow the use of ten stopwatches.\n\ TIMER Allow the use of ten stopwatches.\n\
TITLE Sets the window title for a CMD.EXE session.\n\ TITLE Sets the window title for a CMD.EXE session.\n\
TYPE Displays the contents of a text file.\n\ TYPE Displays the contents of a text file.\n\
@ -651,9 +651,9 @@ STRING_COPY_ERROR3, "Error writing destination!\n"
STRING_COPY_ERROR4, "Chyba: Zatia¾ neimplementované!\n" //Not implemented yet STRING_COPY_ERROR4, "Chyba: Zatia¾ neimplementované!\n" //Not implemented yet
STRING_DATE_ERROR, "Neplatný dátum." STRING_DATE_ERROR, "Neplatný dátum."
STRING_DEL_ERROR5, "The file %s will be deleted! " STRING_DEL_ERROR5, "The file %s will be deleted! "
STRING_DEL_ERROR6, "Are you sure (Y/N)?" STRING_DEL_ERROR6, "Ste si istý (Y/N)?"
STRING_DEL_ERROR7, "Deleting: %s\n" STRING_DEL_ERROR7, "Deleting: %s\n"
STRING_ERROR_ERROR1, "Unknown error! Error code: 0x%lx\n" STRING_ERROR_ERROR1, "Neznáma chyba! Kód chyby: 0x%lx\n"
STRING_ERROR_ERROR2, "Syntax error" STRING_ERROR_ERROR2, "Syntax error"
STRING_FOR_ERROR1, "'in' missing in for statement." STRING_FOR_ERROR1, "'in' missing in for statement."
STRING_FOR_ERROR2, "no brackets found." STRING_FOR_ERROR2, "no brackets found."
@ -675,47 +675,47 @@ STRING_TIME_ERROR1, "Neplatn
STRING_TYPE_ERROR1, "Invalid option '/%s'\n" STRING_TYPE_ERROR1, "Invalid option '/%s'\n"
STRING_WINDOW_ERROR1, "window not found" STRING_WINDOW_ERROR1, "okno sa nenašlo"
STRING_ERROR_PARAMETERF_ERROR, "Parameter format not correct - %c\n" STRING_ERROR_PARAMETERF_ERROR, "Parameter format not correct - %c\n"
STRING_ERROR_INVALID_SWITCH, "Invalid switch - /%c\n" STRING_ERROR_INVALID_SWITCH, "Neplatný prepínaè - /%c\n"
STRING_ERROR_TOO_MANY_PARAMETERS, "Príliš ve¾a parametrov - %s\n" STRING_ERROR_TOO_MANY_PARAMETERS, "Príliš ve¾a parametrov - %s\n"
STRING_ERROR_PATH_NOT_FOUND, "Path not found\n" STRING_ERROR_PATH_NOT_FOUND, "Cesta sa nenašla\n"
STRING_ERROR_FILE_NOT_FOUND, "File not found\n" STRING_ERROR_FILE_NOT_FOUND, "Súbor sa nenašiel\n"
STRING_ERROR_REQ_PARAM_MISSING, "Required parameter missing\n" STRING_ERROR_REQ_PARAM_MISSING, "Required parameter missing\n"
STRING_ERROR_INVALID_DRIVE, "Invalid drive specification\n" STRING_ERROR_INVALID_DRIVE, "Invalid drive specification\n"
STRING_ERROR_INVALID_PARAM_FORMAT, "Invalid parameter format - %s\n" STRING_ERROR_INVALID_PARAM_FORMAT, "Invalid parameter format - %s\n"
STRING_ERROR_BADCOMMAND, "Bad command or filename - %s\n" STRING_ERROR_BADCOMMAND, "Chybný príkaz alebo názov súboru - %s\n"
STRING_ERROR_OUT_OF_MEMORY, "Chyba (z) nedostatku pamäte.\n" //Out of memory error. STRING_ERROR_OUT_OF_MEMORY, "Chyba (z) nedostatku pamäte.\n" //Out of memory error.
STRING_ERROR_CANNOTPIPE, "Error! Cannot pipe! Cannot open temporary file!\n" STRING_ERROR_CANNOTPIPE, "Chyba! Cannot pipe! Cannot open temporary file!\n"
STRING_ERROR_D_PAUSEMSG, "Pokraèujte stlaèením ¾ubovo¾ného klávesu ..." STRING_ERROR_D_PAUSEMSG, "Pokraèujte stlaèením ¾ubovo¾ného klávesu ..."
STRING_ERROR_DRIVER_NOT_READY, "Drive not ready" STRING_ERROR_DRIVER_NOT_READY, "Jednotka nie je pripravená"
STRING_PATH_ERROR, "CMD: Not in environment '%s'\n" STRING_PATH_ERROR, "CMD: Not in environment '%s'\n"
STRING_REPLACE_ERROR1, "Invalid switch - %s\n" STRING_REPLACE_ERROR1, "Neplatný prepínaè - %s\n"
STRING_REPLACE_ERROR2, "Path not found - %s\n" STRING_REPLACE_ERROR2, "Cesta sa nenašla - %s\n"
STRING_REPLACE_ERROR3, "The filename, directory name, or volume label syntax is incorrect.\n" STRING_REPLACE_ERROR3, "The filename, directory name, or volume label syntax is incorrect.\n"
STRING_REPLACE_ERROR4, "Invalid parameter combination\n" STRING_REPLACE_ERROR4, "Invalid parameter combination\n"
STRING_REPLACE_ERROR5, "Access denied - %s\n" STRING_REPLACE_ERROR5, "Prístup zamietnutý - %s\n"
STRING_REPLACE_ERROR6, "No files found - %s\n" STRING_REPLACE_ERROR6, "Žiadne súbory sa nenašli - %s\n"
STRING_REPLACE_ERROR7, "Extended Error 32\n" STRING_REPLACE_ERROR7, "Extended Error 32\n"
STRING_REACTOS_VERSION, "Operaèný systém ReactOS [Verzia %s-%s]\n" STRING_REACTOS_VERSION, "Operaèný systém ReactOS [Verzia %s-%s]\n"
STRING_CMD_SHELLINFO, "\nReactOS Command Line Interpreter\nVerzia %s %s" STRING_CMD_SHELLINFO, "\nInterpréter príkazového riadku systému ReactOS\nVerzia %s %s"
STRING_VERSION_RUNVER, " running on %s" STRING_VERSION_RUNVER, " running on %s"
STRING_COPY_FILE , " %d súbor(ov) skopírovaný(ch)\n" STRING_COPY_FILE , " %d súbor(ov) skopírovaný(ch)\n"
STRING_DELETE_WIPE, "wiped" STRING_DELETE_WIPE, "wiped"
STRING_FOR_ERROR, "bad variable specification." STRING_FOR_ERROR, "bad variable specification."
STRING_SCREEN_COL, "invalid value for col" STRING_SCREEN_COL, "neplatná hodnota pre ståpec"
STRING_SCREEN_ROW, "invalid value for row" STRING_SCREEN_ROW, "neplatná hodnota pre riadok"
STRING_TIMER_TIME "Timer %d is %s: " STRING_TIMER_TIME "Timer %d is %s: "
STRING_MKLINK_CREATED_SYMBOLIC, "Symbolic link created for %s <<===>> %s\n" STRING_MKLINK_CREATED_SYMBOLIC, "Symbolic link created for %s <<===>> %s\n"
STRING_MKLINK_CREATED_HARD, "Hard link created for %s <<===>> %s\n" STRING_MKLINK_CREATED_HARD, "Hard link created for %s <<===>> %s\n"
STRING_MKLINK_CREATED_JUNCTION, "Junction created for %s <<===>> %s\n" STRING_MKLINK_CREATED_JUNCTION, "Junction created for %s <<===>> %s\n"
STRING_MORE, "Viac? " //"More? " STRING_MORE, "Viac? " //"More? "
STRING_CANCEL_BATCH_FILE, "\r\nCtrl-Break pressed. Cancel batch file? (Yes/No/All) " STRING_CANCEL_BATCH_FILE, "\r\nStlaèené Ctrl-Break. Cancel batch file? (Yes/No/All) "
STRING_INVALID_OPERAND, "Invalid operand." STRING_INVALID_OPERAND, "Invalid operand."
STRING_EXPECTED_CLOSE_PAREN, "Oèakávaná ')'." STRING_EXPECTED_CLOSE_PAREN, "Oèakávaná ')'."

View file

@ -23,6 +23,7 @@
#include <stdarg.h> #include <stdarg.h>
#include <math.h> #include <math.h>
#include <time.h> #include <time.h>
#include <assert.h>
#define NTOS_MODE_USER #define NTOS_MODE_USER
#include <ndk/ntndk.h> #include <ndk/ntndk.h>

View file

@ -435,6 +435,12 @@ LRESULT DesktopWindow::WndProc(UINT nmsg, WPARAM wparam, LPARAM lparam)
explorer_show_frame(SW_SHOWNORMAL); explorer_show_frame(SW_SHOWNORMAL);
break; break;
case WM_DISPLAYCHANGE:
MoveWindow(_hwnd, 0, 0, LOWORD(lparam), HIWORD(lparam), TRUE);
MoveWindow(g_Globals._hwndShellView, 0, 0, LOWORD(lparam), HIWORD(lparam), TRUE);
MoveWindow(_desktopBar, 0, HIWORD(lparam) - DESKTOPBARBAR_HEIGHT, LOWORD(lparam), DESKTOPBARBAR_HEIGHT, TRUE);
break;
case WM_GETISHELLBROWSER: case WM_GETISHELLBROWSER:
return (LRESULT)static_cast<IShellBrowser*>(this); return (LRESULT)static_cast<IShellBrowser*>(this);

View file

@ -48,6 +48,19 @@ SIZEDEFINITION LegalSizes[] = {
}; };
int LoadStringAndOem(HINSTANCE hInst,
UINT uID,
LPTSTR szStr,
int Siz
)
{
TCHAR szTmp[RC_STRING_MAX_SIZE];
int res = LoadString(hInst, uID, szTmp, sizeof(szTmp));
CharToOem(szTmp, szStr);
return(res);
}
//---------------------------------------------------------------------- //----------------------------------------------------------------------
// //
// PrintWin32Error // PrintWin32Error
@ -171,7 +184,7 @@ FormatExCallback (
case PROGRESS: case PROGRESS:
percent = (PDWORD) Argument; percent = (PDWORD) Argument;
LoadString( GetModuleHandle(NULL), STRING_COMPLETE, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_COMPLETE, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
_tprintf(szMsg, *percent); _tprintf(szMsg, *percent);
break; break;
@ -184,7 +197,7 @@ FormatExCallback (
status = (PBOOLEAN) Argument; status = (PBOOLEAN) Argument;
if( *status == FALSE ) { if( *status == FALSE ) {
LoadString( GetModuleHandle(NULL), STRING_FORMAT_FAIL, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_FORMAT_FAIL, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
_tprintf("%s", szMsg); _tprintf("%s", szMsg);
Error = TRUE; Error = TRUE;
} }
@ -203,7 +216,7 @@ FormatExCallback (
case UNKNOWND: case UNKNOWND:
case STRUCTUREPROGRESS: case STRUCTUREPROGRESS:
case CLUSTERSIZETOOSMALL: case CLUSTERSIZETOOSMALL:
LoadString( GetModuleHandle(NULL), STRING_NO_SUPPORT, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_NO_SUPPORT, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
_tprintf("%s", szMsg); _tprintf("%s", szMsg);
return FALSE; return FALSE;
} }
@ -261,7 +274,7 @@ static VOID Usage( LPTSTR ProgramName )
BYTE dummy; BYTE dummy;
BOOLEAN lastestVersion; BOOLEAN lastestVersion;
LoadString( GetModuleHandle(NULL), STRING_HELP, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_HELP, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
if (!LoadFMIFSEntryPoints()) if (!LoadFMIFSEntryPoints())
{ {
_tprintf(szMsg, ProgramName, _T("")); _tprintf(szMsg, ProgramName, _T(""));
@ -319,7 +332,7 @@ _tmain(int argc, TCHAR *argv[])
// Get function pointers // Get function pointers
// //
if( !LoadFMIFSEntryPoints()) { if( !LoadFMIFSEntryPoints()) {
LoadString( GetModuleHandle(NULL), STRING_FMIFS_FAIL, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_FMIFS_FAIL, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
_tprintf("%s", szMsg); _tprintf("%s", szMsg);
return -1; return -1;
} }
@ -329,7 +342,7 @@ _tmain(int argc, TCHAR *argv[])
// //
if( (badArg = ParseCommandLine( argc, argv ))) { if( (badArg = ParseCommandLine( argc, argv ))) {
LoadString( GetModuleHandle(NULL), STRING_UNKNOW_ARG, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_UNKNOW_ARG, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
_tprintf(szMsg, argv[badArg] ); _tprintf(szMsg, argv[badArg] );
Usage(argv[0]); Usage(argv[0]);
@ -341,7 +354,7 @@ _tmain(int argc, TCHAR *argv[])
// //
if( !Drive ) { if( !Drive ) {
LoadString( GetModuleHandle(NULL), STRING_DRIVE_PARM, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_DRIVE_PARM, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
_tprintf(szMsg); _tprintf(szMsg);
Usage( argv[0] ); Usage( argv[0] );
return -1; return -1;
@ -359,7 +372,7 @@ _tmain(int argc, TCHAR *argv[])
driveType = GetDriveType( RootDirectory ); driveType = GetDriveType( RootDirectory );
if( driveType == 0 ) { if( driveType == 0 ) {
LoadString( GetModuleHandle(NULL), STRING_ERROR_DRIVE_TYPE, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_ERROR_DRIVE_TYPE, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
PrintWin32Error( szMsg, GetLastError()); PrintWin32Error( szMsg, GetLastError());
return -1; return -1;
} }
@ -371,7 +384,7 @@ _tmain(int argc, TCHAR *argv[])
} }
if( driveType != DRIVE_FIXED ) { if( driveType != DRIVE_FIXED ) {
LoadString( GetModuleHandle(NULL), STRING_INSERT_DISK, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_INSERT_DISK, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
_tprintf(szMsg, RootDirectory[0] ); _tprintf(szMsg, RootDirectory[0] );
_fgetts( input, sizeof(input)/2, stdin ); _fgetts( input, sizeof(input)/2, stdin );
@ -386,7 +399,7 @@ _tmain(int argc, TCHAR *argv[])
&serialNumber, &maxComponent, &flags, &serialNumber, &maxComponent, &flags,
fileSystem, sizeof(fileSystem)/2)) { fileSystem, sizeof(fileSystem)/2)) {
LoadString( GetModuleHandle(NULL), STRING_NO_VOLUME, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_NO_VOLUME, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
PrintWin32Error( szMsg, GetLastError()); PrintWin32Error( szMsg, GetLastError());
return -1; return -1;
} }
@ -396,11 +409,11 @@ _tmain(int argc, TCHAR *argv[])
&totalNumberOfBytes, &totalNumberOfBytes,
&totalNumberOfFreeBytes )) { &totalNumberOfFreeBytes )) {
LoadString( GetModuleHandle(NULL), STRING_NO_VOLUME_SIZE, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_NO_VOLUME_SIZE, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
PrintWin32Error( szMsg, GetLastError()); PrintWin32Error( szMsg, GetLastError());
return -1; return -1;
} }
LoadString( GetModuleHandle(NULL), STRING_FILESYSTEM, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_FILESYSTEM, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
_tprintf(szMsg, fileSystem ); _tprintf(szMsg, fileSystem );
// //
@ -412,7 +425,7 @@ _tmain(int argc, TCHAR *argv[])
while(1 ) { while(1 ) {
LoadString( GetModuleHandle(NULL), STRING_LABEL_NAME_EDIT, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_LABEL_NAME_EDIT, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
_tprintf(szMsg, RootDirectory[0] ); _tprintf(szMsg, RootDirectory[0] );
_fgetts( input, sizeof(input)/2, stdin ); _fgetts( input, sizeof(input)/2, stdin );
input[ _tcslen( input ) - 1] = 0; input[ _tcslen( input ) - 1] = 0;
@ -421,15 +434,15 @@ _tmain(int argc, TCHAR *argv[])
break; break;
} }
LoadString( GetModuleHandle(NULL), STRING_ERROR_LABEL, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_ERROR_LABEL, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
_tprintf("%s", szMsg); _tprintf("%s", szMsg);
} }
} }
LoadString( GetModuleHandle(NULL), STRING_YN_FORMAT, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_YN_FORMAT, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
_tprintf(szMsg, RootDirectory[0] ); _tprintf(szMsg, RootDirectory[0] );
LoadString( GetModuleHandle(NULL), STRING_YES_NO_FAQ, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_YES_NO_FAQ, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
while( 1 ) { while( 1 ) {
_fgetts( input, sizeof(input)/2, stdin ); _fgetts( input, sizeof(input)/2, stdin );
@ -460,7 +473,7 @@ _tmain(int argc, TCHAR *argv[])
} }
} else { } else {
LoadString( GetModuleHandle(NULL), STRING_FAST_FMT, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_FAST_FMT, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
if( totalNumberOfBytes.QuadPart > 1024*1024*10 ) { if( totalNumberOfBytes.QuadPart > 1024*1024*10 ) {
_tprintf(_T("%s %luM\n"),szMsg, (DWORD) (totalNumberOfBytes.QuadPart/(1024*1024))); _tprintf(_T("%s %luM\n"),szMsg, (DWORD) (totalNumberOfBytes.QuadPart/(1024*1024)));
@ -470,7 +483,7 @@ _tmain(int argc, TCHAR *argv[])
_tprintf(_T("%s %.2fM\n"),szMsg, _tprintf(_T("%s %.2fM\n"),szMsg,
((float)(LONGLONG)totalNumberOfBytes.QuadPart)/(float)(1024.0*1024.0)); ((float)(LONGLONG)totalNumberOfBytes.QuadPart)/(float)(1024.0*1024.0));
} }
LoadString( GetModuleHandle(NULL), STRING_CREATE_FSYS, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_CREATE_FSYS, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
_tprintf("%s", szMsg); _tprintf("%s", szMsg);
} }
@ -488,7 +501,7 @@ _tmain(int argc, TCHAR *argv[])
ClusterSize, FormatExCallback ); ClusterSize, FormatExCallback );
#endif #endif
if( Error ) return -1; if( Error ) return -1;
LoadString( GetModuleHandle(NULL), STRING_FMT_COMPLETE, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_FMT_COMPLETE, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
_tprintf("%s", szMsg); _tprintf("%s", szMsg);
// //
@ -503,7 +516,7 @@ _tmain(int argc, TCHAR *argv[])
if( !EnableVolumeCompression( RootDirectory, TRUE )) { if( !EnableVolumeCompression( RootDirectory, TRUE )) {
#endif #endif
LoadString( GetModuleHandle(NULL), STRING_VOL_COMPRESS, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_VOL_COMPRESS, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
_tprintf("%s", szMsg); _tprintf("%s", szMsg);
} }
} }
@ -520,7 +533,7 @@ _tmain(int argc, TCHAR *argv[])
input[ _tcslen(input)-1] = 0; input[ _tcslen(input)-1] = 0;
if( !SetVolumeLabel( RootDirectory, input )) { if( !SetVolumeLabel( RootDirectory, input )) {
LoadString( GetModuleHandle(NULL), STRING_NO_LABEL, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_NO_LABEL, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
PrintWin32Error(szMsg, GetLastError()); PrintWin32Error(szMsg, GetLastError());
return -1; return -1;
} }
@ -531,7 +544,7 @@ _tmain(int argc, TCHAR *argv[])
&serialNumber, &maxComponent, &flags, &serialNumber, &maxComponent, &flags,
fileSystem, sizeof(fileSystem)/2)) { fileSystem, sizeof(fileSystem)/2)) {
LoadString( GetModuleHandle(NULL), STRING_NO_VOLUME, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_NO_VOLUME, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
PrintWin32Error( szMsg, GetLastError()); PrintWin32Error( szMsg, GetLastError());
return -1; return -1;
} }
@ -544,12 +557,12 @@ _tmain(int argc, TCHAR *argv[])
&totalNumberOfBytes, &totalNumberOfBytes,
&totalNumberOfFreeBytes )) { &totalNumberOfFreeBytes )) {
LoadString( GetModuleHandle(NULL), STRING_NO_VOLUME_SIZE, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_NO_VOLUME_SIZE, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
PrintWin32Error(szMsg, GetLastError()); PrintWin32Error(szMsg, GetLastError());
return -1; return -1;
} }
LoadString( GetModuleHandle(NULL), STRING_FREE_SPACE, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_FREE_SPACE, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
_tprintf(szMsg, totalNumberOfBytes.QuadPart, totalNumberOfFreeBytes.QuadPart ); _tprintf(szMsg, totalNumberOfBytes.QuadPart, totalNumberOfFreeBytes.QuadPart );
// //
@ -560,11 +573,11 @@ _tmain(int argc, TCHAR *argv[])
&serialNumber, &maxComponent, &flags, &serialNumber, &maxComponent, &flags,
fileSystem, sizeof(fileSystem)/2)) { fileSystem, sizeof(fileSystem)/2)) {
LoadString( GetModuleHandle(NULL), STRING_NO_VOLUME, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_NO_VOLUME, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
PrintWin32Error( szMsg, GetLastError()); PrintWin32Error( szMsg, GetLastError());
return -1; return -1;
} }
LoadString( GetModuleHandle(NULL), STRING_SERIAL_NUMBER, (LPTSTR) szMsg,RC_STRING_MAX_SIZE); LoadStringAndOem( GetModuleHandle(NULL), STRING_SERIAL_NUMBER, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
_tprintf(szMsg, (unsigned int)(serialNumber >> 16), _tprintf(szMsg, (unsigned int)(serialNumber >> 16),
(unsigned int)(serialNumber & 0xFFFF) ); (unsigned int)(serialNumber & 0xFFFF) );

View file

@ -1,6 +1,6 @@
/* TRANSLATOR : M rio KaŸm r /Mario Kacmar/ aka Kario (kario@szm.sk) /* TRANSLATOR : M rio KaŸm r /Mario Kacmar/ aka Kario (kario@szm.sk)
* DATE OF TR.: 15-02-2008 * DATE OF TR.: 15-02-2008
* LAST CHANGE: 08-08-2008 * LAST CHANGE: 10-08-2010
*/ */
#include "resource.h" #include "resource.h"
@ -14,14 +14,14 @@ STRING_HELP, "Pou
-FS:systm s£borov UrŸuje typ s£borovho systmu (%s).\n\ -FS:systm s£borov UrŸuje typ s£borovho systmu (%s).\n\
-V:menovka UrŸuje menovku zv„zku.\n\ -V:menovka UrŸuje menovku zv„zku.\n\
-Q Vykon va rìchle form tovanie.\n\ -Q Vykon va rìchle form tovanie.\n\
-A:vekosœ Overrides the default allocation unit size. Default settings\n\ -A:vekosś Prepˇçe predvolenŁ vekosś alokaźnej jednotky. Pre vçeobecn\n\
are strongly recommended for general use\n\ pou§itie sŁ d“razne odporŁźan predvolen nastavenia\n\
NTFS supports 512, 1024, 2048, 4096, 8192, 16K, 32K, 64K.\n\ NTFS podporuje 512, 1024, 2048, 4096, 8192, 16K, 32K, 64K.\n\
FAT supports 8192, 16K, 32K, 64K, 128K, 256K.\n\ FAT podporuje 8192, 16K, 32K, 64K, 128K, 256K.\n\
NTFS compression is not supported for allocation unit sizes\n\ NTFS kompresia nie je podporovan  pre vekosti alokaźnej\n\
above 4096.\n\ jednotky nad 4096.\n\
-C Files created on the new volume will be compressed by\n\ -C SŁbory vytvoren na novom zv„zku budŁ automaticky\n\
default.\n\n" komprimovan.\n\n"
STRING_COMPLETE "DokonŸen na %lu percent.\r" STRING_COMPLETE "DokonŸen na %lu percent.\r"
@ -29,19 +29,19 @@ STRING_FORMAT_FAIL "FormatEx nebol schopn
STRING_NO_SUPPORT "Oper cia nie je podporovan " STRING_NO_SUPPORT "Oper cia nie je podporovan "
STRING_FMIFS_FAIL "Could not located FMIFS entry points.\n\n" STRING_FMIFS_FAIL "Nepodarilo sa lokalizovaś vstupn body FMIFS.\n\n"
STRING_UNKNOW_ARG "Nezn my argument: %s\n" STRING_UNKNOW_ARG "Nezn my argument: %s\n"
STRING_DRIVE_PARM "Chìba nevyhnutnì parameter jednotky.\n\n" STRING_DRIVE_PARM "Chìba nevyhnutnì parameter jednotky.\n\n"
STRING_ERROR_DRIVE_TYPE "Could not get drive type" STRING_ERROR_DRIVE_TYPE "Nemo§no zˇskaś typ jednotky"
STRING_INSERT_DISK "Vlo§te nov£ disketu do jednotky %C:\na potom stlaŸte ENTER..." STRING_INSERT_DISK "Vlo§te nov£ disketu do jednotky %C:\na potom stlaŸte ENTER..."
STRING_NO_VOLUME "Could not query volume" STRING_NO_VOLUME "Nemo§no dotazovaś zv„zok"
STRING_NO_VOLUME_SIZE "Could not query volume size" STRING_NO_VOLUME_SIZE "Nemo§no dotazovaś vekosś zv„zku"
STRING_FILESYSTEM "Typ systmu s£borov je %s.\n" STRING_FILESYSTEM "Typ systmu s£borov je %s.\n"
@ -49,8 +49,8 @@ STRING_LABEL_NAME_EDIT "Vlo
STRING_ERROR_LABEL "Bola zadan  nespr vna menovka zv„zku pre t£to jednotku.\n" STRING_ERROR_LABEL "Bola zadan  nespr vna menovka zv„zku pre t£to jednotku.\n"
STRING_YN_FORMAT "\nWARNING, ALL DATA ON NON_REMOVABLE DISK\n\ STRING_YN_FORMAT "\nUPOZORNENIE: VćETKY éDAJE NA NIE_VYMENITE•NEJ DISKOVEJ\n\
DRIVE %C: WILL BE LOST!\nProceed with Format (A/N)? " JEDNOTKE %C: BUDé STRATEN<45>!\nPokraźovaś s form tovanˇm (A/N)? "
STRING_YES_NO_FAQ "AN" STRING_YES_NO_FAQ "AN"

View file

@ -24,7 +24,6 @@
typedef struct _SCMGR_HANDLE typedef struct _SCMGR_HANDLE
{ {
DWORD Tag; DWORD Tag;
DWORD RefCount;
DWORD DesiredAccess; DWORD DesiredAccess;
} SCMGR_HANDLE; } SCMGR_HANDLE;
@ -32,9 +31,6 @@ typedef struct _SCMGR_HANDLE
typedef struct _MANAGER_HANDLE typedef struct _MANAGER_HANDLE
{ {
SCMGR_HANDLE Handle; SCMGR_HANDLE Handle;
/* FIXME: Insert more data here */
WCHAR DatabaseName[1]; WCHAR DatabaseName[1];
} MANAGER_HANDLE, *PMANAGER_HANDLE; } MANAGER_HANDLE, *PMANAGER_HANDLE;
@ -42,12 +38,7 @@ typedef struct _MANAGER_HANDLE
typedef struct _SERVICE_HANDLE typedef struct _SERVICE_HANDLE
{ {
SCMGR_HANDLE Handle; SCMGR_HANDLE Handle;
DWORD DesiredAccess;
PSERVICE ServiceEntry; PSERVICE ServiceEntry;
/* FIXME: Insert more data here */
} SERVICE_HANDLE, *PSERVICE_HANDLE; } SERVICE_HANDLE, *PSERVICE_HANDLE;
@ -151,7 +142,7 @@ ScmCreateManagerHandle(LPWSTR lpDatabaseName,
if (lpDatabaseName == NULL) if (lpDatabaseName == NULL)
lpDatabaseName = SERVICES_ACTIVE_DATABASEW; lpDatabaseName = SERVICES_ACTIVE_DATABASEW;
if (_wcsicmp(lpDatabaseName,SERVICES_FAILED_DATABASEW)==0) if (_wcsicmp(lpDatabaseName, SERVICES_FAILED_DATABASEW) == 0)
{ {
DPRINT("Database %S, does not exist\n",lpDatabaseName); DPRINT("Database %S, does not exist\n",lpDatabaseName);
return ERROR_DATABASE_DOES_NOT_EXIST; return ERROR_DATABASE_DOES_NOT_EXIST;
@ -169,9 +160,6 @@ ScmCreateManagerHandle(LPWSTR lpDatabaseName,
return ERROR_NOT_ENOUGH_MEMORY; return ERROR_NOT_ENOUGH_MEMORY;
Ptr->Handle.Tag = MANAGER_TAG; Ptr->Handle.Tag = MANAGER_TAG;
Ptr->Handle.RefCount = 1;
/* FIXME: initialize more data here */
wcscpy(Ptr->DatabaseName, lpDatabaseName); wcscpy(Ptr->DatabaseName, lpDatabaseName);
@ -194,9 +182,7 @@ ScmCreateServiceHandle(PSERVICE lpServiceEntry,
return ERROR_NOT_ENOUGH_MEMORY; return ERROR_NOT_ENOUGH_MEMORY;
Ptr->Handle.Tag = SERVICE_TAG; Ptr->Handle.Tag = SERVICE_TAG;
Ptr->Handle.RefCount = 1;
/* FIXME: initialize more data here */
Ptr->ServiceEntry = lpServiceEntry; Ptr->ServiceEntry = lpServiceEntry;
*Handle = (SC_HANDLE)Ptr; *Handle = (SC_HANDLE)Ptr;
@ -205,6 +191,46 @@ ScmCreateServiceHandle(PSERVICE lpServiceEntry,
} }
static PMANAGER_HANDLE
ScmGetServiceManagerFromHandle(SC_RPC_HANDLE Handle)
{
PMANAGER_HANDLE pManager = NULL;
_SEH2_TRY
{
if (((PMANAGER_HANDLE)Handle)->Handle.Tag == MANAGER_TAG)
pManager = (PMANAGER_HANDLE)Handle;
}
_SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
{
DPRINT1("Exception: Invalid Service Manager handle!\n");
}
_SEH2_END;
return pManager;
}
static PSERVICE_HANDLE
ScmGetServiceFromHandle(SC_RPC_HANDLE Handle)
{
PSERVICE_HANDLE pService = NULL;
_SEH2_TRY
{
if (((PSERVICE_HANDLE)Handle)->Handle.Tag == SERVICE_TAG)
pService = (PSERVICE_HANDLE)Handle;
}
_SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
{
DPRINT1("Exception: Invalid Service handle!\n");
}
_SEH2_END;
return pService;
}
static DWORD static DWORD
ScmCheckAccess(SC_HANDLE Handle, ScmCheckAccess(SC_HANDLE Handle,
DWORD dwDesiredAccess) DWORD dwDesiredAccess)
@ -417,42 +443,33 @@ DWORD RCloseServiceHandle(
if (*hSCObject == 0) if (*hSCObject == 0)
return ERROR_INVALID_HANDLE; return ERROR_INVALID_HANDLE;
hManager = (PMANAGER_HANDLE)*hSCObject; hManager = ScmGetServiceManagerFromHandle(*hSCObject);
hService = (PSERVICE_HANDLE)*hSCObject; hService = ScmGetServiceFromHandle(*hSCObject);
if (hManager->Handle.Tag == MANAGER_TAG)
if (hManager != NULL)
{ {
DPRINT("Found manager handle\n"); DPRINT("Found manager handle\n");
hManager->Handle.RefCount--; /* FIXME: add handle cleanup code */
if (hManager->Handle.RefCount == 0)
{
/* FIXME: add handle cleanup code */
HeapFree(GetProcessHeap(), 0, hManager); HeapFree(GetProcessHeap(), 0, hManager);
hManager = NULL; hManager = NULL;
}
DPRINT("RCloseServiceHandle() done\n"); DPRINT("RCloseServiceHandle() done\n");
return ERROR_SUCCESS; return ERROR_SUCCESS;
} }
else if (hService->Handle.Tag == SERVICE_TAG) else if (hService != NULL)
{ {
DPRINT("Found service handle\n"); DPRINT("Found service handle\n");
/* Get the pointer to the service record */ /* Get the pointer to the service record */
lpService = hService->ServiceEntry; lpService = hService->ServiceEntry;
ASSERT(hService->Handle.RefCount > 0); /* FIXME: add handle cleanup code */
hService->Handle.RefCount--; /* Free the handle */
if (hService->Handle.RefCount == 0) HeapFree(GetProcessHeap(), 0, hService);
{ hService = NULL;
/* FIXME: add handle cleanup code */
/* Free the handle */
HeapFree(GetProcessHeap(), 0, hService);
hService = NULL;
}
ASSERT(lpService->dwRefCount > 0); ASSERT(lpService->dwRefCount > 0);
@ -535,6 +552,8 @@ DWORD RControlService(
DWORD dwError = ERROR_SUCCESS; DWORD dwError = ERROR_SUCCESS;
DWORD pcbBytesNeeded = 0; DWORD pcbBytesNeeded = 0;
DWORD dwServicesReturned = 0; DWORD dwServicesReturned = 0;
DWORD dwControlsAccepted;
DWORD dwCurrentState;
HKEY hServicesKey = NULL; HKEY hServicesKey = NULL;
DPRINT("RControlService() called\n"); DPRINT("RControlService() called\n");
@ -543,18 +562,19 @@ DWORD RControlService(
return ERROR_SHUTDOWN_IN_PROGRESS; return ERROR_SHUTDOWN_IN_PROGRESS;
/* Check the service handle */ /* Check the service handle */
hSvc = (PSERVICE_HANDLE)hService; hSvc = ScmGetServiceFromHandle(hService);
if (!hSvc || hSvc->Handle.Tag != SERVICE_TAG) if (hSvc == NULL)
{ {
DPRINT("Invalid handle tag!\n"); DPRINT1("Invalid service handle!\n");
return ERROR_INVALID_HANDLE; return ERROR_INVALID_HANDLE;
} }
/* Check the service entry point */ /* Check the service entry point */
lpService = hSvc->ServiceEntry; lpService = hSvc->ServiceEntry;
if (lpService == NULL) if (lpService == NULL)
{ {
DPRINT("lpService == NULL!\n"); DPRINT1("lpService == NULL!\n");
return ERROR_INVALID_HANDLE; return ERROR_INVALID_HANDLE;
} }
@ -635,6 +655,49 @@ DWORD RControlService(
} }
else else
{ {
dwControlsAccepted = lpService->Status.dwControlsAccepted;
dwCurrentState = lpService->Status.dwCurrentState;
/* Check the current state before sending a control request */
switch (dwCurrentState)
{
case SERVICE_STOP_PENDING:
case SERVICE_STOPPED:
return ERROR_SERVICE_CANNOT_ACCEPT_CTRL;
case SERVICE_START_PENDING:
switch (dwControl)
{
case SERVICE_CONTROL_STOP:
break;
case SERVICE_CONTROL_INTERROGATE:
RtlCopyMemory(lpServiceStatus,
&lpService->Status,
sizeof(SERVICE_STATUS));
return ERROR_SUCCESS;
default:
return ERROR_SERVICE_CANNOT_ACCEPT_CTRL;
}
break;
}
/* Check if the control code is acceptable to the service */
switch (dwControl)
{
case SERVICE_CONTROL_STOP:
if ((dwControlsAccepted & SERVICE_ACCEPT_STOP) == 0)
return ERROR_INVALID_SERVICE_CONTROL;
break;
case SERVICE_CONTROL_PAUSE:
case SERVICE_CONTROL_CONTINUE:
if ((dwControlsAccepted & SERVICE_ACCEPT_PAUSE_CONTINUE) == 0)
return ERROR_INVALID_SERVICE_CONTROL;
break;
}
/* Send control code to the service */ /* Send control code to the service */
dwError = ScmControlService(lpService, dwError = ScmControlService(lpService,
dwControl); dwControl);
@ -674,9 +737,12 @@ DWORD RDeleteService(
if (ScmShutdown) if (ScmShutdown)
return ERROR_SHUTDOWN_IN_PROGRESS; return ERROR_SHUTDOWN_IN_PROGRESS;
hSvc = (PSERVICE_HANDLE)hService; hSvc = ScmGetServiceFromHandle(hService);
if (!hSvc || hSvc->Handle.Tag != SERVICE_TAG) if (hSvc == NULL)
{
DPRINT1("Invalid service handle!\n");
return ERROR_INVALID_HANDLE; return ERROR_INVALID_HANDLE;
}
if (!RtlAreAllAccessesGranted(hSvc->Handle.DesiredAccess, if (!RtlAreAllAccessesGranted(hSvc->Handle.DesiredAccess,
DELETE)) DELETE))
@ -721,9 +787,12 @@ DWORD RLockServiceDatabase(
*lpLock = 0; *lpLock = 0;
hMgr = (PMANAGER_HANDLE)hSCManager; hMgr = ScmGetServiceManagerFromHandle(hSCManager);
if (!hMgr || hMgr->Handle.Tag != MANAGER_TAG) if (hMgr == NULL)
{
DPRINT1("Invalid service manager handle!\n");
return ERROR_INVALID_HANDLE; return ERROR_INVALID_HANDLE;
}
if (!RtlAreAllAccessesGranted(hMgr->Handle.DesiredAccess, if (!RtlAreAllAccessesGranted(hMgr->Handle.DesiredAccess,
SC_MANAGER_LOCK)) SC_MANAGER_LOCK))
@ -758,15 +827,15 @@ DWORD RQueryServiceObjectSecurity(
DPRINT("RQueryServiceObjectSecurity() called\n"); DPRINT("RQueryServiceObjectSecurity() called\n");
hSvc = (PSERVICE_HANDLE)hService; hSvc = ScmGetServiceFromHandle(hService);
if (!hSvc || hSvc->Handle.Tag != SERVICE_TAG) if (hSvc == NULL)
{ {
DPRINT("Invalid handle tag!\n"); DPRINT1("Invalid service handle!\n");
return ERROR_INVALID_HANDLE; return ERROR_INVALID_HANDLE;
} }
if (dwSecurityInformation & (DACL_SECURITY_INFORMATION || if (dwSecurityInformation & (DACL_SECURITY_INFORMATION |
GROUP_SECURITY_INFORMATION || GROUP_SECURITY_INFORMATION |
OWNER_SECURITY_INFORMATION)) OWNER_SECURITY_INFORMATION))
DesiredAccess |= READ_CONTROL; DesiredAccess |= READ_CONTROL;
@ -840,10 +909,10 @@ DWORD RSetServiceObjectSecurity(
DPRINT("RSetServiceObjectSecurity() called\n"); DPRINT("RSetServiceObjectSecurity() called\n");
hSvc = (PSERVICE_HANDLE)hService; hSvc = ScmGetServiceFromHandle(hService);
if (!hSvc || hSvc->Handle.Tag != SERVICE_TAG) if (hSvc == NULL)
{ {
DPRINT("Invalid handle tag!\n"); DPRINT1("Invalid service handle!\n");
return ERROR_INVALID_HANDLE; return ERROR_INVALID_HANDLE;
} }
@ -957,10 +1026,10 @@ DWORD RQueryServiceStatus(
if (ScmShutdown) if (ScmShutdown)
return ERROR_SHUTDOWN_IN_PROGRESS; return ERROR_SHUTDOWN_IN_PROGRESS;
hSvc = (PSERVICE_HANDLE)hService; hSvc = ScmGetServiceFromHandle(hService);
if (!hSvc || hSvc->Handle.Tag != SERVICE_TAG) if (hSvc == NULL)
{ {
DPRINT("Invalid handle tag!\n"); DPRINT1("Invalid service handle!\n");
return ERROR_INVALID_HANDLE; return ERROR_INVALID_HANDLE;
} }
@ -1143,10 +1212,10 @@ DWORD RChangeServiceConfigW(
if (ScmShutdown) if (ScmShutdown)
return ERROR_SHUTDOWN_IN_PROGRESS; return ERROR_SHUTDOWN_IN_PROGRESS;
hSvc = (PSERVICE_HANDLE)hService; hSvc = ScmGetServiceFromHandle(hService);
if (!hSvc || hSvc->Handle.Tag != SERVICE_TAG) if (hSvc == NULL)
{ {
DPRINT("Invalid handle tag!\n"); DPRINT1("Invalid service handle!\n");
return ERROR_INVALID_HANDLE; return ERROR_INVALID_HANDLE;
} }
@ -1763,10 +1832,10 @@ DWORD RCreateServiceW(
if (ScmShutdown) if (ScmShutdown)
return ERROR_SHUTDOWN_IN_PROGRESS; return ERROR_SHUTDOWN_IN_PROGRESS;
hManager = (PMANAGER_HANDLE)hSCManager; hManager = ScmGetServiceManagerFromHandle(hSCManager);
if (!hManager || hManager->Handle.Tag != MANAGER_TAG) if (hManager == NULL)
{ {
DPRINT("Invalid manager handle!\n"); DPRINT1("Invalid service manager handle!\n");
return ERROR_INVALID_HANDLE; return ERROR_INVALID_HANDLE;
} }
@ -2073,7 +2142,6 @@ DWORD REnumDependentServicesW(
DWORD dwServicesReturned = 0; DWORD dwServicesReturned = 0;
DWORD dwServiceCount; DWORD dwServiceCount;
HKEY hServicesKey = NULL; HKEY hServicesKey = NULL;
LPSC_RPC_HANDLE hSCObject;
PSERVICE_HANDLE hSvc; PSERVICE_HANDLE hSvc;
PSERVICE lpService = NULL; PSERVICE lpService = NULL;
PSERVICE *lpServicesArray = NULL; PSERVICE *lpServicesArray = NULL;
@ -2085,8 +2153,13 @@ DWORD REnumDependentServicesW(
DPRINT("REnumDependentServicesW() called\n"); DPRINT("REnumDependentServicesW() called\n");
hSCObject = &hService; hSvc = ScmGetServiceFromHandle(hService);
hSvc = (PSERVICE_HANDLE) *hSCObject; if (hSvc == NULL)
{
DPRINT1("Invalid service handle!\n");
return ERROR_INVALID_HANDLE;
}
lpService = hSvc->ServiceEntry; lpService = hSvc->ServiceEntry;
/* Check access rights */ /* Check access rights */
@ -2218,13 +2291,14 @@ DWORD REnumServicesStatusW(
if (ScmShutdown) if (ScmShutdown)
return ERROR_SHUTDOWN_IN_PROGRESS; return ERROR_SHUTDOWN_IN_PROGRESS;
hManager = (PMANAGER_HANDLE)hSCManager; hManager = ScmGetServiceManagerFromHandle(hSCManager);
if (!hManager || hManager->Handle.Tag != MANAGER_TAG) if (hManager == NULL)
{ {
DPRINT("Invalid manager handle!\n"); DPRINT1("Invalid service manager handle!\n");
return ERROR_INVALID_HANDLE; return ERROR_INVALID_HANDLE;
} }
*pcbBytesNeeded = 0; *pcbBytesNeeded = 0;
*lpServicesReturned = 0; *lpServicesReturned = 0;
@ -2469,10 +2543,10 @@ DWORD ROpenServiceW(
if (ScmShutdown) if (ScmShutdown)
return ERROR_SHUTDOWN_IN_PROGRESS; return ERROR_SHUTDOWN_IN_PROGRESS;
hManager = (PMANAGER_HANDLE)hSCManager; hManager = ScmGetServiceManagerFromHandle(hSCManager);
if (!hManager || hManager->Handle.Tag != MANAGER_TAG) if (hManager == NULL)
{ {
DPRINT("Invalid manager handle!\n"); DPRINT1("Invalid service manager handle!\n");
return ERROR_INVALID_HANDLE; return ERROR_INVALID_HANDLE;
} }
@ -2549,10 +2623,10 @@ DWORD RQueryServiceConfigW(
if (ScmShutdown) if (ScmShutdown)
return ERROR_SHUTDOWN_IN_PROGRESS; return ERROR_SHUTDOWN_IN_PROGRESS;
hSvc = (PSERVICE_HANDLE)hService; hSvc = ScmGetServiceFromHandle(hService);
if (!hSvc || hSvc->Handle.Tag != SERVICE_TAG) if (hSvc == NULL)
{ {
DPRINT("Invalid handle tag!\n"); DPRINT1("Invalid service handle!\n");
return ERROR_INVALID_HANDLE; return ERROR_INVALID_HANDLE;
} }
@ -2757,10 +2831,10 @@ DWORD RStartServiceW(
if (ScmShutdown) if (ScmShutdown)
return ERROR_SHUTDOWN_IN_PROGRESS; return ERROR_SHUTDOWN_IN_PROGRESS;
hSvc = (PSERVICE_HANDLE)hService; hSvc = ScmGetServiceFromHandle(hService);
if (!hSvc || hSvc->Handle.Tag != SERVICE_TAG) if (hSvc == NULL)
{ {
DPRINT("Invalid handle tag!\n"); DPRINT1("Invalid service handle!\n");
return ERROR_INVALID_HANDLE; return ERROR_INVALID_HANDLE;
} }
@ -2983,10 +3057,10 @@ DWORD RChangeServiceConfigA(
if (ScmShutdown) if (ScmShutdown)
return ERROR_SHUTDOWN_IN_PROGRESS; return ERROR_SHUTDOWN_IN_PROGRESS;
hSvc = (PSERVICE_HANDLE)hService; hSvc = ScmGetServiceFromHandle(hService);
if (!hSvc || hSvc->Handle.Tag != SERVICE_TAG) if (hSvc == NULL)
{ {
DPRINT("Invalid handle tag!\n"); DPRINT1("Invalid service handle!\n");
return ERROR_INVALID_HANDLE; return ERROR_INVALID_HANDLE;
} }
@ -3401,7 +3475,6 @@ DWORD REnumDependentServicesA(
DWORD dwServicesReturned = 0; DWORD dwServicesReturned = 0;
DWORD dwServiceCount; DWORD dwServiceCount;
HKEY hServicesKey = NULL; HKEY hServicesKey = NULL;
LPSC_RPC_HANDLE hSCObject;
PSERVICE_HANDLE hSvc; PSERVICE_HANDLE hSvc;
PSERVICE lpService = NULL; PSERVICE lpService = NULL;
PSERVICE *lpServicesArray = NULL; PSERVICE *lpServicesArray = NULL;
@ -3413,8 +3486,13 @@ DWORD REnumDependentServicesA(
DPRINT("REnumDependentServicesA() called\n"); DPRINT("REnumDependentServicesA() called\n");
hSCObject = &hService; hSvc = ScmGetServiceFromHandle(hService);
hSvc = (PSERVICE_HANDLE) *hSCObject; if (hSvc == NULL)
{
DPRINT1("Invalid service handle!\n");
return ERROR_INVALID_HANDLE;
}
lpService = hSvc->ServiceEntry; lpService = hSvc->ServiceEntry;
/* Check access rights */ /* Check access rights */
@ -3723,10 +3801,10 @@ DWORD RQueryServiceConfigA(
if (ScmShutdown) if (ScmShutdown)
return ERROR_SHUTDOWN_IN_PROGRESS; return ERROR_SHUTDOWN_IN_PROGRESS;
hSvc = (PSERVICE_HANDLE)hService; hSvc = ScmGetServiceFromHandle(hService);
if (!hSvc || hSvc->Handle.Tag != SERVICE_TAG) if (hSvc == NULL)
{ {
DPRINT("Invalid handle tag!\n"); DPRINT1("Invalid service handle!\n");
return ERROR_INVALID_HANDLE; return ERROR_INVALID_HANDLE;
} }
@ -3964,10 +4042,10 @@ DWORD RStartServiceA(
if (ScmShutdown) if (ScmShutdown)
return ERROR_SHUTDOWN_IN_PROGRESS; return ERROR_SHUTDOWN_IN_PROGRESS;
hSvc = (PSERVICE_HANDLE)hService; hSvc = ScmGetServiceFromHandle(hService);
if (!hSvc || hSvc->Handle.Tag != SERVICE_TAG) if (hSvc == NULL)
{ {
DPRINT("Invalid handle tag!\n"); DPRINT1("Invalid service handle!\n");
return ERROR_INVALID_HANDLE; return ERROR_INVALID_HANDLE;
} }
@ -4345,10 +4423,10 @@ DWORD RChangeServiceConfig2W(
if (ScmShutdown) if (ScmShutdown)
return ERROR_SHUTDOWN_IN_PROGRESS; return ERROR_SHUTDOWN_IN_PROGRESS;
hSvc = (PSERVICE_HANDLE)hService; hSvc = ScmGetServiceFromHandle(hService);
if (!hSvc || hSvc->Handle.Tag != SERVICE_TAG) if (hSvc == NULL)
{ {
DPRINT("Invalid handle tag!\n"); DPRINT1("Invalid service handle!\n");
return ERROR_INVALID_HANDLE; return ERROR_INVALID_HANDLE;
} }
@ -4446,10 +4524,10 @@ DWORD RQueryServiceConfig2A(
if (ScmShutdown) if (ScmShutdown)
return ERROR_SHUTDOWN_IN_PROGRESS; return ERROR_SHUTDOWN_IN_PROGRESS;
hSvc = (PSERVICE_HANDLE)hService; hSvc = ScmGetServiceFromHandle(hService);
if (!hSvc || hSvc->Handle.Tag != SERVICE_TAG) if (hSvc == NULL)
{ {
DPRINT("Invalid handle tag!\n"); DPRINT1("Invalid service handle!\n");
return ERROR_INVALID_HANDLE; return ERROR_INVALID_HANDLE;
} }
@ -4566,10 +4644,10 @@ DWORD RQueryServiceConfig2W(
if (ScmShutdown) if (ScmShutdown)
return ERROR_SHUTDOWN_IN_PROGRESS; return ERROR_SHUTDOWN_IN_PROGRESS;
hSvc = (PSERVICE_HANDLE)hService; hSvc = ScmGetServiceFromHandle(hService);
if (!hSvc || hSvc->Handle.Tag != SERVICE_TAG) if (hSvc == NULL)
{ {
DPRINT("Invalid handle tag!\n"); DPRINT1("Invalid service handle!\n");
return ERROR_INVALID_HANDLE; return ERROR_INVALID_HANDLE;
} }
@ -4719,10 +4797,10 @@ DWORD RQueryServiceStatusEx(
if (cbBufSize < sizeof(SERVICE_STATUS_PROCESS)) if (cbBufSize < sizeof(SERVICE_STATUS_PROCESS))
return ERROR_INSUFFICIENT_BUFFER; return ERROR_INSUFFICIENT_BUFFER;
hSvc = (PSERVICE_HANDLE)hService; hSvc = ScmGetServiceFromHandle(hService);
if (!hSvc || hSvc->Handle.Tag != SERVICE_TAG) if (hSvc == NULL)
{ {
DPRINT("Invalid handle tag!\n"); DPRINT1("Invalid service handle!\n");
return ERROR_INVALID_HANDLE; return ERROR_INVALID_HANDLE;
} }
@ -4912,10 +4990,10 @@ DWORD REnumServicesStatusExW(
if (InfoLevel != SC_ENUM_PROCESS_INFO) if (InfoLevel != SC_ENUM_PROCESS_INFO)
return ERROR_INVALID_LEVEL; return ERROR_INVALID_LEVEL;
hManager = (PMANAGER_HANDLE)hSCManager; hManager = ScmGetServiceManagerFromHandle(hSCManager);
if (!hManager || hManager->Handle.Tag != MANAGER_TAG) if (hManager == NULL)
{ {
DPRINT("Invalid manager handle!\n"); DPRINT1("Invalid service manager handle!\n");
return ERROR_INVALID_HANDLE; return ERROR_INVALID_HANDLE;
} }

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