- 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">
<xi:include href="extrac32/extrac32.rbuild" />
</directory>
<directory name="findstr">
<xi:include href="findstr/findstr.rbuild" />
</directory>
<directory name="fontview">
<xi:include href="fontview/fontview.rbuild" />
</directory>

View file

@ -1,6 +1,6 @@
/* TRANSLATOR : Mário Kaèmár /Mario Kacmar/ aka Kario (kario@szm.sk)
* DATE OF TR.: 30-01-2008
* LAST CHANGE: 31-05-2010
* LAST CHANGE: 17-09-2010
* ---------------------------------------
* TODO:
* pridanie navigaèných znaèiek "&" ?
@ -545,9 +545,9 @@ END
STRINGTABLE DISCARDABLE
BEGIN
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_EVS "Electron-Volts"
IDS_ENERGY_EVS "Elektron-Volty"
IDS_ENERGY_FOOT_POUNDS "Foot-Pounds"
IDS_ENERGY_IT_CALORIES "International Table calories"
IDS_ENERGY_IT_KILOCALORIES "International Table kilocalories"
@ -593,7 +593,7 @@ BEGIN
IDS_LENGTH_MILLIMETERS "Milimetre"
IDS_LENGTH_NAUTICAL_MILES "Námorné míle"
IDS_LENGTH_NIEU "Nieu"
IDS_LENGTH_PARSECS "Parsecy"
IDS_LENGTH_PARSECS "Parseky"
IDS_LENGTH_PICAS "Picas"
IDS_LENGTH_RI_JAPAN "Ri (Japonsko)"
IDS_LENGTH_RI_KOREA "Ri (Kórea)"
@ -626,10 +626,10 @@ STRINGTABLE DISCARDABLE
BEGIN
IDS_PRESSURE_ATMOSPHERES "Atmosféry"
IDS_PRESSURE_BARS "Bary"
IDS_PRESSURE_HECTOPASCALS "Hektopascals"
IDS_PRESSURE_KILOPASCALS "Kilopascals"
IDS_PRESSURE_MM_OF_MERCURY "Millimeters of mercury"
IDS_PRESSURE_PASCALS "Pascals"
IDS_PRESSURE_HECTOPASCALS "Hektopascaly"
IDS_PRESSURE_KILOPASCALS "Kilopascaly"
IDS_PRESSURE_MM_OF_MERCURY "Milimetre ortuti"
IDS_PRESSURE_PASCALS "Pascaly"
IDS_PRESSURE_PSI "Libry na štvorcový palec"
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;
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)
{
@ -33,27 +44,27 @@ LPTSTR GetNodeTypeName(UINT NodeType)
switch (NodeType)
{
case 1:
if (!LoadString(hInstance, IDS_BCAST, szNode, sizeof(szNode)))
if (!LoadStringAndOem(hInstance, IDS_BCAST, szNode, sizeof(szNode)))
return NULL;
break;
case 2:
if (!LoadString(hInstance, IDS_P2P, szNode, sizeof(szNode)))
if (!LoadStringAndOem(hInstance, IDS_P2P, szNode, sizeof(szNode)))
return NULL;
break;
case 4:
if (!LoadString(hInstance, IDS_MIXED, szNode, sizeof(szNode)))
if (!LoadStringAndOem(hInstance, IDS_MIXED, szNode, sizeof(szNode)))
return NULL;
break;
case 8:
if (!LoadString(hInstance, IDS_HYBRID, szNode, sizeof(szNode)))
if (!LoadStringAndOem(hInstance, IDS_HYBRID, szNode, sizeof(szNode)))
return NULL;
break;
default :
if (!LoadString(hInstance, IDS_UNKNOWN, szNode, sizeof(szNode)))
if (!LoadStringAndOem(hInstance, IDS_UNKNOWN, szNode, sizeof(szNode)))
return NULL;
break;
}
@ -69,42 +80,42 @@ LPTSTR GetInterfaceTypeName(UINT InterfaceType)
switch (InterfaceType)
{
case MIB_IF_TYPE_OTHER:
if (!LoadString(hInstance, IDS_OTHER, szIntType, sizeof(szIntType)))
if (!LoadStringAndOem(hInstance, IDS_OTHER, szIntType, sizeof(szIntType)))
return NULL;
break;
case MIB_IF_TYPE_ETHERNET:
if (!LoadString(hInstance, IDS_ETH, szIntType, sizeof(szIntType)))
if (!LoadStringAndOem(hInstance, IDS_ETH, szIntType, sizeof(szIntType)))
return NULL;
break;
case MIB_IF_TYPE_TOKENRING:
if (!LoadString(hInstance, IDS_TOKEN, szIntType, sizeof(szIntType)))
if (!LoadStringAndOem(hInstance, IDS_TOKEN, szIntType, sizeof(szIntType)))
return NULL;
break;
case MIB_IF_TYPE_FDDI:
if (!LoadString(hInstance, IDS_FDDI, szIntType, sizeof(szIntType)))
if (!LoadStringAndOem(hInstance, IDS_FDDI, szIntType, sizeof(szIntType)))
return NULL;
break;
case MIB_IF_TYPE_PPP:
if (!LoadString(hInstance, IDS_PPP, szIntType, sizeof(szIntType)))
if (!LoadStringAndOem(hInstance, IDS_PPP, szIntType, sizeof(szIntType)))
return NULL;
break;
case MIB_IF_TYPE_LOOPBACK:
if (!LoadString(hInstance, IDS_LOOP, szIntType, sizeof(szIntType)))
if (!LoadStringAndOem(hInstance, IDS_LOOP, szIntType, sizeof(szIntType)))
return NULL;
break;
case MIB_IF_TYPE_SLIP:
if (!LoadString(hInstance, IDS_SLIP, szIntType, sizeof(szIntType)))
if (!LoadStringAndOem(hInstance, IDS_SLIP, szIntType, sizeof(szIntType)))
return NULL;
break;
default:
if (!LoadString(hInstance, IDS_UNKNOWN, szIntType, sizeof(szIntType)))
if (!LoadStringAndOem(hInstance, IDS_UNKNOWN, szIntType, sizeof(szIntType)))
return NULL;
break;
}
@ -153,6 +164,7 @@ LPTSTR GetConnectionType(LPTSTR lpClass)
{
HKEY hKey = NULL;
LPTSTR ConType = NULL;
LPTSTR ConTypeTmp = NULL;
TCHAR Path[256];
LPTSTR PrePath = _T("SYSTEM\\CurrentControlSet\\Control\\Network\\{4D36E972-E325-11CE-BFC1-08002BE10318}\\");
LPTSTR PostPath = _T("\\Connection");
@ -180,24 +192,34 @@ LPTSTR GetConnectionType(LPTSTR lpClass)
NULL,
&dwDataSize) == ERROR_SUCCESS)
{
ConTypeTmp = (LPTSTR)HeapAlloc(ProcessHeap,
0,
dwDataSize);
ConType = (LPTSTR)HeapAlloc(ProcessHeap,
0,
dwDataSize);
if (ConType)
if (ConType && ConTypeTmp)
{
if(RegQueryValueEx(hKey,
_T("Name"),
NULL,
&dwType,
(PBYTE)ConType,
(PBYTE)ConTypeTmp,
&dwDataSize) != ERROR_SUCCESS)
{
HeapFree(ProcessHeap,
0,
ConType);
HeapFree(ProcessHeap,
0,
ConTypeTmp);
ConType = NULL;
}
if (ConType) CharToOem(ConTypeTmp, ConType);
}
}
}
@ -674,7 +696,7 @@ VOID Usage(VOID)
if (lpUsage == NULL)
return;
if (LoadString(hInstance,
if (LoadStringAndOem(hInstance,
IDS_USAGE,
lpUsage,
Size))

View file

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

View file

@ -2,13 +2,13 @@
[Section]
Name = 7-Zip
Version = 4.65
Version = 9.20
Licence = LGPL
Description = Utility to create and open 7zip, zip, tar, rar and other archive files.
Size = 0.9M
Size = 1.0M
Category = 12
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
[Section.0407]
@ -17,5 +17,8 @@ Description = Tool zum Erstellen und Öffnen von 7zip, zip, tar, rar und andrern
[Section.040a]
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]
Description = Утиліта для створення та відкриття 7zip, zip, tar, rar та інших архівних файлів.

View file

@ -14,5 +14,10 @@ CDPath = none
[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.
[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]
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]
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]
Licence = Невідома

View file

@ -17,5 +17,8 @@ Description = DosBlaster ist eine Shell Extension, die es ermöglicht jede DOS A
[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.
[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]
Description = DosBlaster це розширення оболонки, яке дозволяє запустити будь-який виконавчий файл DOS в DOSBox через правий клік. Ця версія містить DOSBox 0.70, але може бути оновлена встановленням новішої версії DOSBox в теки DosBlaster.

View file

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

View file

@ -2,47 +2,47 @@
[Section]
Name = Mozilla Firefox 3.6
Version = 3.6.10
Version = 3.6.12
Licence = MPL/GPL/LGPL
Description = The most popular and one of the best free Web Browsers out there.
Size = 8.1M
Category = 5
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
[Section.0407]
Description = Der populärste und einer der besten freien Webbrowser.
Size = 8.0M
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]
Description = El más popular y uno de los mejores navegadores web gratuitos que hay.
Size = 8.0M
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]
Description = Mest populære og best også gratis nettleserene der ute.
Size = 8.0M
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]
Description = Najpopularniejsza i jedna z najlepszych darmowych przeglądarek internetowych.
Size = 8.8M
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]
Description = Один из самых популярных и лучших бесплатных браузеров.
Size = 8.4M
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]
Description = Найпопулярніший та один з кращих безплатних веб-браузерів.
Size = 8.4M
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.
[Section.0415]
Description = Otwarty pakiet biurowy.
Description = Otwarty pakiet biurowy, bazujący na Open Office, ale znacznie lepszy.
[Section.0422]
Description = Відкритий офісний пакет.

View file

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

View file

@ -2,13 +2,13 @@
[Section]
Name = LibreOffice
Version = 3.3.0 Beta 1
Version = 3.3.0 Beta 3
Licence = LGPL
Description = Former called OpenOffice. Open Source Office Suite.
Size = 138.0MB
Size = 300.0MB
Category = 6
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
[Section.0407]

View file

@ -2,13 +2,13 @@
[Section]
Name = Miranda IM
Version = 0.9.5
Version = 0.9.11
Licence = GPL
Description = Open source multiprotocol instant messaging application - May not work completely.
Size = 2.2MB
Size = 3.0MB
Category = 5
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
[Section.0407]

View file

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

View file

@ -2,14 +2,17 @@
[Section]
Name = Mono .net Development Framework
Version = 2.6.7
Version = 2.8.1
Licence = Unknown
Description = Open Source .net Framework.
Size = 72MB
Size = 77MB
Category = 14
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
[Section.0415]
Description = Pakiet Mono .net Framework dla Programistów.
[Section.0422]
Description = Відкритий .net Фреймворк.

View file

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

View file

@ -10,3 +10,6 @@ Category = 14
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
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
URLDownload = http://download.microsoft.com/download/5/6/7/567758a3-759e-473e-bf8f-52154438565a/dotnetfx.exe
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
URLDownload = http://download.microsoft.com/download/c/6/e/c6e88215-0178-4c6c-b5f3-158ff77b1f38/NetFx20SP2_x86.exe
CDPath = none
[Section.0415]
Description = Microsoft .NET Framework Wersja 2.0 Service Pack 2.

View file

@ -2,13 +2,13 @@
[Section]
Name = OpenTTD
Version = 1.0.4
Version = 1.0.5
Licence = GPL v2
Description = Open Source clone of the "Transport Tycoon Deluxe" game engine. You need a copy of Transport Tycoon.
Size = 3.4MB
Category = 4
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
[Section.0407]

View file

@ -2,13 +2,13 @@
[Section]
Name = Opera
Version = 10.62
Version = 10.63
Licence = Freeware
Description = The popular Opera Browser with many advanced features and including a Mail and BitTorrent client.
Size = 12.7M
Category = 5
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
[Section.0407]

View file

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

View file

@ -14,5 +14,8 @@ CDPath = none
[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).
[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]
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]
Name = SciTE
Version = 2.21
Version = 2.22
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.
Size = 0.6M
Category = 7
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
[Section.0407]
@ -17,5 +17,8 @@ Description = SciTE ist ein SCIntilla basierter Text Editor. Ursprünglich wurde
[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.
[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]
Description = Текстовий редактор на основі SCIntilla. Був зібраний як презентація Scintilla, але виріс до редактора загального користування з засобами збирання та запуску програм.

View file

@ -2,13 +2,13 @@
[Section]
Name = ScummVM
Version = 1.1.1
Version = 1.2.0
Licence = GPL
Description = Sam and Max, Day of the Tentacle, etc on ReactOS.
Size = 3.3MB
Size = 3.5MB
Category = 4
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
[Section.0407]

View file

@ -2,31 +2,31 @@
[Section]
Name = Mozilla SeaMonkey
Version = 2.0.8
Version = 2.0.10
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.
Size = 10.1MB
Category = 5
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
[Section.0407]
Description = Mozilla Suite lebt. Dies ist das einzige Browser-, Mail-, Chat- and Composerwerkzeug-Bundle welches Sie benötigen.
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]
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
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]
Description = Pakiet Mozilla żyje. W zestawie: przeglądarka, klient poczty, IRC oraz Edytor HTML - wszystko, czego potrzebujesz.
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]
Description = Продолжение Mozilla Suite. Включает браузер, почтовый клиент, IRC-клиент и HTML-редактор.
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]
Description = Die STEAM Spieleplattform, die von viele Spielen verwendet wird.
[Section.0415]
Description = STEAM - platforma, którą używa obecnie wiele gier.
[Section.0422]
Description = Ігрова платформа, що використовується багатьма іграми.

View file

@ -13,3 +13,6 @@ CDPath = none
[Section.0407]
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
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]
Licence = Невідома
Description = Пакет шрифтів Tahoma, що необхідні деяким програмам (Steam).

View file

@ -2,41 +2,41 @@
[Section]
Name = Mozilla Thunderbird
Version = 3.1.4
Version = 3.1.6
Licence = MPL/GPL/LGPL
Description = The most popular and one of the best free Mail Clients out there.
Size = 9.0M
Category = 5
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
[Section.0407]
Description = Der populärste und einer der besten freien Mail-Clients.
Size = 8.8M
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]
Description = El más popular y uno de los mejores clientes mail que hay.
Size = 8.8M
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]
Description = Najpopularniejszy i jeden z najlepszych darmowych klientów poczty.
Size = 9.7M
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]
Description = Один из самых популярных и лучших бесплатных почтовых клиентов.
Size = 9.2M
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]
Description = Найпопулярніший та один з кращих поштових клієнтів.
Size = 9.2M
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]
Name = UltraVNC
Version = 1.0.8.2
Version = 1.0.9.1
Licence = GPL
Description = Open-source VNC client/server.
Size = 1.9MB
Size = 2.0MB
Category = 5
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
[Section.040a]
Description = Cliente/Servidor VNC de código abierto.
[Section.0415]
Description = Otwarty klient/serwer VNC.
[Section.0422]
Description = Відкритий VNC клієнт/сервер.

View file

@ -2,13 +2,13 @@
[Section]
Name = µTorrent
Version = 2.0.4
Version = 2.2
Licence = Freeware for non-commercial uses
Description = Small and fast BitTorrent Client.
Size = 320K
Size = 385K
Category = 5
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

View file

@ -2,13 +2,13 @@
[Section]
Name = VLC media player
Version = 1.1.4
Version = 1.1.5
Licence = GPL
Description = A media player.
Size = 18.7MB
Size = 19.1MB
Category = 1
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
[Section.0407]
@ -20,5 +20,8 @@ Description = Reproductor multimedia.
[Section.0419]
Description = Мультимедийный проигрыватель.
[Section.0415]
Description = Odtwarzacz multimediów.
[Section.0422]
Description = Мультимедійний програвач.

View file

@ -67,19 +67,21 @@ static void draw_splitbar(HWND hWnd, int x)
static void ResizeWnd(ChildWnd* pChildWnd, int cx, int cy)
{
HDWP hdwp = BeginDeferWindowPos(2);
RECT rt, rs;
HDWP hdwp = BeginDeferWindowPos(3);
RECT rt, rs, rb;
const int tHeight = 18;
SetRect(&rt, 0, 0, cx, cy);
cy = 0;
if (hStatusBar != NULL) {
GetWindowRect(hStatusBar, &rs);
cy = rs.bottom - rs.top + 8;
cy = rs.bottom - rs.top;
}
GetWindowRect(pChildWnd->hAddressBtnWnd, &rb);
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->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->hListWnd, 0, rt.left+cx , rt.top + 25, rt.right-cx, rt.bottom-rt.top-cy, 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->hAddressBtnWnd, 0, rt.right - tHeight, rt.top, tHeight, tHeight, 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);
}
@ -333,20 +335,26 @@ LRESULT CALLBACK ChildWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lPa
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,
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->hListWnd = CreateListView(hWnd, (HMENU) LIST_WINDOW/*, pChildWnd->szPath*/);
SetFocus(pChildWnd->hTreeWnd);
/* set the address bar font */
if (pChildWnd->hAddressBarWnd)
/* set the address bar and button font */
if ((pChildWnd->hAddressBarWnd) && (pChildWnd->hAddressBtnWnd))
{
hFont = (HFONT)GetStockObject(DEFAULT_GUI_FONT);
SendMessage(pChildWnd->hAddressBarWnd,
WM_SETFONT,
(WPARAM)hFont,
0);
SendMessage(pChildWnd->hAddressBtnWnd,
WM_SETFONT,
(WPARAM)hFont,
0);
}
/* Subclass the AddressBar */
oldproc = (WNDPROC)(LONG_PTR)GetWindowLongPtr(pChildWnd->hAddressBarWnd, GWL_WNDPROC);
SetWindowLongPtr(pChildWnd->hAddressBarWnd, GWL_USERDATA, (DWORD_PTR)oldproc);
@ -354,7 +362,10 @@ LRESULT CALLBACK ChildWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lPa
break;
}
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;
}
break;
@ -477,10 +488,28 @@ LRESULT CALLBACK ChildWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lPa
rootName = get_root_key_name(hRootKey);
fullPath = HeapAlloc(GetProcessHeap(), 0, (_tcslen(rootName) + 1 + _tcslen(keyPath) + 1) * sizeof(TCHAR));
if (fullPath) {
/* 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(pChildWnd->hAddressBarWnd, WM_SETTEXT, 0, (LPARAM)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;

View file

@ -59,19 +59,10 @@ void error(HWND hwnd, INT resId, ...)
static void error_code_messagebox(HWND hwnd, DWORD error_code)
{
LPTSTR lpMsgBuf;
DWORD status;
TCHAR title[256];
static const TCHAR fallback[] = TEXT("Error displaying error message.\n");
if (!LoadString(hInst, IDS_ERROR, title, COUNT_OF(title)))
lstrcpy(title, TEXT("Error"));
status = FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
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);
ErrorMessageBox(hwnd, title, error_code);
}
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;
}
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)
{
OPENFILENAME ofn;
@ -316,7 +415,6 @@ static BOOL ImportRegistryFile(HWND hWnd)
return TRUE;
}
static UINT_PTR CALLBACK ExportRegistryFile_OFNHookProc(HWND hdlg, UINT uiMsg, WPARAM wParam, LPARAM lParam)
{
HWND hwndExportAll;
@ -758,6 +856,12 @@ static BOOL _CmdWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
UNREFERENCED_PARAMETER(message);
switch (LOWORD(wParam)) {
case ID_REGISTRY_LOADHIVE:
LoadHive(hWnd);
return TRUE;
case ID_REGISTRY_UNLOADHIVE:
UnloadHive(hWnd);
return TRUE;
case ID_REGISTRY_IMPORTREGISTRYFILE:
ImportRegistryFile(hWnd);
return TRUE;

View file

@ -177,6 +177,16 @@ END
/*
* 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
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -276,6 +286,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Внася словесен файл в регистъра"
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_DISCONNECTNETWORKREGISTRY
@ -332,6 +346,8 @@ BEGIN
IDS_MY_COMPUTER "Моят компютър"
IDS_IMPORT_REG_FILE "Внос на регистърен файл"
IDS_EXPORT_REG_FILE "Износ на регистърен файл"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(самостоятелна стойност на двойна дума)"
END

View file

@ -175,6 +175,16 @@ END
/*
* 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
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -274,6 +284,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Importuje textový soubor do registru"
ID_REGISTRY_EXPORTREGISTRYFILE
"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
"Připojí se ke vzdálenému registru jiného počítače"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -330,6 +344,8 @@ BEGIN
IDS_MY_COMPUTER "Tento počítač"
IDS_IMPORT_REG_FILE "Importovat soubor 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)"
END

View file

@ -177,6 +177,16 @@ END
/*
* 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
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_EXPORTREGISTRYFILE
"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
"Verbindet zu einer Registry eines Fremdcomputers"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -332,6 +346,8 @@ BEGIN
IDS_MY_COMPUTER "Arbeitsplatz"
IDS_IMPORT_REG_FILE "Registry importieren"
IDS_EXPORT_REG_FILE "Registry exportieren"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(ungültiger DWORD-Wert)"
END

View file

@ -177,6 +177,16 @@ END
/*
* 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
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -276,6 +286,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "ÅéóÜãåé Ýíá áñ÷åßï êåéìÝíïõ óôç registry"
ID_REGISTRY_EXPORTREGISTRYFILE
"ÅîÜãùç üëç Þ Ýíá êïììÜôé ôçò registry óå Ýíá áñ÷åßï êåéìÝíïõ"
ID_REGISTRY_LOADHIVE
"Loads a hive file into the registry"
ID_REGISTRY_UNLOADHIVE
"Unloads a hive from the registry"
ID_REGISTRY_CONNECTNETWORKREGISTRY
"ÓõíäÝååôáé óôç registry åíüò áðïìáêñõóìÝíïõ õðïëïãéóôÞ"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -332,6 +346,8 @@ BEGIN
IDS_MY_COMPUTER "Ï ÕðïëïãéóôÞò Ìïõ"
IDS_IMPORT_REG_FILE "ÅéóáãùãÞ Áñ÷åßïõ Registry"
IDS_EXPORT_REG_FILE "ÅîáãùãÞ Áñ÷åßïõ Registry"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(ìç Ýãêõñç DWORD ôéìÞ)"
END

View file

@ -274,6 +274,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Imports a text file into the registry"
ID_REGISTRY_EXPORTREGISTRYFILE
"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
"Connects to a remote computer's registry"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -330,6 +334,8 @@ BEGIN
IDS_MY_COMPUTER "My Computer"
IDS_IMPORT_REG_FILE "Import 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)"
END
@ -392,6 +398,20 @@ BEGIN
EDITTEXT IDC_EXPORT_BRANCH_TEXT,30,34,335,12
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
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Add to Favorites"

View file

@ -180,6 +180,16 @@ END
/*
* 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
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_EXPORTREGISTRYFILE
"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
"Se conecta al registro de un ordenador remoto"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -335,6 +349,8 @@ BEGIN
IDS_MY_COMPUTER "Mi PC"
IDS_IMPORT_REG_FILE "Importa 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)"
END

View file

@ -180,6 +180,16 @@ END
/*
* 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
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_EXPORTREGISTRYFILE
"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
"Connecte aux registres d'un ordinateur distant"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -335,6 +349,8 @@ BEGIN
IDS_MY_COMPUTER "Mon ordinateur"
IDS_IMPORT_REG_FILE "Importer 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)"
END

View file

@ -178,6 +178,16 @@ END
/*
* 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
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_EXPORTREGISTRYFILE
"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
"Connects to a remote computer's registry"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -333,6 +347,8 @@ BEGIN
IDS_MY_COMPUTER "My Computer"
IDS_IMPORT_REG_FILE "Import 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)"
END

View file

@ -177,6 +177,16 @@ END
/*
* 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
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_EXPORTREGISTRYFILE
"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
"Menyambung ke registri komputer remote"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -332,6 +346,8 @@ BEGIN
IDS_MY_COMPUTER "My Computer"
IDS_IMPORT_REG_FILE "Impor 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)"
END

View file

@ -180,6 +180,16 @@ END
/*
* 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
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_EXPORTREGISTRYFILE
"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
"Si connette al Registro di un computer remoto"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -337,6 +351,8 @@ BEGIN
IDS_MY_COMPUTER "Il mio Computer"
IDS_IMPORT_REG_FILE "Importa 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)"
END

View file

@ -175,6 +175,16 @@ END
/*
* 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
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -274,6 +284,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "テキスト ファイルをレジストリにインポートします。"
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_DISCONNECTNETWORKREGISTRY
@ -330,6 +344,8 @@ BEGIN
IDS_MY_COMPUTER "マイ コンピュータ"
IDS_IMPORT_REG_FILE "レジストリ ファイルのインポート"
IDS_EXPORT_REG_FILE "レジストリ ファイルのエクスポート"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(無効な DWORD 値)"
END

View file

@ -162,6 +162,16 @@ END
/*
* 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
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -261,6 +271,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "텍스트 파일을 레지스트리로 불러 옵니다"
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_DISCONNECTNETWORKREGISTRY
@ -317,6 +331,8 @@ BEGIN
IDS_MY_COMPUTER "내 컴퓨터"
IDS_IMPORT_REG_FILE "레지스트리 파일 불러오기"
IDS_EXPORT_REG_FILE "레지스트리 파일 내보내기"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(잘못된 DWORD값)"
END

View file

@ -177,6 +177,16 @@ END
/*
* 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
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_EXPORTREGISTRYFILE
"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
"Een verbinding maken met het register van een externe computer"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -332,6 +346,8 @@ BEGIN
IDS_MY_COMPUTER "My Computer"
IDS_IMPORT_REG_FILE "Import 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)"
END

View file

@ -177,6 +177,16 @@ END
/*
* 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
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_EXPORTREGISTRYFILE
"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
"Kobler til Registret på en annen datamaskin"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -332,6 +346,8 @@ BEGIN
IDS_MY_COMPUTER "Min datamaskin"
IDS_IMPORT_REG_FILE "Importer registerfil"
IDS_EXPORT_REG_FILE "Eksporter registerfil"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(ugyldig DWORD-verdi)"
END

View file

@ -182,6 +182,16 @@ END
/*
* 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
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -281,6 +291,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Importuje plik do rejestru"
ID_REGISTRY_EXPORTREGISTRYFILE
"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
"Po³¹czenie z rejestrem zdalnego komputera"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -337,6 +351,8 @@ BEGIN
IDS_MY_COMPUTER "Mój komputer"
IDS_IMPORT_REG_FILE "Importuj 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)"
END

View file

@ -178,6 +178,16 @@ END
/*
* 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
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_EXPORTREGISTRYFILE
"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
"Conecta-se ao Registro de um computador remoto"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -333,6 +347,8 @@ BEGIN
IDS_MY_COMPUTER "Meu computador"
IDS_IMPORT_REG_FILE "Importar 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)"
END

View file

@ -277,6 +277,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Importa um arquivo texto para o registro."
ID_REGISTRY_EXPORTREGISTRYFILE
"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
"Conecta a um registro em um computador remoto."
ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -333,6 +337,8 @@ BEGIN
IDS_MY_COMPUTER "My Computer"
IDS_IMPORT_REG_FILE "Import 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)"
END
@ -384,6 +390,16 @@ END
/*
* 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
STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS |

View file

@ -177,6 +177,16 @@ END
/*
* 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
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_REGISTRY_IMPORTREGISTRYFILE "Импортирует текстовой файл в реестр"
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 "Подключается к реестру удалённого компьютера"
@ -332,6 +344,8 @@ BEGIN
IDS_MY_COMPUTER "Мой компьютер"
IDS_IMPORT_REG_FILE "Импортирование файла реестра"
IDS_EXPORT_REG_FILE "Экспортирование файла реестра"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(неправильное значение DWORD)"
END

View file

@ -162,6 +162,16 @@ END
/*
* 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
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_EXPORTREGISTRYFILE
"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
"Connects to a remote computer's registry"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -317,6 +331,8 @@ BEGIN
IDS_MY_COMPUTER "Tento poèítaè"
IDS_IMPORT_REG_FILE "Import 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)"
END

View file

@ -177,6 +177,16 @@ END
/*
* 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
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_EXPORTREGISTRYFILE
"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
"Vzpostavi povezavo z registrom oddaljenega raèunalnika"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -332,6 +346,8 @@ BEGIN
IDS_MY_COMPUTER "My Computer"
IDS_IMPORT_REG_FILE "Import 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)"
END

View file

@ -175,6 +175,16 @@ END
/*
* 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
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -274,6 +284,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "Importerar en textfil till registret"
ID_REGISTRY_EXPORTREGISTRYFILE
"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
"Ansluter till en annan dators register"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -330,6 +344,8 @@ BEGIN
IDS_MY_COMPUTER "Den här datorn"
IDS_IMPORT_REG_FILE "Importera registerfil"
IDS_EXPORT_REG_FILE "Exportera registerfil"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(felaktigt DWORD-värde)"
END

View file

@ -177,6 +177,16 @@ END
/*
* 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
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_EXPORTREGISTRYFILE
"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
"Connects to a remote computer's registry"
ID_REGISTRY_DISCONNECTNETWORKREGISTRY
@ -332,6 +346,8 @@ BEGIN
IDS_MY_COMPUTER "My Computer"
IDS_IMPORT_REG_FILE "Import 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)"
END

View file

@ -178,6 +178,16 @@ END
/*
* 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
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -277,6 +287,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "²ìïîðòóº òåêñòîâèé ôàéë äî ðåºñòðó"
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_DISCONNECTNETWORKREGISTRY
@ -333,6 +347,8 @@ BEGIN
IDS_MY_COMPUTER "̳é êîìï'þòåð"
IDS_IMPORT_REG_FILE "²ìïîðòóâàòè ôàéë ðåºñòðó"
IDS_EXPORT_REG_FILE "Åêñïîðòóâàòè ôàéë ðåºñòðó"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(Íåïðàâèëüíå çíà÷åííÿ DWORD)"
END

View file

@ -177,6 +177,16 @@ END
/*
* 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
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP |
@ -276,6 +286,10 @@ BEGIN
ID_REGISTRY_IMPORTREGISTRYFILE "将文件导入到注册表中。"
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_DISCONNECTNETWORKREGISTRY
@ -332,6 +346,8 @@ BEGIN
IDS_MY_COMPUTER "My Computer"
IDS_IMPORT_REG_FILE "导入注册表文件"
IDS_EXPORT_REG_FILE "导出注册表文件"
IDS_LOAD_HIVE "Load Hive"
IDS_UNLOAD_HIVE "Unload Hive"
IDS_INVALID_DWORD "(不正确的 DWORD 值)"
END

View file

@ -556,18 +556,12 @@ BOOL RefreshListView(HWND hwndLV, HKEY hKey, LPCTSTR keyPath)
/* } */
/* dwValSize = max_val_size; */
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. */
ValBuf[dwValSize] = 0;
#ifdef UNICODE
ValBuf[dwValSize + 1] = 0;
#endif
AddEntryToList(hwndLV, pLastBl, dwValType, ValBuf, dwValSize, -1, TRUE);
AddEntryToList(hwndLV, ValName, dwValType, ValBuf, dwValSize, -1, TRUE);
dwValNameLen = max_val_name_len;
dwValSize = max_val_size;
dwValType = 0L;

View file

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

View file

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

View file

@ -137,9 +137,11 @@
#define IDS_ERR_RENVAL_CAPTION 32856
#define IDS_ERR_RENVAL_TOEMPTY 32857
#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_EXPANDABLESTRINGVALUE 32861
#define ID_EDIT_NEW_MULTISTRINGVALUE 32861
#define ID_EDIT_NEW_EXPANDABLESTRINGVALUE 32862
#define ID_SWITCH_PANELS 32871
#define ID_EDIT_PERMISSIONS 32872
@ -199,6 +201,8 @@
#define IDC_EXPORT_BRANCH 2009
#define IDC_EXPORT_BRANCH_TEXT 2010
#define IDD_LOADHIVE 2500
#define IDC_EDIT_KEY 2501
#define IDC_FAVORITENAME 2011
#define IDC_FAVORITESLIST 2012

View file

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

View file

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

View file

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

View file

@ -180,7 +180,7 @@ WORD wDefColor; /* default color */
* insert commas into a number
*/
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 */
UINT n, iTarget;

View file

@ -99,7 +99,7 @@ INT cmd_cls (LPTSTR);
/* 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);
INT ParseCommandLine(LPTSTR);
struct _PARSED_COMMAND;

View file

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

View file

@ -1,9 +1,9 @@
/* Slovak translation for CMD
* TRANSLATOR: Mário Kaèmár /Mario Kacmar/ aka Kario (kario@szm.sk)
* 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
@ -118,7 +118,7 @@ dec hex name dec hex name\n\
6 6 Yellow 14 E Bright Yellow\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\
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_HELP4, "Displays or sets the date.\n\n\
STRING_DATE_HELP4, "Zobrazí alebo nastaví dátum.\n\n\
DATE [/T][date]\n\n\
/T display only\n\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\
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\
/T display only\n\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\
[MIN|MAX|RESTORE] ['title']\n\n\
/POS specify window placement and dimensions\n\
MIN minimize the window\n\
MAX maximize the window\n\
RESTORE restore the window"
MIN minimalizova<EFBFBD> okno\n\
MAX maximalizujte okno\n\
RESTORE obnovi<EFBFBD> okno"
STRING_WINDOW_HELP2, "change console window aspect\n\n\
ACTIVATE 'window' [/POS[=]left,top,width,heigth]\n\
[MIN|MAX|RESTORE] ['title']\n\n\
window tile of window on which perform actions\n\
/POS specify window placement and dimensions\n\
MIN minimize the window\n\
MAX maximize the window\n\
RESTORE restore the window\n\
MIN minimalizova<EFBFBD> okno\n\
MAX maximalizujte okno\n\
RESTORE obnovi<EFBFBD> okno\n\
title new title\n"
@ -576,7 +576,7 @@ CLS Vyma
CMD Starts a new instance of the ReactOS command interpreter.\n\
COLOR Sets the default console foreground and background colors.\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\
DIR Displays a list of files and subdirectories in a directory.\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\
IF Performs conditional processing in batch programs.\n\
LABEL Creates, changes, or deletes the volume label of a disk.\n\
MD Creates a directory.\n\
MKDIR Creates a directory.\n\
MD Vytvorí adresár.\n\
MKDIR Vytvorí adresár.\n\
MKLINK Creates a filesystem link object.\n\
MOVE Moves one or more files from one directory to another\n\
directory.\n\
@ -603,8 +603,8 @@ PROMPT Changes the command prompt.\n\
PUSHD Saves the current directory then changes it.\n\
RD Removes a directory.\n\
REM Records comments (remarks) in batch files.\n\
REN Renames a file or files.\n\
RENAME Renames a file or files.\n\
REN Premenuje súbor alebo súbory.\n\
RENAME Premenuje súbor alebo súbory.\n\
REPLACE Replaces files.\n\
RMDIR Removes a directory.\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"
STRING_HELP2, "START Starts a separate window to run a specified program or 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\
TITLE Sets the window title for a CMD.EXE session.\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_DATE_ERROR, "Neplatný dátum."
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_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_FOR_ERROR1, "'in' missing in for statement."
STRING_FOR_ERROR2, "no brackets found."
@ -675,47 +675,47 @@ STRING_TIME_ERROR1, "Neplatn
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_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_PATH_NOT_FOUND, "Path not found\n"
STRING_ERROR_FILE_NOT_FOUND, "File not found\n"
STRING_ERROR_PATH_NOT_FOUND, "Cesta sa nenašla\n"
STRING_ERROR_FILE_NOT_FOUND, "Súbor sa nenašiel\n"
STRING_ERROR_REQ_PARAM_MISSING, "Required parameter missing\n"
STRING_ERROR_INVALID_DRIVE, "Invalid drive specification\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_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_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_REPLACE_ERROR1, "Invalid switch - %s\n"
STRING_REPLACE_ERROR2, "Path not found - %s\n"
STRING_REPLACE_ERROR1, "Neplatný prepínaè - %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_ERROR4, "Invalid parameter combination\n"
STRING_REPLACE_ERROR5, "Access denied - %s\n"
STRING_REPLACE_ERROR6, "No files found - %s\n"
STRING_REPLACE_ERROR5, "Prístup zamietnutý - %s\n"
STRING_REPLACE_ERROR6, "Žiadne súbory sa nenašli - %s\n"
STRING_REPLACE_ERROR7, "Extended Error 32\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_COPY_FILE , " %d súbor(ov) skopírovaný(ch)\n"
STRING_DELETE_WIPE, "wiped"
STRING_FOR_ERROR, "bad variable specification."
STRING_SCREEN_COL, "invalid value for col"
STRING_SCREEN_ROW, "invalid value for row"
STRING_SCREEN_COL, "neplatná hodnota pre ståpec"
STRING_SCREEN_ROW, "neplatná hodnota pre riadok"
STRING_TIMER_TIME "Timer %d is %s: "
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_JUNCTION, "Junction created for %s <<===>> %s\n"
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_EXPECTED_CLOSE_PAREN, "Oèakávaná ')'."

View file

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

View file

@ -435,6 +435,12 @@ LRESULT DesktopWindow::WndProc(UINT nmsg, WPARAM wparam, LPARAM lparam)
explorer_show_frame(SW_SHOWNORMAL);
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:
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
@ -171,7 +184,7 @@ FormatExCallback (
case PROGRESS:
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);
break;
@ -184,7 +197,7 @@ FormatExCallback (
status = (PBOOLEAN) Argument;
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);
Error = TRUE;
}
@ -203,7 +216,7 @@ FormatExCallback (
case UNKNOWND:
case STRUCTUREPROGRESS:
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);
return FALSE;
}
@ -261,7 +274,7 @@ static VOID Usage( LPTSTR ProgramName )
BYTE dummy;
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())
{
_tprintf(szMsg, ProgramName, _T(""));
@ -319,7 +332,7 @@ _tmain(int argc, TCHAR *argv[])
// Get function pointers
//
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);
return -1;
}
@ -329,7 +342,7 @@ _tmain(int argc, TCHAR *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] );
Usage(argv[0]);
@ -341,7 +354,7 @@ _tmain(int argc, TCHAR *argv[])
//
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);
Usage( argv[0] );
return -1;
@ -359,7 +372,7 @@ _tmain(int argc, TCHAR *argv[])
driveType = GetDriveType( RootDirectory );
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());
return -1;
}
@ -371,7 +384,7 @@ _tmain(int argc, TCHAR *argv[])
}
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] );
_fgetts( input, sizeof(input)/2, stdin );
@ -386,7 +399,7 @@ _tmain(int argc, TCHAR *argv[])
&serialNumber, &maxComponent, &flags,
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());
return -1;
}
@ -396,11 +409,11 @@ _tmain(int argc, TCHAR *argv[])
&totalNumberOfBytes,
&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());
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 );
//
@ -412,7 +425,7 @@ _tmain(int argc, TCHAR *argv[])
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] );
_fgetts( input, sizeof(input)/2, stdin );
input[ _tcslen( input ) - 1] = 0;
@ -421,15 +434,15 @@ _tmain(int argc, TCHAR *argv[])
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);
}
}
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] );
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 ) {
_fgetts( input, sizeof(input)/2, stdin );
@ -460,7 +473,7 @@ _tmain(int argc, TCHAR *argv[])
}
} 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 ) {
_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,
((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);
}
@ -488,7 +501,7 @@ _tmain(int argc, TCHAR *argv[])
ClusterSize, FormatExCallback );
#endif
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);
//
@ -503,7 +516,7 @@ _tmain(int argc, TCHAR *argv[])
if( !EnableVolumeCompression( RootDirectory, TRUE )) {
#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);
}
}
@ -520,7 +533,7 @@ _tmain(int argc, TCHAR *argv[])
input[ _tcslen(input)-1] = 0;
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());
return -1;
}
@ -531,7 +544,7 @@ _tmain(int argc, TCHAR *argv[])
&serialNumber, &maxComponent, &flags,
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());
return -1;
}
@ -544,12 +557,12 @@ _tmain(int argc, TCHAR *argv[])
&totalNumberOfBytes,
&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());
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 );
//
@ -560,11 +573,11 @@ _tmain(int argc, TCHAR *argv[])
&serialNumber, &maxComponent, &flags,
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());
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),
(unsigned int)(serialNumber & 0xFFFF) );

View file

@ -1,6 +1,6 @@
/* TRANSLATOR : M rio KaŸm r /Mario Kacmar/ aka Kario (kario@szm.sk)
* DATE OF TR.: 15-02-2008
* LAST CHANGE: 08-08-2008
* LAST CHANGE: 10-08-2010
*/
#include "resource.h"
@ -14,14 +14,14 @@ STRING_HELP, "Pou
-FS:systm s£borov UrŸuje typ s£borovho systmu (%s).\n\
-V:menovka UrŸuje menovku zv„zku.\n\
-Q Vykon va rìchle form tovanie.\n\
-A:vekosœ Overrides the default allocation unit size. Default settings\n\
are strongly recommended for general use\n\
NTFS supports 512, 1024, 2048, 4096, 8192, 16K, 32K, 64K.\n\
FAT supports 8192, 16K, 32K, 64K, 128K, 256K.\n\
NTFS compression is not supported for allocation unit sizes\n\
above 4096.\n\
-C Files created on the new volume will be compressed by\n\
default.\n\n"
-A:vekosś Prepˇçe predvolenŁ vekosś alokaźnej jednotky. Pre vçeobecn\n\
pou§itie sŁ d“razne odporŁźan predvolen nastavenia\n\
NTFS podporuje 512, 1024, 2048, 4096, 8192, 16K, 32K, 64K.\n\
FAT podporuje 8192, 16K, 32K, 64K, 128K, 256K.\n\
NTFS kompresia nie je podporovan  pre vekosti alokaźnej\n\
jednotky nad 4096.\n\
-C SŁbory vytvoren na novom zv„zku budŁ automaticky\n\
komprimovan.\n\n"
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_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_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_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"
@ -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_YN_FORMAT "\nWARNING, ALL DATA ON NON_REMOVABLE DISK\n\
DRIVE %C: WILL BE LOST!\nProceed with Format (A/N)? "
STRING_YN_FORMAT "\nUPOZORNENIE: VćETKY éDAJE NA NIE_VYMENITE•NEJ DISKOVEJ\n\
JEDNOTKE %C: BUDé STRATEN<45>!\nPokraźovaś s form tovanˇm (A/N)? "
STRING_YES_NO_FAQ "AN"

View file

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

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