2 added + 9 modified, total 11 files
reactos/include/wine
diff -u -r1.5 -r1.6
--- shlwapi.h 28 Jan 2004 21:57:41 -0000 1.5
+++ shlwapi.h 14 Aug 2004 20:24:41 -0000 1.6
@@ -53,6 +53,44 @@
#define URL_UNESCAPE_HIGH_ANSI_ONLY 0x00400000
#define URL_UNESCAPE_INPLACE 0x00100000
+#define OS_WIN32SORGREATER 0x00
+#define OS_NT 0x01
+#define OS_WIN95ORGREATER 0x02
+#define OS_NT4ORGREATER 0x03
+#define OS_WIN2000ORGREATER_ALT 0x04
+#define OS_WIN98ORGREATER 0x05
+#define OS_WIN98_GOLD 0x06
+#define OS_WIN2000ORGREATER 0x07
+#define OS_WIN2000PRO 0x08
+#define OS_WIN2000SERVER 0x09
+#define OS_WIN2000ADVSERVER 0x0A
+#define OS_WIN2000DATACENTER 0x0B
+#define OS_WIN2000TERMINAL 0x0C
+#define OS_EMBEDDED 0x0D
+#define OS_TERMINALCLIENT 0x0E
+#define OS_TERMINALREMOTEADMIN 0x0F
+#define OS_WIN95_GOLD 0x10
+#define OS_MEORGREATER 0x11
+#define OS_XPORGREATER 0x12
+#define OS_HOME 0x13
+#define OS_PROFESSIONAL 0x14
+#define OS_DATACENTER 0x15
+#define OS_ADVSERVER 0x16
+#define OS_SERVER 0x17
+#define OS_TERMINALSERVER 0x18
+#define OS_PERSONALTERMINALSERVER 0x19
+#define OS_FASTUSERSWITCHING 0x1A
+#define OS_WELCOMELOGONUI 0x1B
+#define OS_DOMAINMEMBER 0x1C
+#define OS_ANYSERVER 0x1D
+#define OS_WOW6432 0x1E
+#define OS_WEBSERVER 0x1F
+#define OS_SMALLBUSINESSSERVER 0x20
+#define OS_TABLETPC 0x21
+#define OS_SERVERADMINUI 0x22
+#define OS_MEDIACENTER 0x23
+#define OS_APPLIANCE 0x24
+
#ifndef RC_INVOKED
#include <pshpack1.h>
typedef struct _DllVersionInfo
@@ -140,6 +178,7 @@
#define IntlStrEqNIW(pStr1, pStr2, nChar) IntlStrEqWorkerW(FALSE, pStr1, pStr2, nChar);
WINSHLWAPI BOOL WINAPI IntlStrEqWorkerA(BOOL,LPCSTR,LPCSTR,int);
WINSHLWAPI BOOL WINAPI IntlStrEqWorkerW(BOOL,LPCWSTR,LPCWSTR,int);
+WINSHLWAPI BOOL WINAPI IsOS(DWORD);
WINSHLWAPI HRESULT WINAPI SHStrDupA(LPCSTR,LPWSTR*);
WINSHLWAPI HRESULT WINAPI SHStrDupW(LPCWSTR,LPWSTR*);
WINSHLWAPI LPSTR WINAPI StrCatA(LPSTR,LPCSTR);
reactos/w32api/include
diff -u -r1.1 -r1.2
--- shlwapi.h 21 Feb 2004 09:20:34 -0000 1.1
+++ shlwapi.h 14 Aug 2004 20:24:41 -0000 1.2
@@ -33,6 +33,44 @@
#define URL_UNESCAPE_HIGH_ANSI_ONLY 0x00400000
#define URL_UNESCAPE_INPLACE 0x00100000
+#define OS_WIN32SORGREATER 0x00
+#define OS_NT 0x01
+#define OS_WIN95ORGREATER 0x02
+#define OS_NT4ORGREATER 0x03
+#define OS_WIN2000ORGREATER_ALT 0x04
+#define OS_WIN98ORGREATER 0x05
+#define OS_WIN98_GOLD 0x06
+#define OS_WIN2000ORGREATER 0x07
+#define OS_WIN2000PRO 0x08
+#define OS_WIN2000SERVER 0x09
+#define OS_WIN2000ADVSERVER 0x0A
+#define OS_WIN2000DATACENTER 0x0B
+#define OS_WIN2000TERMINAL 0x0C
+#define OS_EMBEDDED 0x0D
+#define OS_TERMINALCLIENT 0x0E
+#define OS_TERMINALREMOTEADMIN 0x0F
+#define OS_WIN95_GOLD 0x10
+#define OS_MEORGREATER 0x11
+#define OS_XPORGREATER 0x12
+#define OS_HOME 0x13
+#define OS_PROFESSIONAL 0x14
+#define OS_DATACENTER 0x15
+#define OS_ADVSERVER 0x16
+#define OS_SERVER 0x17
+#define OS_TERMINALSERVER 0x18
+#define OS_PERSONALTERMINALSERVER 0x19
+#define OS_FASTUSERSWITCHING 0x1A
+#define OS_WELCOMELOGONUI 0x1B
+#define OS_DOMAINMEMBER 0x1C
+#define OS_ANYSERVER 0x1D
+#define OS_WOW6432 0x1E
+#define OS_WEBSERVER 0x1F
+#define OS_SMALLBUSINESSSERVER 0x20
+#define OS_TABLETPC 0x21
+#define OS_SERVERADMINUI 0x22
+#define OS_MEDIACENTER 0x23
+#define OS_APPLIANCE 0x24
+
#ifndef RC_INVOKED
#include <pshpack1.h>
typedef struct _DllVersionInfo
@@ -120,6 +158,7 @@
#define IntlStrEqNIW(pStr1, pStr2, nChar) IntlStrEqWorkerW(FALSE, pStr1, pStr2, nChar);
WINSHLWAPI BOOL WINAPI IntlStrEqWorkerA(BOOL,LPCSTR,LPCSTR,int);
WINSHLWAPI BOOL WINAPI IntlStrEqWorkerW(BOOL,LPCWSTR,LPCWSTR,int);
+WINSHLWAPI BOOL WINAPI IsOS(DWORD);
WINSHLWAPI HRESULT WINAPI SHStrDupA(LPCSTR,LPWSTR*);
WINSHLWAPI HRESULT WINAPI SHStrDupW(LPCWSTR,LPWSTR*);
WINSHLWAPI LPSTR WINAPI StrCatA(LPSTR,LPCSTR);
reactos/lib/shlwapi
diff -N shlwapi_It.rc
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ shlwapi_It.rc 14 Aug 2004 20:24:42 -0000 1.1
@@ -0,0 +1,35 @@
+/*
+ * Italian resources for shlwapi
+ *
+ * Copyright 2004 Ivan Leo Puoti
+ *
+ * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+LANGUAGE LANG_ITALIAN, SUBLANG_DEFAULT
+
+IDD_ERR_DIALOG DIALOG MOVEABLE DISCARDABLE 0, 0, 220, 60
+STYLE DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
+CAPTION "Errore!"
+FONT 8, "MS Shell Dlg"
+{
+ LTEXT "", IDS_ERR_USER_MSG2, 15, 5, 28, 20
+ LTEXT "", IDS_ERR_USER_MSG, 15, 5, 210, 8
+ CHECKBOX "Non mostrare nuovamente &questo messaggio", IDC_ERR_DONT_SHOW, 5, 20, 210, 10, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
+ PUSHBUTTON L"&OK" IDOK, 105, 40, 50, 14, WS_GROUP | WS_TABSTOP
+ PUSHBUTTON L"&Annulla" IDCANCEL, 160, 40, 50, 14, WS_GROUP | WS_TABSTOP
+ PUSHBUTTON L"&Si" IDYES, 105, 40, 50, 14, WS_GROUP | WS_TABSTOP
+ PUSHBUTTON L"&No" IDNO, 160, 40, 50, 14, WS_GROUP | WS_TABSTOP
+}
reactos/lib/shlwapi
diff -N shlwapi_Pt.rc
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ shlwapi_Pt.rc 14 Aug 2004 20:24:42 -0000 1.1
@@ -0,0 +1,35 @@
+/*
+ * Portuguese resources for shlwapi
+ *
+ * Copyright 2004 Marcelo Duarte
+ *
+ * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+LANGUAGE LANG_PORTUGUESE, SUBLANG_DEFAULT
+
+IDD_ERR_DIALOG DIALOG MOVEABLE DISCARDABLE 0, 0, 220, 60
+STYLE DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
+CAPTION "Erro!"
+FONT 8, "MS Shell Dlg"
+{
+ LTEXT "", IDS_ERR_USER_MSG2, 15, 5, 28, 20
+ LTEXT "", IDS_ERR_USER_MSG, 15, 5, 210, 8
+ CHECKBOX "N��o &me mostre essa mensagem novamente", IDC_ERR_DONT_SHOW, 5, 20, 210, 10, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
+ PUSHBUTTON L"&OK" IDOK, 105, 40, 50, 14, WS_GROUP | WS_TABSTOP
+ PUSHBUTTON L"&Cancelar" IDCANCEL, 160, 40, 50, 14, WS_GROUP | WS_TABSTOP
+ PUSHBUTTON L"&Sim" IDYES, 105, 40, 50, 14, WS_GROUP | WS_TABSTOP
+ PUSHBUTTON L"&N��o" IDNO, 160, 40, 50, 14, WS_GROUP | WS_TABSTOP
+}
reactos/lib/shlwapi
diff -u -r1.6 -r1.7
--- assoc.c 8 Aug 2004 21:15:48 -0000 1.6
+++ assoc.c 14 Aug 2004 20:24:41 -0000 1.7
@@ -58,13 +58,13 @@
typedef struct
{
- ICOM_VFIELD(IQueryAssociations);
+ IQueryAssociationsVtbl *lpVtbl;
LONG ref;
HKEY hkeySource;
HKEY hkeyProgID;
} IQueryAssociationsImpl;
-static struct ICOM_VTABLE(IQueryAssociations) IQueryAssociations_vtbl;
+static struct IQueryAssociationsVtbl IQueryAssociations_vtbl;
/**************************************************************************
* IQueryAssociations_Constructor [internal]
@@ -691,7 +691,7 @@
return E_NOTIMPL;
}
-static struct ICOM_VTABLE(IQueryAssociations) IQueryAssociations_vtbl =
+static struct IQueryAssociationsVtbl IQueryAssociations_vtbl =
{
ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
IQueryAssociations_fnQueryInterface,
reactos/lib/shlwapi
diff -u -r1.6 -r1.7
--- istream.c 28 Jan 2004 21:57:41 -0000 1.6
+++ istream.c 14 Aug 2004 20:24:41 -0000 1.7
@@ -36,7 +36,7 @@
/* Layout of ISHFileStream object */
typedef struct
{
- ICOM_VFIELD(IStream);
+ IStreamVtbl *lpVtbl;
ULONG ref;
HANDLE hFile;
DWORD dwMode;
@@ -320,7 +320,7 @@
return E_NOTIMPL;
}
-static struct ICOM_VTABLE(IStream) SHLWAPI_fsVTable =
+static struct IStreamVtbl SHLWAPI_fsVTable =
{
ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
IStream_fnQueryInterface,
reactos/lib/shlwapi
diff -u -r1.10 -r1.11
--- ordinal.c 8 Aug 2004 21:15:48 -0000 1.10
+++ ordinal.c 14 Aug 2004 20:24:41 -0000 1.11
@@ -28,8 +28,10 @@
#include <stdio.h>
#include <string.h>
+#define COBJMACROS
#define NONAMELESSUNION
#define NONAMELESSSTRUCT
+
#include "windef.h"
#include "winbase.h"
#include "winuser.h"
@@ -47,6 +49,7 @@
#include "winreg.h"
#include "wine/debug.h"
#include "shlwapi.h"
+#include "winnt.h"
WINE_DEFAULT_DEBUG_CHANNEL(shell);
@@ -3657,12 +3660,118 @@
* TRUE If the feature is available.
* FALSE If the feature is not available.
*/
-DWORD WINAPI IsOS(DWORD feature)
+BOOL WINAPI IsOS(DWORD feature)
{
- FIXME("(0x%08lx) stub\n", feature);
- if (feature == 4)
- return TRUE;
- return FALSE;
+ OSVERSIONINFOA osvi;
+ DWORD platform, majorv, minorv;
+
+ osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFOA);
+ if(!GetVersionExA(&osvi)) {
+ ERR("GetVersionEx failed");
+ return FALSE;
+ }
+
+ majorv = osvi.dwMajorVersion;
+ minorv = osvi.dwMinorVersion;
+ platform = osvi.dwPlatformId;
+
+#define ISOS_RETURN(x) \
+ TRACE("(0x%lx) ret=%d\n",feature,(x)); \
+ return (x);
+
+ switch(feature) {
+ case OS_WIN32SORGREATER:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32s
+ || platform == VER_PLATFORM_WIN32_WINDOWS)
+ case OS_NT:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_NT)
+ case OS_WIN95ORGREATER:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_WINDOWS)
+ case OS_NT4ORGREATER:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_NT && majorv >= 4)
+ case OS_WIN2000ORGREATER_ALT:
+ case OS_WIN2000ORGREATER:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_NT && majorv >= 5)
+ case OS_WIN98ORGREATER:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_WINDOWS && minorv >= 10)
+ case OS_WIN98_GOLD:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_WINDOWS && minorv == 10)
+ case OS_WIN2000PRO:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_NT && majorv >= 5)
+ case OS_WIN2000SERVER:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_NT && (minorv == 0 || minorv == 1))
+ case OS_WIN2000ADVSERVER:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_NT && (minorv == 0 || minorv == 1))
+ case OS_WIN2000DATACENTER:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_NT && (minorv == 0 || minorv == 1))
+ case OS_WIN2000TERMINAL:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_NT && (minorv == 0 || minorv == 1))
+ case OS_EMBEDDED:
+ FIXME("(OS_EMBEDDED) What should we return here?\n");
+ return FALSE;
+ case OS_TERMINALCLIENT:
+ FIXME("(OS_TERMINALCLIENT) What should we return here?\n");
+ return FALSE;
+ case OS_TERMINALREMOTEADMIN:
+ FIXME("(OS_TERMINALREMOTEADMIN) What should we return here?\n");
+ return FALSE;
+ case OS_WIN95_GOLD:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_WINDOWS && minorv == 0)
+ case OS_MEORGREATER:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_WINDOWS && minorv >= 90)
+ case OS_XPORGREATER:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_NT && majorv >= 5 && minorv >= 1)
+ case OS_HOME:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_NT && majorv >= 5 && minorv >= 1)
+ case OS_PROFESSIONAL:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_NT)
+ case OS_DATACENTER:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_NT)
+ case OS_ADVSERVER:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_NT && majorv >= 5)
+ case OS_SERVER:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_NT)
+ case OS_TERMINALSERVER:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_NT)
+ case OS_PERSONALTERMINALSERVER:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_NT && minorv >= 1 && majorv >= 5)
+ case OS_FASTUSERSWITCHING:
+ FIXME("(OS_FASTUSERSWITCHING) What should we return here?\n");
+ return TRUE;
+ case OS_WELCOMELOGONUI:
+ FIXME("(OS_WELCOMELOGONUI) What should we return here?\n");
+ return FALSE;
+ case OS_DOMAINMEMBER:
+ FIXME("(OS_DOMAINMEMBER) What should we return here?\n");
+ return TRUE;
+ case OS_ANYSERVER:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_NT)
+ case OS_WOW6432:
+ FIXME("(OS_WOW6432) Should we check this?\n");
+ return FALSE;
+ case OS_WEBSERVER:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_NT)
+ case OS_SMALLBUSINESSSERVER:
+ ISOS_RETURN(platform == VER_PLATFORM_WIN32_NT)
+ case OS_TABLETPC:
+ FIXME("(OS_TABLEPC) What should we return here?\n");
+ return FALSE;
+ case OS_SERVERADMINUI:
+ FIXME("(OS_SERVERADMINUI) What should we return here?\n");
+ return FALSE;
+ case OS_MEDIACENTER:
+ FIXME("(OS_MEDIACENTER) What should we return here?\n");
+ return FALSE;
+ case OS_APPLIANCE:
+ FIXME("(OS_APPLIANCE) What should we return here?\n");
+ return FALSE;
+ }
+
+#undef ISOS_RETURN
+
+ WARN("(0x%lx) unknown parameter\n",feature);
+
+ return FALSE;
}
/*************************************************************************
reactos/lib/shlwapi
diff -u -r1.2 -r1.3
--- regstream.c 2 Jan 2004 19:49:46 -0000 1.2
+++ regstream.c 14 Aug 2004 20:24:42 -0000 1.3
@@ -33,7 +33,7 @@
WINE_DEFAULT_DEBUG_CHANNEL(shell);
typedef struct
-{ ICOM_VFIELD(IStream);
+{ IStreamVtbl *lpVtbl;
DWORD ref;
HKEY hKey;
LPBYTE pbBuffer;
@@ -251,7 +251,7 @@
return E_NOTIMPL;
}
-static struct ICOM_VTABLE(IStream) rstvt =
+static struct IStreamVtbl rstvt =
{
ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
IStream_fnQueryInterface,
@@ -302,7 +302,7 @@
return E_NOTIMPL;
}
-static struct ICOM_VTABLE(IStream) DummyRegStreamVTable =
+static struct IStreamVtbl DummyRegStreamVTable =
{
ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
IStream_fnQueryInterface,
reactos/lib/shlwapi
diff -u -r1.2 -r1.3
--- shlwapi.rc 8 Aug 2004 21:15:48 -0000 1.2
+++ shlwapi.rc 14 Aug 2004 20:24:42 -0000 1.3
@@ -26,4 +26,6 @@
#include "shlwapi_De.rc"
#include "shlwapi_En.rc"
#include "shlwapi_Es.rc"
+#include "shlwapi_It.rc"
#include "shlwapi_Ja.rc"
+#include "shlwapi_Pt.rc"
reactos/lib/shlwapi
diff -u -r1.8 -r1.9
--- shlwapi.spec 8 Aug 2004 21:15:48 -0000 1.8
+++ shlwapi.spec 14 Aug 2004 20:24:42 -0000 1.9
@@ -456,8 +456,8 @@
456 stub -noname PathIsValidCharW
457 stub -noname GetLongPathNameWrapW
458 stub -noname GetLongPathNameWrapA
-459 stub -noname SHExpandEnvironmentStringsA
-460 stub -noname SHExpandEnvironmentStringsW
+459 stdcall -noname SHExpandEnvironmentStringsA(str ptr long) kernel32.ExpandEnvironmentStringsA
+460 stdcall -noname SHExpandEnvironmentStringsW(wstr ptr long) kernel32.ExpandEnvironmentStringsW
461 stdcall -noname SHGetAppCompatFlags()
462 stub -noname UrlFixupW
463 stub -noname SHExpandEnvironmentStringsForUserA
reactos/lib/shlwapi
diff -u -r1.8 -r1.9
--- string.c 8 May 2004 13:49:05 -0000 1.8
+++ string.c 14 Aug 2004 20:24:42 -0000 1.9
@@ -2051,24 +2051,18 @@
BOOL WINAPI StrIsIntlEqualA(BOOL bCase, LPCSTR lpszStr, LPCSTR lpszComp,
int iLen)
{
- DWORD dwFlags = LOCALE_USE_CP_ACP;
- int iRet;
+ DWORD dwFlags;
TRACE("(%d,%s,%s,%d)\n", bCase,
debugstr_a(lpszStr), debugstr_a(lpszComp), iLen);
- /* FIXME: These flags are undocumented and unknown by our CompareString.
- * We need defines for them.
+ /* FIXME: This flag is undocumented and unknown by our CompareString.
+ * We need a define for it.
*/
- dwFlags |= bCase ? 0x10000000 : 0x10000001;
-
- iRet = CompareStringA(GetThreadLocale(),
- dwFlags, lpszStr, iLen, lpszComp, iLen);
-
- if (!iRet)
- iRet = CompareStringA(2048, dwFlags, lpszStr, iLen, lpszComp, iLen);
+ dwFlags = 0x10000000;
+ if (!bCase) dwFlags |= NORM_IGNORECASE;
- return iRet == 2 ? TRUE : FALSE;
+ return (CompareStringA(GetThreadLocale(), dwFlags, lpszStr, iLen, lpszComp, iLen) == CSTR_EQUAL);
}
/*************************************************************************
@@ -2080,23 +2074,17 @@
int iLen)
{
DWORD dwFlags;
- int iRet;
TRACE("(%d,%s,%s,%d)\n", bCase,
debugstr_w(lpszStr),debugstr_w(lpszComp), iLen);
- /* FIXME: These flags are undocumented and unknown by our CompareString.
- * We need defines for them.
+ /* FIXME: This flag is undocumented and unknown by our CompareString.
+ * We need a define for it.
*/
- dwFlags = bCase ? 0x10000000 : 0x10000001;
-
- iRet = CompareStringW(GetThreadLocale(),
- dwFlags, lpszStr, iLen, lpszComp, iLen);
-
- if (!iRet)
- iRet = CompareStringW(2048, dwFlags, lpszStr, iLen, lpszComp, iLen);
+ dwFlags = 0x10000000;
+ if (!bCase) dwFlags |= NORM_IGNORECASE;
- return iRet == 2 ? TRUE : FALSE;
+ return (CompareStringW(GetThreadLocale(), dwFlags, lpszStr, iLen, lpszComp, iLen) == CSTR_EQUAL);
}
/*************************************************************************
CVSspam 0.2.8