@msdn=http://search.microsoft.com/search/results.aspx?qu=$$$ @pinvoke=http://pinvoke.net/$$$.htm Summary: TODO - a short description !!!!C# Signature: [DllImport("kernel32.dll", CharSet = CharSet.Unicode, SetLastError = true)] static extern int LCMapStringEx( string lpLocaleName, // LPCWSTR lpLocaleName uint dwMapFlags, // DWORD dwMapFlags string lpSrcStr, // LPCWSTR lpSrcStr int cchSrc, // int cchSrc [Out] IntPtr lpDestStr, // LPWSTR lpDestStr int cchDest, // int cchDest IntPtr lpVersionInformation, // LPNLSVERSIONINFO lpVersionInformation IntPtr lpReserved, // LPVOID lpReserved IntPtr sortHandle); // LPARAM sortHandle !!!!VB Signature: Declare Function LCMapStringEx Lib "kernel32.dll" (TODO) As TODO !!!!User-Defined Types: None. !!!!Alternative Managed API: Do you know one? Please contribute it! !!!!Notes: if designed to run only on Windows Vista and later. lpVersionInformation must be null. lpReserved must be null. sortHandle must be zero. !!!!Tips & Tricks: Please add some! !!!!Sample Code: public static string ToLower(string src) { string nResult = src; int nLen, nSize; uint dwMapFlags = LCMAP_LOWERCASE; IntPtr ptr, pZero = IntPtr.Zero; nLen = src.Length; nSize = LCMapStringEx(LOCALE_NAME_SYSTEM_DEFAULT, dwMapFlags, src, nLen, IntPtr.Zero, 0, pZero, pZero, pZero); if (nSize > 0) { nSize = nSize * sizeof(char); ptr = Marshal.AllocHGlobal(nSize); try { nSize = LCMapStringEx(LOCALE_NAME_SYSTEM_DEFAULT, dwMapFlags, src, nLen, ptr, nSize, pZero, pZero, pZero); if (nSize > 0) nResult = Marshal.PtrToStringUni(ptr, nSize); } finally { Marshal.FreeHGlobal(ptr); } } return nResult; } Documentation: LCMapStringEx@msdn on MSDN
Edit kernel32.LCMapString
You do not have permission to change this page. If you feel this is in error, please send feedback with the contact link on the main page.