Author: dreimer
Date: Sun Dec 26 16:25:30 2010
New Revision: 50150
URL: 
http://svn.reactos.org/svn/reactos?rev=50150&view=rev
Log:
Sync xcopy, iexplore, winhlp32, wordpad and write to wine 1.3.10
Added:
    trunk/reactos/base/applications/cmdutils/xcopy/Sr.rc   (with props)
    trunk/reactos/base/applications/write/Sr.rc   (with props)
    trunk/reactos/base/applications/write/Zh.rc   (with props)
Modified:
    trunk/reactos/base/applications/cmdutils/xcopy/It.rc
    trunk/reactos/base/applications/cmdutils/xcopy/Ko.rc
    trunk/reactos/base/applications/cmdutils/xcopy/rsrc.rc
    trunk/reactos/base/applications/cmdutils/xcopy/xcopy.c
    trunk/reactos/base/applications/cmdutils/xcopy/xcopy.h
    trunk/reactos/base/applications/iexplore/iexplore.rc
    trunk/reactos/base/applications/winhlp32/Ko.rc
    trunk/reactos/base/applications/winhlp32/Zh.rc
    trunk/reactos/base/applications/winhlp32/rsrc.rc
    trunk/reactos/base/applications/wordpad/Zh.rc
    trunk/reactos/base/applications/wordpad/wordpad.c
    trunk/reactos/base/applications/write/rsrc.rc
Modified: trunk/reactos/base/applications/cmdutils/xcopy/It.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/cmdutils…
==============================================================================
--- trunk/reactos/base/applications/cmdutils/xcopy/It.rc [iso-8859-1] (original)
+++ trunk/reactos/base/applications/cmdutils/xcopy/It.rc [iso-8859-1] Sun Dec 26 16:25:30
2010
@@ -34,7 +34,7 @@
     STRING_SIMCOPY,  "%d file saranno copiati\n"
     STRING_COPY,     "%d file copiato/i\n"
     STRING_QISDIR,   "'%s' è il nome di un file o una cartella\n\
-                     nell'obiettivo?\n\
+                     nella destinazione?\n\
                      (F - File, C - Cartella)\n"
     STRING_SRCPROMPT,"%s? (Sì|No)\n"
     STRING_OVERWRITE,"Sovrascrivere %s? (Sì|No|Tutti)\n"
Modified: trunk/reactos/base/applications/cmdutils/xcopy/Ko.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/cmdutils…
==============================================================================
--- trunk/reactos/base/applications/cmdutils/xcopy/Ko.rc [iso-8859-1] (original)
+++ trunk/reactos/base/applications/cmdutils/xcopy/Ko.rc [iso-8859-1] Sun Dec 26 16:25:30
2010
@@ -56,7 +56,7 @@
 \n\
 Where:\n\
 \n\
-[/I] ë§ì½ ëìì´ ì¡´ì¬íì§ ìë ê²½ì° ëë í ë¦¬ë¡ ê°ì íê³  ëê°ë
ë ë§ì íì¼ì \n\
+[/I] ë§ì½ ëìì´ ì¡´ì¬íì§ ìë ê²½ì° ëë í ë¦¬ë¡ ê°ì íê³  ëê°ë
ë ë§ì íì¼ì\n\
 \të³µì¬\n\
 [/S]  ëë í ë¦¬íê³  íì ëë í ë¦¬ ë³µì¬\n\
 [/E]  ë¹ ëë í ë¦¬ë¥¼ í¬í¨í´ì ëë í ë¦¬ì íì ëë í ë¦¬ ë³µì¬\n\
Added: trunk/reactos/base/applications/cmdutils/xcopy/Sr.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/cmdutils…
==============================================================================
--- trunk/reactos/base/applications/cmdutils/xcopy/Sr.rc (added)
+++ trunk/reactos/base/applications/cmdutils/xcopy/Sr.rc [iso-8859-1] Sun Dec 26 16:25:30
2010
@@ -1,0 +1,141 @@
+/*
+ * XCOPY - Wine-compatible xcopy program
+ * Serbian language support
+ *
+ * Copyright (C) 2007 J. Edmeades
+ * Copyright 2010 ÄorÄe VasiljeviÄ
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#include "xcopy.h"
+
+#pragma code_page(65001)
+
+LANGUAGE LANG_SERBIAN, SUBLANG_SERBIAN_CYRILLIC
+
+STRINGTABLE
+{
+    STRING_INVPARMS, "ÐеиÑпÑаван бÑÐ¾Ñ Ð¿Ð°ÑамеÑаÑа.
ÐоÑиÑÑиÑе xcopy /? за помоÑ\n"
+    STRING_INVPARM,  "ÐеиÑпÑаван паÑамеÑÐ°Ñ â%sâ.
ÐоÑиÑÑиÑе xcopy /? за помоÑ\n"
+    STRING_PAUSE,    "ÐÑиÑиÑниÑе <enter> да запоÑнеÑе
ÑмножаваÑе\n"
+    STRING_SIMCOPY,  "%d даÑоÑека/е Ñе биÑи Ñможено\n"
+    STRING_COPY,     "%d даÑоÑека/е Ñе Ñмножено\n"
+    STRING_QISDIR,   "Ðа ли Ñе â%sâ назив даÑоÑеке или
ÑаÑÑикла\n\
+                     на одÑедиÑÑÑ?\n\
+                     (Ð - даÑоÑека, Ф - ÑаÑÑикла)\n"
+    STRING_SRCPROMPT,"%s? (Ðа|Ðе)\n"
+    STRING_OVERWRITE,"ÐамениÑи %s? (Ðа|Ðе|Све)\n"
+    STRING_COPYFAIL, "УмножаваÑе â%sâ Ñ â%sâ ниÑе
ÑÑпело Ñа r/c %d\n"
+    STRING_OPENFAIL, "ÐÑваÑаÑе â%sâ даÑоÑеке ниÑе
ÑÑпело\n"
+    STRING_READFAIL, "ЧиÑаÑе â%sâ даÑоÑеке ниÑе
ÑÑпело\n"
+    STRING_YES_CHAR, "Ð"
+    STRING_NO_CHAR,  "Ð"
+    STRING_ALL_CHAR, "С"
+    STRING_FILE_CHAR,"Ð"
+    STRING_DIR_CHAR, "Ф"
+
+    STRING_HELP,
+"XCOPY â Ñмножава извоÑне даÑоÑеке или гÑане
ÑаÑÑикли Ñ Ð¾Ð´ÑедиÑÑе\n\
+\n\
+СинÑакÑа:\n\
+XCOPY Ð¸Ð·Ð²Ð¾Ñ [dest] [/I] [/S] [/Q] [/F] [/L] [/W] [/T] [/N] [/U]\n\
+\t     [/R] [/H] [/C] [/P] [/A] [/M] [/E] [/D] [/Y] [/-Y]\n\
+\n\
+Ðде:\n\
+\n\
+[/I]  ÐÑеÑпоÑÑави ÑаÑÑÐ¸ÐºÐ»Ñ ÐºÐ°Ð´Ð° одÑедиÑÑе не
поÑÑоÑи и када Ñе ÑмножаваÑÑ Ð´Ð²Ðµ или\n\
+\tвиÑе даÑоÑека\n\
+[/S]  Умножи ÑаÑÑикле и поÑÑаÑÑикле\n\
+[/E]  Умножи ÑаÑÑикле и поÑÑаÑÑикле заÑедно Ñ
пÑазним\n\
+[/Q]  Ðе пÑиказÑÑ Ð½Ð°Ð·Ð¸Ð²Ðµ Ñоком ÑмножаваÑа.\n\
+[/F]  ÐÑикажи Ñео Ð¸Ð·Ð²Ð¾Ñ Ð¸ одÑедиÑÑе Ñоком
ÑмножаваÑа\n\
+[/L]  ÐпонаÑÐ°Ñ ÑадÑÑ Ð¿ÑиказÑÑÑÑи називе коÑи Ñе
биÑи Ñмножени\n\
+[/W]  ÐиÑÐ°Ñ Ð¿Ñе поÑиÑаÑа ÑмножаваÑа\n\
+[/T]  ÐÑави пÑÐ°Ð·Ð½Ñ ÑÑÑÑкÑÑÑÑ ÑаÑÑикле, али не
Ñмножава даÑоÑеке\n\
+[/Y]  ÐоÑиÑни ÑÐ¿Ð¸Ñ Ð¿Ñи замеÑиваÑÑ Ð´Ð°ÑоÑека\n\
+[/-Y] ÐмогÑÑи ÑÐ¿Ð¸Ñ Ð¿Ñи замеÑиваÑÑ Ð´Ð°ÑоÑека\n\
+[/P]  ÐиÑÐ°Ñ Ð·Ð° ÑÐ²Ð°ÐºÑ Ð¸Ð·Ð²Ð¾ÑÐ½Ñ Ð´Ð°ÑоÑÐµÐºÑ Ð¿Ñе
ÑмножаваÑа\n\
+[/N]  Умножи коÑиÑÑеÑи кÑаÑке називе\n\
+[/U]  Умножи Ñамо оне даÑоÑеке коÑе поÑÑоÑе Ñ
одÑедиÑÑÑ\n\
+[/R]  Ðамени Ñве даÑоÑеке коÑе Ñе Ñамо ÑиÑаÑÑ\n\
+[/H]  УкÑÑÑи ÑакÑивене и ÑиÑÑемÑке даÑоÑеке Ñ
ÑмножаваÑе\n\
+[/C]  ÐаÑÑави иако доÑе до гÑеÑке Ñ ÑмножаваÑÑ\n\
+[/A]  Умножи Ñамо аÑÑ
ивиÑане даÑоÑеке\n\
+[/M]  Умножи Ñамо аÑÑ
ивиÑане даÑоÑеке и Ñклони\n\
+\tоÑобине аÑÑ
иве\n\
+[/D | /D:m-d-y] Умножи нове или измеÑене даÑоÑеке након
одÑеÑеног даÑÑма.\n\
+\t\tÐко даÑÑм ниÑе ÑнеÑен, Ñмножи Ñамо ако Ñе
одÑедиÑÑе ÑÑаÑиÑе\n\
+\t\tод извоÑа\n\n"
+
+}
+
+LANGUAGE LANG_SERBIAN, SUBLANG_SERBIAN_LATIN
+
+STRINGTABLE
+{
+    STRING_INVPARMS, "Neispravan broj parametara. Koristite xcopy /? za
pomoÄ\n"
+    STRING_INVPARM,  "Neispravan parametar â%sâ. Koristite xcopy /? za
pomoÄ\n"
+    STRING_PAUSE,    "Pritisnite <enter> da zapoÄnete umnožavanje\n"
+    STRING_SIMCOPY,  "%d datoteka/e Äe biti umoženo\n"
+    STRING_COPY,     "%d datoteka/e je umnoženo\n"
+    STRING_QISDIR,   "Da li je â%sâ naziv datoteke ili fascikla\n\
+                     na odredištu?\n\
+                     (D - datoteka, F - fascikla)\n"
+    STRING_SRCPROMPT,"%s? (Da|Ne)\n"
+    STRING_OVERWRITE,"Zameniti %s? (Da|Ne|Sve)\n"
+    STRING_COPYFAIL, "Umnožavanje â%sâ u â%sâ nije uspelo sa r/c %d\n"
+    STRING_OPENFAIL, "Otvaranje â%sâ datoteke nije uspelo\n"
+    STRING_READFAIL, "Äitanje â%sâ datoteke nije uspelo\n"
+    STRING_YES_CHAR, "D"
+    STRING_NO_CHAR,  "N"
+    STRING_ALL_CHAR, "S"
+    STRING_FILE_CHAR,"D"
+    STRING_DIR_CHAR, "F"
+
+    STRING_HELP,
+"XCOPY â umnožava izvorne datoteke ili grane fascikli u odrediÅ¡te\n\
+\n\
+Sintaksa:\n\
+XCOPY izvor [dest] [/I] [/S] [/Q] [/F] [/L] [/W] [/T] [/N] [/U]\n\
+\t     [/R] [/H] [/C] [/P] [/A] [/M] [/E] [/D] [/Y] [/-Y]\n\
+\n\
+Gde:\n\
+\n\
+[/I]  Pretpostavi fasciklu kada odredište ne postoji i kada se umnožavaju dve ili\n\
+\tviše datoteka\n\
+[/S]  Umnoži fascikle i potfascikle\n\
+[/E]  Umnoži fascikle i potfascikle zajedno s praznim\n\
+[/Q]  Ne prikazuj nazive tokom umnožavanja.\n\
+[/F]  Prikaži ceo izvor i odredište tokom umnožavanja\n\
+[/L]  OponaÅ¡aj radnju prikazujuÄi nazive koji Äe biti umnoženi\n\
+[/W]  Pitaj pre poÄinjanja umnožavanja\n\
+[/T]  Pravi praznu strukturu fascikle, ali ne umnožava datoteke\n\
+[/Y]  Potisni upit pri zamenjivanju datoteka\n\
+[/-Y] OmoguÄi upit pri zamenjivanju datoteka\n\
+[/P]  Pitaj za svaku izvornu datoteku pre umnožavanja\n\
+[/N]  Umnoži koristeÄi kratke nazive\n\
+[/U]  Umnoži samo one datoteke koje postoje u odredištu\n\
+[/R]  Zameni sve datoteke koje se samo Äitaju\n\
+[/H]  UkljuÄi sakrivene i sistemske datoteke u umnožavanje\n\
+[/C]  Nastavi iako doÄe do greÅ¡ke u umnožavanju\n\
+[/A]  Umnoži samo arhivirane datoteke\n\
+[/M]  Umnoži samo arhivirane datoteke i ukloni\n\
+\tosobine arhive\n\
+[/D | /D:m-d-y] Umnoži nove ili izmenjene datoteke nakon odreÄenog datuma.\n\
+\t\tAko datum nije unesen, umnoži samo ako je odredište starije\n\
+\t\tod izvora\n\n"
+
+}
Propchange: trunk/reactos/base/applications/cmdutils/xcopy/Sr.rc
------------------------------------------------------------------------------
    svn:eol-style = native
Modified: trunk/reactos/base/applications/cmdutils/xcopy/rsrc.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/cmdutils…
==============================================================================
--- trunk/reactos/base/applications/cmdutils/xcopy/rsrc.rc [iso-8859-1] (original)
+++ trunk/reactos/base/applications/cmdutils/xcopy/rsrc.rc [iso-8859-1] Sun Dec 26
16:25:30 2010
@@ -43,5 +43,6 @@
 #include "Ro.rc"
 #include "Ru.rc"
 #include "Si.rc"
+#include "Sr.rc"
 #include "Sv.rc"
 #include "Uk.rc"
Modified: trunk/reactos/base/applications/cmdutils/xcopy/xcopy.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/cmdutils…
==============================================================================
--- trunk/reactos/base/applications/cmdutils/xcopy/xcopy.c [iso-8859-1] (original)
+++ trunk/reactos/base/applications/cmdutils/xcopy/xcopy.c [iso-8859-1] Sun Dec 26
16:25:30 2010
@@ -49,6 +49,8 @@
 WINE_DEFAULT_DEBUG_CHANNEL(xcopy);
 /* Prototypes */
+static int XCOPY_ParseCommandLine(WCHAR *suppliedsource,
+                                  WCHAR *supplieddestination, DWORD *flags);
 static int XCOPY_ProcessSourceParm(WCHAR *suppliedsource, WCHAR *stem,
                                    WCHAR *spec, DWORD flags);
 static int XCOPY_ProcessDestParm(WCHAR *supplieddestination, WCHAR *stem,
@@ -108,17 +110,6 @@
     const WCHAR PROMPTSTR1[]  = {'/', 'Y', 0};
     const WCHAR PROMPTSTR2[]  = {'/', 'y', 0};
     const WCHAR COPYCMD[]  = {'C', 'O', 'P', 'Y',
'C', 'M', 'D', 0};
-    const WCHAR EXCLUDE[]  = {'E', 'X', 'C', 'L',
'U', 'D', 'E', ':', 0};
-
-    /*
-     * Parse the command line
-     */
-
-    /* Confirm at least one parameter */
-    if (argc < 2) {
-        XCOPY_wprintf(XCOPY_LoadMessage(STRING_INVPARMS));
-        return RC_INITERROR;
-    }
     /* Preinitialize flags based on COPYCMD */
     if (GetEnvironmentVariableW(COPYCMD, copyCmd, MAXSTRING)) {
@@ -135,30 +126,171 @@
        lose                                                                   */
     flags |= OPT_COPYHIDSYS;
+    /*
+     * Parse the command line
+     */
+    if ((rc = XCOPY_ParseCommandLine(suppliedsource, supplieddestination,
+                                     &flags)) != RC_OK) {
+        if (rc == RC_HELP)
+            return RC_OK;
+        else
+            return rc;
+    }
+
+    /* Trace out the supplied information */
+    WINE_TRACE("Supplied parameters:\n");
+    WINE_TRACE("Source      : '%s'\n", wine_dbgstr_w(suppliedsource));
+    WINE_TRACE("Destination : '%s'\n",
wine_dbgstr_w(supplieddestination));
+
+    /* Extract required information from source specification */
+    rc = XCOPY_ProcessSourceParm(suppliedsource, sourcestem, sourcespec, flags);
+    if (rc != RC_OK) return rc;
+
+    /* Extract required information from destination specification */
+    rc = XCOPY_ProcessDestParm(supplieddestination, destinationstem,
+                               destinationspec, sourcespec, flags);
+    if (rc != RC_OK) return rc;
+
+    /* Trace out the resulting information */
+    WINE_TRACE("Resolved parameters:\n");
+    WINE_TRACE("Source Stem : '%s'\n", wine_dbgstr_w(sourcestem));
+    WINE_TRACE("Source Spec : '%s'\n", wine_dbgstr_w(sourcespec));
+    WINE_TRACE("Dest   Stem : '%s'\n", wine_dbgstr_w(destinationstem));
+    WINE_TRACE("Dest   Spec : '%s'\n", wine_dbgstr_w(destinationspec));
+
+    /* Pause if necessary */
+    if (flags & OPT_PAUSE) {
+        DWORD count;
+        char pausestr[10];
+
+        XCOPY_wprintf(XCOPY_LoadMessage(STRING_PAUSE));
+        ReadFile (GetStdHandle(STD_INPUT_HANDLE), pausestr, sizeof(pausestr),
+                  &count, NULL);
+    }
+
+    /* Now do the hard work... */
+    rc = XCOPY_DoCopy(sourcestem, sourcespec,
+                destinationstem, destinationspec,
+                flags);
+
+    /* Clear up exclude list allocated memory */
+    while (excludeList) {
+        EXCLUDELIST *pos = excludeList;
+        excludeList = excludeList -> next;
+        HeapFree(GetProcessHeap(), 0, pos->name);
+        HeapFree(GetProcessHeap(), 0, pos);
+    }
+
+    /* Finished - print trailer and exit */
+    if (flags & OPT_SIMULATE) {
+        XCOPY_wprintf(XCOPY_LoadMessage(STRING_SIMCOPY), filesCopied);
+    } else if (!(flags & OPT_NOCOPY)) {
+        XCOPY_wprintf(XCOPY_LoadMessage(STRING_COPY), filesCopied);
+    }
+    if (rc == RC_OK && filesCopied == 0) rc = RC_NOFILES;
+    return rc;
+
+}
+
+/* =========================================================================
+   XCOPY_ParseCommandLine - Parses the command line
+   ========================================================================= */
+static BOOL is_whitespace(WCHAR c)
+{
+    return c == ' ' || c == '\t';
+}
+
+static WCHAR *skip_whitespace(WCHAR *p)
+{
+    for (; *p && is_whitespace(*p); p++);
+    return p;
+}
+
+/* Windows XCOPY uses a simplified command line parsing algorithm
+   that lacks the escaped-quote logic of build_argv(), because
+   literal double quotes are illegal in any of its arguments.
+   Example: 'XCOPY "c:\DIR A" "c:DIR B\"' is OK. */
+static int find_end_of_word(const WCHAR *word, WCHAR **end)
+{
+    BOOL in_quotes = 0;
+    const WCHAR *ptr = word;
+    for (;;) {
+        for (; *ptr != '\0' && *ptr != '"' &&
+                 (in_quotes || !is_whitespace(*ptr)); ptr++);
+        if (*ptr == '"') {
+            in_quotes = !in_quotes;
+            ptr++;
+        }
+        /* Odd number of double quotes is illegal for XCOPY */
+        if (in_quotes && *ptr == '\0')
+            return RC_INITERROR;
+        if (*ptr == '\0' || (!in_quotes && is_whitespace(*ptr)))
+            break;
+    }
+    *end = (WCHAR*)ptr;
+    return RC_OK;
+}
+
+/* Remove all double quotes from a word */
+static void strip_quotes(WCHAR *word, WCHAR **end)
+{
+    WCHAR *rp, *wp;
+    for (rp = word, wp = word; *rp != '\0'; rp++) {
+        if (*rp == '"')
+            continue;
+        if (wp < rp)
+            *wp = *rp;
+        wp++;
+    }
+    *wp = '\0';
+    *end = wp;
+}
+
+static int XCOPY_ParseCommandLine(WCHAR *suppliedsource,
+                                  WCHAR *supplieddestination, DWORD *pflags)
+{
+    const WCHAR EXCLUDE[]  = {'E', 'X', 'C', 'L',
'U', 'D', 'E', ':', 0};
+    DWORD flags = *pflags;
+    WCHAR *cmdline, *word, *end, *next;
+    int rc = RC_INITERROR;
+
+    cmdline = _wcsdup(GetCommandLineW());
+    if (cmdline == NULL)
+        return rc;
+
     /* Skip first arg, which is the program name */
-    argvW++;
-
-    while (argc > 1)
+    if ((rc = find_end_of_word(cmdline, &word)) != RC_OK)
+        goto out;
+    word = skip_whitespace(word);
+
+    while (*word)
     {
-        argc--;
-        WINE_TRACE("Processing Arg: '%s'\n", wine_dbgstr_w(*argvW));
+        WCHAR first;
+        if ((rc = find_end_of_word(word, &end)) != RC_OK)
+            goto out;
+
+        next = skip_whitespace(end);
+        first = word[0];
+        *end = '\0';
+        strip_quotes(word, &end);
+        WINE_TRACE("Processing Arg: '%s'\n", wine_dbgstr_w(word));
         /* First non-switch parameter is source, second is destination */
-        if (*argvW[0] != '/') {
+        if (first != '/') {
             if (suppliedsource[0] == 0x00) {
-                lstrcpyW(suppliedsource, *argvW);
+                lstrcpyW(suppliedsource, word);
             } else if (supplieddestination[0] == 0x00) {
-                lstrcpyW(supplieddestination, *argvW);
+                lstrcpyW(supplieddestination, word);
             } else {
                 XCOPY_wprintf(XCOPY_LoadMessage(STRING_INVPARMS));
-                return RC_INITERROR;
+                goto out;
             }
         } else {
             /* Process all the switch options
                  Note: Windows docs say /P prompts when dest is created
                        but tests show it is done for each src file
                        regardless of the destination                   */
-            switch (toupper(argvW[0][1])) {
+            switch (toupper(word[1])) {
             case 'I': flags |= OPT_ASSUMEDIR;     break;
             case 'S': flags |= OPT_RECURSIVE;     break;
             case 'Q': flags |= OPT_QUIET;         break;
@@ -180,19 +312,19 @@
             /* E can be /E or /EXCLUDE */
             case 'E': if (CompareStringW(LOCALE_USER_DEFAULT,
                                          NORM_IGNORECASE | SORT_STRINGSORT,
-                                         &argvW[0][1], 8,
+                                         &word[1], 8,
                                          EXCLUDE, -1) == 2) {
-                        if (XCOPY_ProcessExcludeList(&argvW[0][9])) {
+                        if (XCOPY_ProcessExcludeList(&word[9])) {
                           XCOPY_FailMessage(ERROR_INVALID_PARAMETER);
-                          return RC_INITERROR;
+                          goto out;
                         } else flags |= OPT_EXCLUDELIST;
                       } else flags |= OPT_EMPTYDIR | OPT_RECURSIVE;
                       break;
             /* D can be /D or /D: */
-            case 'D': if ((argvW[0][2])==':' &&
isdigit(argvW[0][3])) {
+            case 'D': if (word[2]==':' && isdigit(word[3])) {
                           SYSTEMTIME st;
-                          WCHAR     *pos = &argvW[0][3];
+                          WCHAR     *pos = &word[3];
                           BOOL       isError = FALSE;
                           memset(&st, 0x00, sizeof(st));
@@ -211,6 +343,7 @@
                           /* Parse the arg : Day */
                           if (!isError) {
                               st.wYear = _wtol(pos);
+                              while (*pos && isdigit(*pos)) pos++;
                               if (st.wYear < 100) st.wYear+=2000;
                           }
@@ -231,83 +364,37 @@
                                          wine_dbgstr_w(datestring),
wine_dbgstr_w(timestring));
                           } else {
                               XCOPY_FailMessage(ERROR_INVALID_PARAMETER);
-                              return RC_INITERROR;
+                              goto out;
                           }
                       } else {
                           flags |= OPT_DATENEWER;
                       }
                       break;
-            case '-': if (toupper(argvW[0][2])=='Y')
+            case '-': if (toupper(word[2])=='Y')
                           flags &= ~OPT_NOPROMPT; break;
             case '?': XCOPY_wprintf(XCOPY_LoadMessage(STRING_HELP));
-                      return RC_OK;
+                      rc = RC_HELP;
+                      goto out;
             default:
-                WINE_TRACE("Unhandled parameter '%s'\n",
wine_dbgstr_w(*argvW));
-                XCOPY_wprintf(XCOPY_LoadMessage(STRING_INVPARM), *argvW);
-                return RC_INITERROR;
-            }
-        }
-        argvW++;
+                WINE_TRACE("Unhandled parameter '%s'\n",
wine_dbgstr_w(word));
+                XCOPY_wprintf(XCOPY_LoadMessage(STRING_INVPARM), word);
+                goto out;
+            }
+        }
+        word = next;
     }
     /* Default the destination if not supplied */
     if (supplieddestination[0] == 0x00)
         lstrcpyW(supplieddestination, wchr_dot);
-    /* Trace out the supplied information */
-    WINE_TRACE("Supplied parameters:\n");
-    WINE_TRACE("Source      : '%s'\n", wine_dbgstr_w(suppliedsource));
-    WINE_TRACE("Destination : '%s'\n",
wine_dbgstr_w(supplieddestination));
-
-    /* Extract required information from source specification */
-    rc = XCOPY_ProcessSourceParm(suppliedsource, sourcestem, sourcespec, flags);
-    if (rc != RC_OK) return rc;
-
-    /* Extract required information from destination specification */
-    rc = XCOPY_ProcessDestParm(supplieddestination, destinationstem,
-                               destinationspec, sourcespec, flags);
-    if (rc != RC_OK) return rc;
-
-    /* Trace out the resulting information */
-    WINE_TRACE("Resolved parameters:\n");
-    WINE_TRACE("Source Stem : '%s'\n", wine_dbgstr_w(sourcestem));
-    WINE_TRACE("Source Spec : '%s'\n", wine_dbgstr_w(sourcespec));
-    WINE_TRACE("Dest   Stem : '%s'\n", wine_dbgstr_w(destinationstem));
-    WINE_TRACE("Dest   Spec : '%s'\n", wine_dbgstr_w(destinationspec));
-
-    /* Pause if necessary */
-    if (flags & OPT_PAUSE) {
-        DWORD count;
-        char pausestr[10];
-
-        XCOPY_wprintf(XCOPY_LoadMessage(STRING_PAUSE));
-        ReadFile (GetStdHandle(STD_INPUT_HANDLE), pausestr, sizeof(pausestr),
-                  &count, NULL);
-    }
-
-    /* Now do the hard work... */
-    rc = XCOPY_DoCopy(sourcestem, sourcespec,
-                destinationstem, destinationspec,
-                flags);
-
-    /* Clear up exclude list allocated memory */
-    while (excludeList) {
-        EXCLUDELIST *pos = excludeList;
-        excludeList = excludeList -> next;
-        HeapFree(GetProcessHeap(), 0, pos->name);
-        HeapFree(GetProcessHeap(), 0, pos);
-    }
-
-    /* Finished - print trailer and exit */
-    if (flags & OPT_SIMULATE) {
-        XCOPY_wprintf(XCOPY_LoadMessage(STRING_SIMCOPY), filesCopied);
-    } else if (!(flags & OPT_NOCOPY)) {
-        XCOPY_wprintf(XCOPY_LoadMessage(STRING_COPY), filesCopied);
-    }
-    if (rc == RC_OK && filesCopied == 0) rc = RC_NOFILES;
+    *pflags = flags;
+    rc = RC_OK;
+
+ out:
+    free(cmdline);
     return rc;
-
 }
@@ -432,8 +519,10 @@
     if (attribs == INVALID_FILE_ATTRIBUTES) {
         /* If /I supplied and wildcard copy, assume directory */
-        if (flags & OPT_ASSUMEDIR &&
-            (wcschr(srcspec, '?') || wcschr(srcspec, '*'))) {
+        /* Also if destination ends with backslash */
+        if ((flags & OPT_ASSUMEDIR &&
+            (wcschr(srcspec, '?') || wcschr(srcspec, '*'))) ||
+            (supplieddestination[lstrlenW(supplieddestination)-1] == '\\')) {
             isDir = TRUE;
Modified: trunk/reactos/base/applications/cmdutils/xcopy/xcopy.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/cmdutils…
==============================================================================
--- trunk/reactos/base/applications/cmdutils/xcopy/xcopy.h [iso-8859-1] (original)
+++ trunk/reactos/base/applications/cmdutils/xcopy/xcopy.h [iso-8859-1] Sun Dec 26
16:25:30 2010
@@ -26,6 +26,7 @@
 #define RC_CTRLC      2
 #define RC_INITERROR  4
 #define RC_WRITEERROR 5
+#define RC_HELP       6
 #define OPT_ASSUMEDIR    0x00000001
 #define OPT_RECURSIVE    0x00000002
Modified: trunk/reactos/base/applications/iexplore/iexplore.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/iexplore…
==============================================================================
--- trunk/reactos/base/applications/iexplore/iexplore.rc [iso-8859-1] (original)
+++ trunk/reactos/base/applications/iexplore/iexplore.rc [iso-8859-1] Sun Dec 26 16:25:30
2010
@@ -16,13 +16,13 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
-#define WINE_OLESELFREGISTER
-#define WINE_FILEDESCRIPTION_STR "Wine core exe"
+#define WINE_FILEDESCRIPTION_STR "Wine Internet Explorer"
 #define WINE_FILENAME_STR "iexplore.exe"
 #define WINE_FILEVERSION 6,0,2900,2180
 #define WINE_FILEVERSION_STR "6.0.2900.2180"
 #define WINE_PRODUCTVERSION 6,0,2900,2180
 #define WINE_PRODUCTVERSION_STR "6.0.2900.2180"
+#define WINE_EXTRAVALUES VALUE "OLESelfRegister",""
 #include "wine/wine_common_ver.rc"
Modified: trunk/reactos/base/applications/winhlp32/Ko.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/winhlp32…
==============================================================================
--- trunk/reactos/base/applications/winhlp32/Ko.rc [iso-8859-1] (original)
+++ trunk/reactos/base/applications/winhlp32/Ko.rc [iso-8859-1] Sun Dec 26 16:25:30 2010
@@ -21,49 +21,51 @@
 #include "winhelp_res.h"
+#pragma code_page(65001)
+
 LANGUAGE LANG_KOREAN, SUBLANG_DEFAULT
 /* Menu */
 MAIN_MENU MENU
 {
- POPUP "ÆÄÀÏ(&F)" {
-  MENUITEM "¿±â(&O)...", MNID_FILE_OPEN
+ POPUP "íì¼(&F)" {
+  MENUITEM "ì´ê¸°(&O)...", MNID_FILE_OPEN
   MENUITEM SEPARATOR
-  MENUITEM "Àμâ(&P)", MNID_FILE_PRINT
-  MENUITEM "ÇÁ¸°ÅÍ ¼³Á¤(&S)...", MNID_FILE_SETUP
+  MENUITEM "ì¸ì(&P)", MNID_FILE_PRINT
+  MENUITEM "íë¦°í° ì¤ì (&S)...", MNID_FILE_SETUP
    MENUITEM SEPARATOR
-  MENUITEM "Á¾·á(&E)", MNID_FILE_EXIT
+  MENUITEM "ì¢
ë£(&E)", MNID_FILE_EXIT
  }
- POPUP "ÆíÁý(&E)" {
-   MENUITEM "º¹»ç(&C)...", MNID_EDIT_COPYDLG
+ POPUP "í¸ì§(&E)" {
+   MENUITEM "ë³µì¬(&C)...", MNID_EDIT_COPYDLG
    MENUITEM SEPARATOR
-   MENUITEM "ÁÖ¼®(&A)...", MNID_EDIT_ANNOTATE
+   MENUITEM "주ì(&A)...", MNID_EDIT_ANNOTATE
  }
- POPUP "Ã¥°¥ÇÇ(&B)" {
-   MENUITEM "Á¤ÀÇ(&D)...", MNID_BKMK_DEFINE
+ POPUP "ì±
ê°í¼(&B)" {
+   MENUITEM "ì ì(&D)...", MNID_BKMK_DEFINE
  }
- POPUP "¿É¼Ç(&O)" {
-   POPUP       "°¡´ÉÇÑ µµ¿ò¸» º¸À̱â"
+ POPUP "ìµì
(&O)" {
+   POPUP       "ê°ë¥í ëìë§ ë³´ì´ê¸°"
    BEGIN
-     MENUITEM "񃧯",        MNID_OPTS_HELP_DEFAULT
-     MENUITEM "º¸À̱â",      MNID_OPTS_HELP_VISIBLE
-     MENUITEM "º¸¿©ÁÖÁö ¾Ê±â",       MNID_OPTS_HELP_NONVISIBLE
+     MENUITEM "기본",      MNID_OPTS_HELP_DEFAULT
+     MENUITEM "ë³´ì´ê¸°",   MNID_OPTS_HELP_VISIBLE
+     MENUITEM "ë³´ì¬ì£¼ì§ ì기", MNID_OPTS_HELP_NONVISIBLE
   END
-  MENUITEM "±â·Ï",           MNID_OPTS_HISTORY
-  POPUP    "±Û²Ã"
+  MENUITEM "기ë¡",         MNID_OPTS_HISTORY
+  POPUP    "ê¸ê¼´"
   BEGIN
-    MENUITEM "ÀÛ°Ô",         MNID_OPTS_FONTS_SMALL
-    MENUITEM "º¸Åë",         MNID_OPTS_FONTS_NORMAL
-    MENUITEM "Å©°Ô",         MNID_OPTS_FONTS_LARGE
+    MENUITEM "ìê²",               MNID_OPTS_FONTS_SMALL
+    MENUITEM "ë³´íµ",       MNID_OPTS_FONTS_NORMAL
+    MENUITEM "í¬ê²",       MNID_OPTS_FONTS_LARGE
   END
-  MENUITEM "½Ã½ºÅÛ »ö»ó »ç¿ë",       MNID_OPTS_SYSTEM_COLORS
+  MENUITEM "ìì¤í
 ìì ì¬ì©",  MNID_OPTS_SYSTEM_COLORS
  }
- POPUP "µµ¿ò¸»(&H)" {
-   MENUITEM "µµ¿ò¸» »ç¿ë¹ý(&O)", MNID_HELP_HELPON
-   MENUITEM "Ç×»ó À§(&T)", MNID_HELP_HELPTOP
+ POPUP "ëìë§(&H)" {
+   MENUITEM "ëìë§ ì¬ì©ë²(&O)", MNID_HELP_HELPON
+   MENUITEM "íì ì(&T)", MNID_HELP_HELPTOP
    MENUITEM SEPARATOR
-   MENUITEM "Á¤º¸(&I)...", MNID_HELP_ABOUT
+   MENUITEM "Wine ëìë§ ì ë³´(&I)...", MNID_HELP_ABOUT
  }
 }
@@ -71,7 +73,7 @@
 IDD_INDEX DIALOG 0, 0, 200, 190
 STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
 FONT 9, "MS Shell Dlg"
-CAPTION "À妽º"
+CAPTION "ì¸ë±ì¤"
 {
     LISTBOX IDC_INDEXLIST, 10, 10, 180, 150, LBS_NOINTEGRALHEIGHT | WS_VSCROLL |
WS_BORDER
 }
@@ -79,50 +81,50 @@
 IDD_SEARCH DIALOG 0, 0, 200, 190
 STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
 FONT 9, "MS Shell Dlg"
-CAPTION "ã±â"
+CAPTION "찾기"
 {
-    LTEXT  "¾ÆÁ÷ ±¸ÇöµÇÁö ¾ÊÀ½", -1, 10, 10, 180, 150
+    LTEXT  "ìì§ êµ¬íëì§ ìì", -1, 10, 10, 180, 150
 }
 /* Strings */
 STRINGTABLE
 {
-STID_WINE_HELP,        "Wine µµ¿ò¸»"
-STID_WHERROR,          "¿¡·¯"
-STID_WARNING,                  "°æ°í"
-STID_INFO,             "Á¤º¸"
-STID_NOT_IMPLEMENTED,  "±¸ÇöµÇÁö ¾Ê¾ÒÀ½"
-STID_HLPFILE_ERROR_s,  "µµ¿ò¸» ÆÄÀÏ `%s'¸¦ Àд µµÁß ¿À·ù ¹ß»ý"
-STID_INDEX,            "¸ñÂ÷(&C)"
-STID_CONTENTS,         "¿ä¾à"
-STID_BACK,             "µÚ·Î(&B)"
-STID_ALL_FILES,        "¸ðµç ÆÄÀÏ (*.*)"
-STID_HELP_FILES_HLP,   "µµ¿ò¸» ÆÄÀÏ (*.hlp)"
-STID_FILE_NOT_FOUND_s  "%sÀ» ãÀ» ¼ö ¾ø½À´Ï´Ù'. ÀÌ ÆÄÀÏÀ» Á÷Á¢ ã°Ú½À´Ï±î?"
-STID_NO_RICHEDIT       "richedit  ±¸ÇöÀ» ãÀ»¼ö ¾÷½À´Ï´Ù.. Ãë¼ÒÁß"
-STID_PSH_INDEX,                "µµ¿ò¸» ¸ñÂ÷: "
+STID_WINE_HELP,        "Wine ëìë§"
+STID_WHERROR,          "ìë¬"
+STID_WARNING,                  "경고"
+STID_INFO,             "ì ë³´"
+STID_NOT_IMPLEMENTED,  "구íëì§ ììì"
+STID_HLPFILE_ERROR_s,  "ëìë§ íì¼ `%s'를 ì½ë ëì¤ ì¤ë¥
ë°ì"
+STID_INDEX,            "목차(&C)"
+STID_CONTENTS,         "ìì½"
+STID_BACK,             "ë¤ë¡(&B)"
+STID_ALL_FILES,        "ëª¨ë  íì¼ (*.*)"
+STID_HELP_FILES_HLP,   "ëìë§ íì¼ (*.hlp)"
+STID_FILE_NOT_FOUND_s  "%sì ì°¾ì ì ììµëë¤'. ì´ íì¼ì ì§ì 
찾겠ìµëê¹?"
+STID_NO_RICHEDIT       "richedit  구íì ì°¾ìì ì
ìµëë¤.. ì·¨ìì¤"
+STID_PSH_INDEX,                "ëìë§ ëª©ì°¨: "
 }
 CONTEXT_MENU MENU
 BEGIN
        POPUP ""
        BEGIN
-               MENUITEM "ÁÖ¼®...",       MNID_CTXT_ANNOTATE
-               MENUITEM "º¹»ç",                MNID_CTXT_COPY
-               MENUITEM "Àμâ...",            MNID_CTXT_PRINT
-               POPUP    "±Û²Ã"
+               MENUITEM "주ì...",       MNID_CTXT_ANNOTATE
+               MENUITEM "ë³µì¬",                MNID_CTXT_COPY
+               MENUITEM "ì¸ì...",            MNID_CTXT_PRINT
+               POPUP    "ê¸ê¼´"
                BEGIN
-                       MENUITEM "Á¼°Ô",       MNID_CTXT_FONTS_SMALL
-                       MENUITEM "º¸Åë",      MNID_CTXT_FONTS_NORMAL
-                       MENUITEM "³Ð°Ô",       MNID_CTXT_FONTS_LARGE
+                       MENUITEM "ì¢ê²",       MNID_CTXT_FONTS_SMALL
+                       MENUITEM "ë³´íµ",      MNID_CTXT_FONTS_NORMAL
+                       MENUITEM "ëê²",       MNID_CTXT_FONTS_LARGE
                END
-               POPUP   "µµ¿ò¸»  Ç×»ó º¸À̱â"
+               POPUP   "ëìë§  íì ë³´ì´ê¸°"
                BEGIN
-                       MENUITEM "񃧯",     MNID_CTXT_HELP_DEFAULT
-                       MENUITEM "º¸À̱â",     MNID_CTXT_HELP_VISIBLE
-                       MENUITEM "¾È º¸À̱â", MNID_CTXT_HELP_NONVISIBLE
+                       MENUITEM "기본",     MNID_CTXT_HELP_DEFAULT
+                       MENUITEM "ë³´ì´ê¸°",     MNID_CTXT_HELP_VISIBLE
+                       MENUITEM "ì ë³´ì´ê¸°", MNID_CTXT_HELP_NONVISIBLE
                END
-               MENUITEM "½Ã½ºÅÛ »ö»ó »ç¿ë",   MNID_CTXT_SYSTEM_COLORS
+               MENUITEM "ìì¤í
 ìì ì¬ì©",   MNID_CTXT_SYSTEM_COLORS
        END
 END
Modified: trunk/reactos/base/applications/winhlp32/Zh.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/winhlp32…
==============================================================================
--- trunk/reactos/base/applications/winhlp32/Zh.rc [iso-8859-1] (original)
+++ trunk/reactos/base/applications/winhlp32/Zh.rc [iso-8859-1] Sun Dec 26 16:25:30 2010
@@ -4,6 +4,7 @@
  *
  * Copyright 2002 liuspider <liuspider(a)yahoo.com>
  * Copyright 2008 Hongbo Ni <hongbo.at.njstar.com>
+ * Copyright 2010 Cheer Xiao <xiaqqaix.at.gmail.com>
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -37,7 +38,7 @@
   MENUITEM "æå°(&P)", MNID_FILE_PRINT
   MENUITEM "æå°æºè®¾ç½®(&S)...", MNID_FILE_SETUP
    MENUITEM SEPARATOR
-  MENUITEM "éåº(&E)", MNID_FILE_EXIT
+  MENUITEM "éåº(&X)", MNID_FILE_EXIT
  }
  POPUP "ç¼è¾(&E)" {
    MENUITEM "å¤å¶(&C)...", MNID_EDIT_COPYDLG
@@ -48,7 +49,7 @@
    MENUITEM "å®ä¹(&D)...", MNID_BKMK_DEFINE
  }
  POPUP "é项(&O)" {
-   POPUP       "æ¾ç¤ºå¸®å©"
+   POPUP       "æ»æ¯æ¾ç¤ºå¸®å©"
    BEGIN
      MENUITEM "é»è®¤",      MNID_OPTS_HELP_DEFAULT
      MENUITEM "æ¾ç¤º",      MNID_OPTS_HELP_VISIBLE
@@ -67,8 +68,24 @@
    MENUITEM "å¦ä½ä½¿ç¨å¸®å©(&O)", MNID_HELP_HELPON
    MENUITEM "æ»æ¯å¨æåé¢(&T)", MNID_HELP_HELPTOP
    MENUITEM SEPARATOR
-   MENUITEM "èµæä¿¡æ¯(&I)...", MNID_HELP_ABOUT
+   MENUITEM "å
³äº Wine 帮å©(&I)...", MNID_HELP_ABOUT
  }
+}
+
+IDD_INDEX DIALOG 0, 0, 200, 190
+STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
+FONT 8, "MS Shell Dlg"
+CAPTION "ç´¢å¼"
+{
+    LISTBOX IDC_INDEXLIST, 10, 10, 180, 150, LBS_NOINTEGRALHEIGHT | WS_VSCROLL |
WS_BORDER
+}
+
+IDD_SEARCH DIALOG 0, 0, 200, 190
+STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
+FONT 8, "MS Shell Dlg"
+CAPTION "æç´¢"
+{
+    LTEXT  "å°æªå®ç°", -1, 10, 10, 180, 150
 }
 /* Strings */
@@ -79,16 +96,39 @@
 STID_WARNING,                  "è¦å"
 STID_INFO,             "ä¿¡æ¯"
 STID_NOT_IMPLEMENTED,  "æªå®ç°"
-STID_HLPFILE_ERROR_s,  "读å
¥å¸®å©æä»¶ â%sâ æ¶åçé误"
-STID_INDEX,            "å
容(&C)"
+STID_HLPFILE_ERROR_s,  "读å
¥å¸®å©æä»¶â%sâæ¶åçé误"
+STID_INDEX,            "ç´¢å¼(&I)"
 STID_CONTENTS,         "æ¦è¦"
 STID_BACK,             "è¿å(&B)"
 STID_ALL_FILES,        "æææä»¶ (*.*)"
 STID_HELP_FILES_HLP,   "叮婿件 (*.hlp)"
-STID_FILE_NOT_FOUND_s  "ä¸è½æå¼æä»¶ '%s'.
ä½ æ³è¦èªå·±æ¾è¿ä¸ªæä»¶å?"
-STID_NO_RICHEDIT       "æ¾ä¸å° richedit... ç»æ¢"
-STID_PSH_INDEX,                "帮å©å
容: "
+STID_FILE_NOT_FOUND_s  "æ¾ä¸å°æä»¶â%sâã
ä½ æ³è¦èªå·±æ¾è¿ä¸ªæä»¶åï¼"
+STID_NO_RICHEDIT       "æ¾ä¸å° richedit çå®ç°â¦â¦ç»æ¢"
+STID_PSH_INDEX,                "帮å©ä¸»é¢ï¼"
 }
+
+CONTEXT_MENU MENU
+BEGIN
+       POPUP ""
+       BEGIN
+               MENUITEM "注é...",       MNID_CTXT_ANNOTATE
+               MENUITEM "å¤å¶",          MNID_CTXT_COPY
+               MENUITEM "æå°...",       MNID_CTXT_PRINT
+               POPUP    "åä½"
+               BEGIN
+                       MENUITEM "å°å·",      MNID_CTXT_FONTS_SMALL
+                       MENUITEM "ä¸å·",      MNID_CTXT_FONTS_NORMAL
+                       MENUITEM "大å·",      MNID_CTXT_FONTS_LARGE
+               END
+               POPUP   "æ»æ¯æ¾ç¤ºå¸®å©"
+               BEGIN
+                       MENUITEM "é»è®¤",     MNID_CTXT_HELP_DEFAULT
+                       MENUITEM "æ¾ç¤º",     MNID_CTXT_HELP_VISIBLE
+                       MENUITEM "䏿¾ç¤º", MNID_CTXT_HELP_NONVISIBLE
+               END
+               MENUITEM "使ç¨ç³»ç»é¢è²",   MNID_CTXT_SYSTEM_COLORS
+       END
+END
 LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL
Modified: trunk/reactos/base/applications/winhlp32/rsrc.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/winhlp32…
==============================================================================
--- trunk/reactos/base/applications/winhlp32/rsrc.rc [iso-8859-1] (original)
+++ trunk/reactos/base/applications/winhlp32/rsrc.rc [iso-8859-1] Sun Dec 26 16:25:30 2010
@@ -30,7 +30,6 @@
 #include "Es.rc"
 #include "Fi.rc"
 #include "Hu.rc"
-#include "Ko.rc"
 #include "No.rc"
 #include "Pl.rc"
 #include "Sk.rc"
@@ -44,6 +43,7 @@
 #include "He.rc"
 #include "It.rc"
 #include "Ja.rc"
+#include "Ko.rc"
 #include "Lt.rc"
 #include "Nl.rc"
 #include "Pt.rc"
Modified: trunk/reactos/base/applications/wordpad/Zh.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/wordpad/…
==============================================================================
--- trunk/reactos/base/applications/wordpad/Zh.rc [iso-8859-1] (original)
+++ trunk/reactos/base/applications/wordpad/Zh.rc [iso-8859-1] Sun Dec 26 16:25:30 2010
@@ -61,7 +61,7 @@
         MENUITEM SEPARATOR
         POPUP "å
¶ä»(&X)"
         BEGIN
-            MENUITEM "éä¸ä¿¡æ¯(&I)", ID_EDIT_SELECTIONINFO
+            MENUITEM "éä¸ä¿¡æ¯(&I)", ID_EDIT_SELECTIONINFO /*
åç¡®æ§å¾
è®® */
             MENUITEM "æåæ ¼å¼(&F)", ID_EDIT_CHARFORMAT
             MENUITEM "é»è®¤æ ¼å¼(&D)", ID_EDIT_DEFCHARFORMAT
             MENUITEM "æ®µè½æ ¼å¼(&H)", ID_EDIT_PARAFORMAT
@@ -118,7 +118,7 @@
     BEGIN
         MENUITEM "é»è²",      ID_COLOR_BLACK /*
æªæ¾å°âæ åè¯å表â */
         MENUITEM "æ è²",     ID_COLOR_MAROON
-        MENUITEM "è°å绿",      ID_COLOR_GREEN
+        MENUITEM "绿è²",      ID_COLOR_GREEN
         MENUITEM "æ©æ¦è²"       ID_COLOR_OLIVE
         MENUITEM "èé"        ID_COLOR_NAVY
         MENUITEM "ç´«è²"      ID_COLOR_PURPLE
@@ -126,7 +126,7 @@
         MENUITEM "ç°è²"        ID_COLOR_GRAY
         MENUITEM "é¶è²"      ID_COLOR_SILVER
         MENUITEM "红è²"         ID_COLOR_RED
-        MENUITEM "绿è²"        ID_COLOR_LIME
+        MENUITEM "éæ è²"        ID_COLOR_LIME
         MENUITEM "é»è²"      ID_COLOR_YELLOW
         MENUITEM "èè²"        ID_COLOR_BLUE
         MENUITEM "æ´çº¢"     ID_COLOR_FUCHSIA /* =magenta? */
Modified: trunk/reactos/base/applications/wordpad/wordpad.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/wordpad/…
==============================================================================
--- trunk/reactos/base/applications/wordpad/wordpad.c [iso-8859-1] (original)
+++ trunk/reactos/base/applications/wordpad/wordpad.c [iso-8859-1] Sun Dec 26 16:25:30
2010
@@ -162,7 +162,7 @@
     button.iBitmap = nImage;
     button.idCommand = nCommand;
     button.fsState = TBSTATE_ENABLED;
-    button.fsStyle = TBSTYLE_BUTTON;
+    button.fsStyle = BTNS_BUTTON;
     button.dwData = 0;
     button.iString = -1;
     SendMessageW(hwndToolBar, TB_ADDBUTTONSW, 1, (LPARAM)&button);
@@ -176,7 +176,7 @@
     button.iBitmap = -1;
     button.idCommand = 0;
     button.fsState = 0;
-    button.fsStyle = TBSTYLE_SEP;
+    button.fsStyle = BTNS_SEP;
     button.dwData = 0;
     button.iString = -1;
     SendMessageW(hwndToolBar, TB_ADDBUTTONSW, 1, (LPARAM)&button);
@@ -1818,7 +1818,7 @@
     if(!SendMessageW(hReBarWnd, RB_SETBARINFO, 0, (LPARAM)&rbi))
         return -1;
-    hToolBarWnd = CreateToolbarEx(hReBarWnd,
CCS_NOPARENTALIGN|CCS_NOMOVEY|WS_VISIBLE|WS_CHILD|TBSTYLE_TOOLTIPS|TBSTYLE_BUTTON,
+    hToolBarWnd = CreateToolbarEx(hReBarWnd,
CCS_NOPARENTALIGN|CCS_NOMOVEY|WS_VISIBLE|WS_CHILD|TBSTYLE_TOOLTIPS|BTNS_BUTTON,
       IDC_TOOLBAR,
       1, hInstance, IDB_TOOLBAR,
       NULL, 0,
@@ -1880,7 +1880,7 @@
     SendMessageW(hReBarWnd, RB_INSERTBAND, -1, (LPARAM)&rbb);
     hFormatBarWnd = CreateToolbarEx(hReBarWnd,
-         CCS_NOPARENTALIGN | CCS_NOMOVEY | WS_VISIBLE | TBSTYLE_TOOLTIPS |
TBSTYLE_BUTTON,
+         CCS_NOPARENTALIGN | CCS_NOMOVEY | WS_VISIBLE | TBSTYLE_TOOLTIPS | BTNS_BUTTON,
          IDC_FORMATBAR, 8, hInstance, IDB_FORMATBAR, NULL, 0, 16, 16, 16, 16,
sizeof(TBBUTTON));
     AddButton(hFormatBarWnd, 0, ID_FORMAT_BOLD);
Added: trunk/reactos/base/applications/write/Sr.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/write/Sr…
==============================================================================
--- trunk/reactos/base/applications/write/Sr.rc (added)
+++ trunk/reactos/base/applications/write/Sr.rc [iso-8859-1] Sun Dec 26 16:25:30 2010
@@ -1,0 +1,38 @@
+/*
+ * Serbian language support
+ *
+ * Copyright (C) 2007 Mikolaj Zalewski
+ * Copyright 2010 ÄorÄe VasiljeviÄ
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#include "resources.h"
+
+#pragma code_page(65001)
+
+LANGUAGE LANG_SERBIAN, SUBLANG_SERBIAN_CYRILLIC
+
+STRINGTABLE
+{
+    IDS_FAILED, "ÐокÑеÑаÑе ÐиÑанке ниÑе ÑÑпело"
+}
+
+LANGUAGE LANG_SERBIAN, SUBLANG_SERBIAN_LATIN
+
+STRINGTABLE
+{
+    IDS_FAILED, "Pokretanje Pisanke nije uspelo"
+}
Propchange: trunk/reactos/base/applications/write/Sr.rc
------------------------------------------------------------------------------
    svn:eol-style = native
Added: trunk/reactos/base/applications/write/Zh.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/write/Zh…
==============================================================================
--- trunk/reactos/base/applications/write/Zh.rc (added)
+++ trunk/reactos/base/applications/write/Zh.rc [iso-8859-1] Sun Dec 26 16:25:30 2010
@@ -1,0 +1,31 @@
+/*
+ * Simplified Chinese language support
+ *
+ * Copyright (C) 2010 Cheer Xiao <xiaqqaix.at.gmail.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#include "resources.h"
+
+/* Chinese text is encoded in UTF-8 */
+#pragma code_page(65001)
+
+LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
+
+STRINGTABLE
+{
+    IDS_FAILED, "å¯å¨ååæ¿å¤±è´¥"
+}
Propchange: trunk/reactos/base/applications/write/Zh.rc
------------------------------------------------------------------------------
    svn:eol-style = native
Modified: trunk/reactos/base/applications/write/rsrc.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/write/rs…
==============================================================================
--- trunk/reactos/base/applications/write/rsrc.rc [iso-8859-1] (original)
+++ trunk/reactos/base/applications/write/rsrc.rc [iso-8859-1] Sun Dec 26 16:25:30 2010
@@ -39,4 +39,6 @@
 #include "Ro.rc"
 #include "Ru.rc"
 #include "Si.rc"
+#include "Sr.rc"
 #include "Uk.rc"
+#include "Zh.rc"