Index: dll/win32/kernel32/misc/lang.c =================================================================== --- dll/win32/kernel32/misc/lang.c (revision 48922) +++ dll/win32/kernel32/misc/lang.c (working copy) @@ -1412,6 +1412,43 @@ /* * @unimplemented */ +BOOL +WINAPI +GetFileMUIInfo( + DWORD dwFlags, + PCWSTR pcwszFilePath, + PFILEMUIINFO pFileMUIInfo, + DWORD *pcbFileMUIInfo) +{ + DPRINT("%x %p %p %p\n", dwFlags, pcwszFilePath, pFileMUIInfo, pcbFileMUIInfo); + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + +/* + * @unimplemented + */ +BOOL +WINAPI +GetFileMUIPath( + DWORD dwFlags, + PCWSTR pcwszFilePath, + PWSTR pwszLanguage, + PULONG pcchLanguage, + PWSTR pwszFileMUIPath, + PULONG pcchFileMUIPath, + PULONGLONG pululEnumerator) +{ + DPRINT("%x %p %p %p %p %p\n", dwFlags, pcwszFilePath, pwszLanguage, pwszFileMUIPath, pcchFileMUIPath, pululEnumerator); + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + + +/* + * @unimplemented + */ int WINAPI GetGeoInfoW( @@ -2081,6 +2118,23 @@ /* + * @unimplemented + */ +BOOL +WINAPI +GetProcessPreferredUILanguages( + DWORD dwFlags, + PULONG pulNumLanguages, + PZZWSTR pwszLanguagesBuffer, + PULONG pcchLanguagesBuffer) +{ + DPRINT("%x %p %p %p\n", dwFlags, pulNumLanguages, pwszLanguagesBuffer, pcchLanguagesBuffer); + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/* * @implemented */ LANGID WINAPI @@ -2125,6 +2179,23 @@ /* + * @unimplemented + */ +BOOL +WINAPI +GetSystemPreferredUILanguages( + DWORD dwFlags, + PULONG pulNumLanguages, + PZZWSTR pwszLanguagesBuffer, + PULONG pcchLanguagesBuffer) +{ + DPRINT("%x %p %p %p\n", dwFlags, pulNumLanguages, pwszLanguagesBuffer, pcchLanguagesBuffer); + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/* * @implemented */ LCID WINAPI @@ -2135,6 +2206,53 @@ /* + * @unimplemented + */ +BOOL +WINAPI +GetThreadPreferredUILanguages( + DWORD dwFlags, + PULONG pulNumLanguages, + PZZWSTR pwszLanguagesBuffer, + PULONG pcchLanguagesBuffer) +{ + DPRINT("%x %p %p %p\n", dwFlags, pulNumLanguages, pwszLanguagesBuffer, pcchLanguagesBuffer); + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/* + * @unimplemented + */ +LANGID +WINAPI +GetThreadUILanguage(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/* + * @unimplemented + */ +BOOL +WINAPI +GetUILanguageInfo( + DWORD dwFlags, + PCZZWSTR pwmszLanguage, + PZZWSTR pwszFallbackLanguages, + PDWORD pcchFallbackLanguages, + PDWORD pdwAttributes) +{ + DPRINT("%x %p %p %p %p\n", dwFlags, pwmszLanguage, pwszFallbackLanguages, pcchFallbackLanguages, pdwAttributes); + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/* * @implemented */ LANGID WINAPI @@ -2225,6 +2343,23 @@ } +/* + * @unimplemented + */ +BOOL +WINAPI +GetUserPreferredUILanguages( + DWORD dwFlags, + PULONG pulNumLanguages, + PZZWSTR pwszLanguagesBuffer, + PULONG pcchLanguagesBuffer) +{ + DPRINT("%x %p %p %p\n", dwFlags, pulNumLanguages, pwszLanguagesBuffer, pcchLanguagesBuffer); + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + /****************************************************************************** * IsValidLanguageGroup * @@ -2832,6 +2967,22 @@ } +/* + * @unimplemented + */ +BOOL +WINAPI +SetProcessPreferredUILanguages( + DWORD dwFlags, + PCZZWSTR pwszLanguagesBuffer, + PULONG pulNumLanguages) +{ + DPRINT("%x %p %p\n", dwFlags, pwszLanguagesBuffer, pulNumLanguages); + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + /********************************************************************** * @implemented * RIPPED FROM WINE's dlls\kernel\locale.c rev 1.42 @@ -2878,6 +3029,23 @@ /* + * @unimplemented + */ +BOOL +WINAPI +SetThreadPreferredUILanguages( + DWORD dwFlags, + PCZZWSTR pwszLanguagesBuffer, + PULONG pulNumLanguages + ) +{ + DPRINT("%x %p %p\n", dwFlags, pwszLanguagesBuffer, pulNumLanguages); + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/* * @implemented */ BOOL WINAPI Index: include/psdk/winnls.h =================================================================== --- include/psdk/winnls.h (revision 48922) +++ include/psdk/winnls.h (working copy) @@ -573,6 +573,21 @@ NormalizationKD = 0x6 } NORM_FORM; #endif /* (WINVER >= 0x0600) */ +typedef struct _FILEMUIINFO { + DWORD dwSize; + DWORD dwVersion; + DWORD dwFileType; + BYTE pChecksum[16]; + BYTE pServiceChecksum[16]; + DWORD dwLanguageNameOffset; + DWORD dwTypeIDMainSize; + DWORD dwTypeIDMainOffset; + DWORD dwTypeNameMainOffset; + DWORD dwTypeIDMUISize; + DWORD dwTypeIDMUIOffset; + DWORD dwTypeNameMUIOffset; + BYTE abBuffer[8]; +} FILEMUIINFO, *PFILEMUIINFO; int WINAPI CompareStringA(LCID,DWORD,LPCSTR,int,LPCSTR,int); int WINAPI CompareStringW(LCID,DWORD,LPCWSTR,int,LPCWSTR,int); @@ -634,6 +649,7 @@ BOOL WINAPI SetLocaleInfoA(LCID,LCTYPE,LPCSTR); BOOL WINAPI SetLocaleInfoW(LCID,LCTYPE,LPCWSTR); BOOL WINAPI SetThreadLocale(LCID); +LANGID WINAPI SetThreadUILanguage(LANGID); BOOL WINAPI SetUserDefaultLCID(LCID); BOOL WINAPI SetUserDefaultUILanguage(LANGID); BOOL WINAPI SetUserGeoID(GEOID); @@ -654,14 +670,24 @@ BOOL WINAPI IsValidLanguageGroup(LGRPID,DWORD); #endif /* (WINVER >= 0x0500) */ #if (WINVER >= 0x0600) +BOOL WINAPI GetFileMUIInfo(DWORD,PCWSTR,PFILEMUIINFO,DWORD*); +BOOL WINAPI GetFileMUIPath(DWORD,PCWSTR,PWSTR,PULONG,PWSTR,PULONG,PULONGLONG); WINBASEAPI int WINAPI GetLocaleInfoEx(LPCWSTR,LCTYPE,LPWSTR,int); +BOOL WINAPI GetProcessPreferredUILanguages(DWORD,PULONG,PZZWSTR,PULONG); +BOOL WINAPI GetSystemPreferredUILanguages(DWORD,PULONG,PZZWSTR,PULONG); +BOOL WINAPI GetThreadPreferredUILanguages(DWORD,PULONG,PZZWSTR,PULONG); +LANGID WINAPI GetThreadUILanguage(void); +BOOL WINAPI GetUILanguageInfo(DWORD,PCZZWSTR,PZZWSTR,PDWORD,PDWORD); +BOOL WINAPI GetUserPreferredUILanguages(DWORD,PULONG,PZZWSTR,PULONG); int WINAPI IdnToAscii(DWORD,LPCWSTR,int,LPWSTR,int); int WINAPI IdnToNameprepUnicode(DWORD,LPCWSTR,int,LPWSTR,int); int WINAPI IdnToUnicode(DWORD,LPCWSTR,int,LPWSTR,int); BOOL WINAPI IsNormalizedString(NORM_FORM,LPCWSTR,int); int WINAPI NormalizeString(NORM_FORM,LPCWSTR,int,LPWSTR,int); int WINAPI GetStringScripts(DWORD,LPCWSTR,int,LPWSTR,int); +BOOL WINAPI SetProcessPreferredUILanguages(DWORD,PCZZWSTR,PULONG); +BOOL WINAPI SetThreadPreferredUILanguages(DWORD,PCZZWSTR,PULONG); BOOL WINAPI VerifyScripts(DWORD,LPCWSTR,int,LPCWSTR,int); #endif /* (WINVER >= 0x0600) */ Index: include/psdk/winnt.h =================================================================== --- include/psdk/winnt.h (revision 48922) +++ include/psdk/winnt.h (working copy) @@ -148,8 +148,8 @@ #endif typedef wchar_t WCHAR; -typedef WCHAR *PWCHAR,*LPWCH,*PWCH,*NWPSTR,*LPWSTR,*PWSTR; -typedef CONST WCHAR *LPCWCH,*PCWCH,*LPCWSTR,*PCWSTR; +typedef WCHAR *PWCHAR,*LPWCH,*PWCH,*NWPSTR,*LPWSTR,*PWSTR,*PZZWSTR; +typedef CONST WCHAR *LPCWCH,*PCWCH,*LPCWSTR,*PCWSTR,*PCZZWSTR; typedef CHAR *PCHAR,*LPCH,*PCH,*NPSTR,*LPSTR,*PSTR; typedef CONST CHAR *LPCCH,*PCCH,*PCSTR,*LPCSTR; typedef PWSTR *PZPWSTR;