- Implement AddCommasW

- Implement SHLocalAlloc
- Implement SHLocalFree
- Implement SHLocalReAlloc
explorer-new starts in reactos now!

svn path=/trunk/; revision=33953
This commit is contained in:
Dmitry Chapyshev 2008-06-13 07:58:34 +00:00
parent a21b191fdf
commit 756f63990f
2 changed files with 71 additions and 4 deletions

View file

@ -189,10 +189,10 @@
197 stub -noname SHGlobalDefect 197 stub -noname SHGlobalDefect
198 stdcall -noname SHAbortInvokeCommand() 198 stdcall -noname SHAbortInvokeCommand()
199 stub SHGetFileIcon 199 stub SHGetFileIcon
200 stub SHLocalAlloc 200 stdcall SHLocalAlloc(long long)
201 stub SHLocalFree 201 stdcall SHLocalFree(ptr)
202 stub SHLocalReAlloc 202 stdcall SHLocalReAlloc(ptr long long)
203 stub AddCommasW 203 stdcall AddCommasW(long str)
204 stub ShortSizeFormatW 204 stub ShortSizeFormatW
205 stdcall Printer_LoadIconsW(wstr ptr ptr) 205 stdcall Printer_LoadIconsW(wstr ptr ptr)
206 stub Link_AddExtraDataSection 206 stub Link_AddExtraDataSection

View file

@ -843,6 +843,73 @@ VOID WINAPI Printers_UnregisterWindow(HANDLE hClassPidl, HWND hwnd)
/*************************************************************************/ /*************************************************************************/
/*************************************************************************
* AddCommasW [SHELL32.203]
*/
LPWSTR WINAPI AddCommasW(DWORD lValue, LPWSTR szRet)
{
WCHAR szValue[MAX_PATH], szSeparator[8 + 1];
NUMBERFMTW numFormat;
LCID lcid = GetUserDefaultLCID();
GetLocaleInfoW(lcid,
LOCALE_STHOUSAND,
szSeparator,
8 + 1);
numFormat.NumDigits = 0;
numFormat.LeadingZero = 0;
numFormat.Grouping = 0;
numFormat.lpDecimalSep = szSeparator;
numFormat.lpThousandSep = szSeparator;
numFormat.NegativeOrder = 0;
swprintf(szValue, L"%llu", lValue);
//_ultow(lValue, szValue, 16);
if (GetNumberFormatW(lcid,
0,
szValue,
&numFormat,
szRet,
wcslen(szRet)) != 0)
{
return szRet;
}
wcscpy(szRet, szValue);
return szRet;
}
/*************************************************************************
* SHLocalAlloc [SHELL32.200]
*/
HLOCAL WINAPI SHLocalAlloc(UINT uFlags, SIZE_T uBytes)
{
return LocalAlloc(uFlags, uBytes);
}
/*************************************************************************
* SHLocalFree [SHELL32.201]
*/
HLOCAL WINAPI SHLocalFree(HLOCAL hMem)
{
return LocalFree(hMem);
}
/*************************************************************************
* SHLocalAlloc [SHELL32.202]
*/
HLOCAL WINAPI SHLocalReAlloc(HLOCAL hMem, SIZE_T uBytes, UINT uFlags)
{
return LocalReAlloc(hMem, uBytes, uFlags);
}
/*************************************************************************/
typedef struct typedef struct
{ {
LPCWSTR szApp; LPCWSTR szApp;