mirror of
https://github.com/reactos/reactos.git
synced 2025-08-03 14:56:31 +00:00
[MSCTF][SDK][CTFMON][MSCTFIME][MSUTB] Add msctf.dll stubs (#8026)
Some baby steps to msctf.dll for CTF. JIRA issue: CORE-19361 - Add all the export functions of msctf.dll. - Modify msctf.spec. - Modify sdk/include/psdk/msctf.idl and sdk/include/psdk/inputscope.idl. - Add sdk/include/reactos/msctf_undoc.h. - Include <msctf_undoc.h> in ctfmon, msctfime, and msutb.
This commit is contained in:
parent
99e2606982
commit
5af1d7c6b1
10 changed files with 323 additions and 43 deletions
|
@ -15,6 +15,7 @@
|
|||
#include <tchar.h>
|
||||
#include <strsafe.h>
|
||||
#include <msctf.h>
|
||||
#include <msctf_undoc.h>
|
||||
#include <ctfutb.h>
|
||||
#include <ctffunc.h>
|
||||
#include <cicbase.h>
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
#include <cguid.h>
|
||||
#include <tchar.h>
|
||||
#include <msctf.h>
|
||||
#include <msctf_undoc.h>
|
||||
#include <ctffunc.h>
|
||||
#include <shlwapi.h>
|
||||
#include <strsafe.h>
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
#include <shlwapi.h>
|
||||
#include <shlwapi_undoc.h>
|
||||
#include <msctf.h>
|
||||
#include <msctf_undoc.h>
|
||||
#include <strsafe.h>
|
||||
#include <assert.h>
|
||||
|
||||
|
|
|
@ -7,6 +7,8 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#define CTF_COMPAT_DELAY_FIRST_ACTIVATE 2
|
||||
|
||||
struct MLNGINFO
|
||||
{
|
||||
HKL m_hKL;
|
||||
|
|
|
@ -1,38 +1,39 @@
|
|||
@ stdcall TF_GetLangIcon(long ptr long)
|
||||
@ stdcall TF_GetMlngHKL(long ptr ptr long)
|
||||
@ stdcall TF_GetMlngIconIndex(long)
|
||||
@ stdcall TF_GetThreadFlags(long ptr ptr ptr)
|
||||
@ stdcall TF_InatExtractIcon(long)
|
||||
@ stdcall TF_InitMlngInfo()
|
||||
@ stdcall TF_IsInMarshaling(long)
|
||||
@ stdcall TF_MlngInfoCount()
|
||||
@ stdcall TF_RunInputCPL()
|
||||
@ stdcall -private DllCanUnloadNow()
|
||||
@ stdcall -private DllGetClassObject(ptr ptr ptr)
|
||||
@ stdcall -private DllRegisterServer()
|
||||
@ stdcall -private DllUnregisterServer()
|
||||
@ stdcall SetInputScope(long long)
|
||||
@ stub SetInputScopeXML
|
||||
@ stdcall SetInputScopeXML(ptr ptr)
|
||||
@ stdcall SetInputScopes(long ptr long ptr long wstr wstr)
|
||||
@ stub TF_CUASAppFix
|
||||
@ stdcall -stub TF_CheckThreadInputIdle(long long)
|
||||
@ stub TF_ClearLangBarAddIns
|
||||
@ stdcall -stub TF_CreateCategoryMgr(ptr)
|
||||
@ stdcall -stub TF_CreateCicLoadMutex(ptr)
|
||||
@ stdcall -stub TF_CreateDisplayAttributeMgr(ptr)
|
||||
@ stdcall TF_CUASAppFix(str)
|
||||
@ stdcall TF_CheckThreadInputIdle(long long)
|
||||
@ stdcall TF_ClearLangBarAddIns(ptr)
|
||||
@ stdcall TF_CreateCategoryMgr(ptr)
|
||||
@ stdcall TF_CreateCicLoadMutex(ptr)
|
||||
@ stdcall TF_CreateDisplayAttributeMgr(ptr)
|
||||
@ stdcall TF_CreateInputProcessorProfiles(ptr)
|
||||
@ stdcall TF_CreateLangBarItemMgr(ptr)
|
||||
@ stdcall TF_CreateLangBarMgr(ptr)
|
||||
@ stdcall TF_CreateThreadMgr(ptr)
|
||||
@ stdcall -stub TF_DllDetachInOther()
|
||||
@ stdcall -stub TF_GetGlobalCompartment(ptr)
|
||||
@ stub TF_GetInputScope
|
||||
@ stdcall -stub TF_GetLangIcon(long ptr long)
|
||||
@ stdcall TF_GetMlngHKL(long ptr ptr long)
|
||||
@ stdcall TF_GetMlngIconIndex(long)
|
||||
@ stdcall -stub TF_GetThreadFlags(long ptr ptr ptr)
|
||||
@ stdcall TF_DllDetachInOther()
|
||||
@ stdcall TF_GetGlobalCompartment(ptr)
|
||||
@ stdcall TF_GetInputScope(ptr ptr)
|
||||
@ stdcall TF_GetThreadMgr(ptr)
|
||||
@ stdcall TF_InatExtractIcon(long)
|
||||
@ stdcall TF_InitMlngInfo()
|
||||
@ stdcall -stub TF_InitSystem()
|
||||
@ stdcall -stub TF_UninitSystem()
|
||||
@ stdcall -stub TF_InvalidAssemblyListCache()
|
||||
@ stdcall TF_InitSystem()
|
||||
@ stdcall TF_InvalidAssemblyListCache()
|
||||
@ stdcall TF_InvalidAssemblyListCacheIfExist()
|
||||
@ stdcall TF_IsCtfmonRunning()
|
||||
@ stdcall -stub TF_IsInMarshaling(long)
|
||||
@ stdcall TF_MlngInfoCount()
|
||||
@ stdcall TF_RunInputCPL()
|
||||
@ stdcall -stub TF_PostAllThreadMsg(long long)
|
||||
@ stdcall TF_IsFullScreenWindowAcitvated() ; Yes, Microsoft really misspelled this one!
|
||||
@ stdcall TF_PostAllThreadMsg(ptr long)
|
||||
@ stdcall TF_RegisterLangBarAddIn(ptr wstr long)
|
||||
@ stdcall TF_UninitSystem()
|
||||
@ stdcall TF_UnregisterLangBarAddIn(ptr long)
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* PROJECT: ReactOS msctf.dll
|
||||
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
|
||||
* PURPOSE: Text Framework Services
|
||||
* COPYRIGHT: Copyright 2023 Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
|
||||
* COPYRIGHT: Copyright 2023-2025 Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
|
@ -19,6 +19,7 @@
|
|||
#include <cguid.h>
|
||||
#include <tchar.h>
|
||||
#include <msctf.h>
|
||||
#include <msctf_undoc.h>
|
||||
#include <ctffunc.h>
|
||||
#include <shlwapi.h>
|
||||
#include <strsafe.h>
|
||||
|
@ -49,6 +50,7 @@ BOOL gfSharedMemory = FALSE;
|
|||
LONG g_cRefDll = -1;
|
||||
BOOL g_fCUAS = FALSE;
|
||||
TCHAR g_szCUASImeFile[16] = { 0 };
|
||||
DWORD g_dwAppCompatibility = 0;
|
||||
BOOL g_fNoITextStoreAnchor = TRUE;
|
||||
|
||||
// Messages
|
||||
|
@ -236,6 +238,238 @@ RunCPLSetting(LPCTSTR pszCmdLine)
|
|||
return FullPathExec(TEXT("rundll32.exe"), pszCmdLine, SW_SHOWMINNOACTIVE, FALSE);
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* TF_GetThreadFlags (MSCTF.@)
|
||||
*
|
||||
* @unimplemented
|
||||
*/
|
||||
EXTERN_C BOOL WINAPI
|
||||
TF_GetThreadFlags(
|
||||
_In_ DWORD dwThreadId,
|
||||
_Out_ LPDWORD pdwFlags1,
|
||||
_Out_ LPDWORD pdwFlags2,
|
||||
_Out_ LPDWORD pdwFlags3)
|
||||
{
|
||||
FIXME("(%lu, %p, %p, %p)\n", dwThreadId, pdwFlags1, pdwFlags2, pdwFlags3);
|
||||
*pdwFlags1 = *pdwFlags2 = *pdwFlags3 = 0;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* TF_CreateCategoryMgr (MSCTF.@)
|
||||
*
|
||||
* @unimplemented
|
||||
*/
|
||||
EXTERN_C HRESULT WINAPI
|
||||
TF_CreateCategoryMgr(_Out_ ITfCategoryMgr **ppcat)
|
||||
{
|
||||
FIXME("(%p)\n", ppcat);
|
||||
if (ppcat)
|
||||
*ppcat = NULL;
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* TF_CreateCicLoadMutex (MSCTF.@)
|
||||
*
|
||||
* @unimplemented
|
||||
*/
|
||||
EXTERN_C HANDLE WINAPI
|
||||
TF_CreateCicLoadMutex(_Out_ LPBOOL pfWinLogon)
|
||||
{
|
||||
FIXME("(%p)\n", pfWinLogon);
|
||||
if (pfWinLogon == NULL)
|
||||
return NULL;
|
||||
*pfWinLogon = FALSE;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* TF_CreateDisplayAttributeMgr (MSCTF.@)
|
||||
*
|
||||
* @unimplemented
|
||||
*/
|
||||
EXTERN_C HRESULT WINAPI
|
||||
TF_CreateDisplayAttributeMgr(_Out_ ITfDisplayAttributeMgr **ppdam)
|
||||
{
|
||||
FIXME("(%p)\n", ppdam);
|
||||
*ppdam = NULL;
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* TF_DllDetachInOther (MSCTF.@)
|
||||
*
|
||||
* @unimplemented
|
||||
*/
|
||||
EXTERN_C BOOL WINAPI
|
||||
TF_DllDetachInOther(VOID)
|
||||
{
|
||||
FIXME("()\n");
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* TF_GetGlobalCompartment (MSCTF.@)
|
||||
*
|
||||
* @unimplemented
|
||||
*/
|
||||
EXTERN_C HRESULT WINAPI
|
||||
TF_GetGlobalCompartment(_Out_ ITfCompartmentMgr **ppCompMgr)
|
||||
{
|
||||
FIXME("(%p)\n", ppCompMgr);
|
||||
*ppCompMgr = NULL;
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* TF_GetLangIcon (MSCTF.@)
|
||||
*
|
||||
* @unimplemented
|
||||
*/
|
||||
EXTERN_C HICON WINAPI
|
||||
TF_GetLangIcon(_In_ LANGID LangID, _Out_ PWSTR pszText, _In_ INT cchText)
|
||||
{
|
||||
FIXME("(0x%X, %p, %d)\n", LangID, pszText, cchText);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* TF_IsFullScreenWindowAcitvated (MSCTF.@)
|
||||
*
|
||||
* Yes, this function name is misspelled by MS.
|
||||
* @unimplemented
|
||||
*/
|
||||
EXTERN_C BOOL WINAPI
|
||||
TF_IsFullScreenWindowAcitvated(VOID)
|
||||
{
|
||||
FIXME("()\n");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* TF_GetInputScope (MSCTF.@)
|
||||
*
|
||||
* @unimplemented
|
||||
*/
|
||||
EXTERN_C HRESULT WINAPI
|
||||
TF_GetInputScope(_In_opt_ HWND hWnd, _Out_ ITfInputScope **ppInputScope)
|
||||
{
|
||||
FIXME("(%p, %p)\n", hWnd, ppInputScope);
|
||||
*ppInputScope = NULL;
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* SetInputScopeXML (MSCTF.@)
|
||||
*
|
||||
* @unimplemented
|
||||
*/
|
||||
EXTERN_C HRESULT WINAPI
|
||||
SetInputScopeXML(_In_opt_ HWND hwnd, _In_opt_ PCWSTR pszXML)
|
||||
{
|
||||
FIXME("(%p, %p)\n", hwnd, pszXML);
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* TF_CUASAppFix (MSCTF.@)
|
||||
*
|
||||
* @implemented
|
||||
*/
|
||||
EXTERN_C HRESULT WINAPI
|
||||
TF_CUASAppFix(_In_ LPCSTR pszName)
|
||||
{
|
||||
if (!pszName || lstrcmpiA(pszName, "DelayFirstActivateKeyboardLayout") != 0)
|
||||
return E_INVALIDARG;
|
||||
g_dwAppCompatibility |= CTF_COMPAT_DELAY_FIRST_ACTIVATE;
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* TF_CheckThreadInputIdle (MSCTF.@)
|
||||
*
|
||||
* @unimplemented
|
||||
*/
|
||||
EXTERN_C LONG WINAPI
|
||||
TF_CheckThreadInputIdle(_In_ DWORD dwThreadId, _In_ DWORD dwMilliseconds)
|
||||
{
|
||||
FIXME("(%lu, %lu)\n", dwThreadId, dwMilliseconds);
|
||||
return -1;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* TF_ClearLangBarAddIns (MSCTF.@)
|
||||
*
|
||||
* @unimplemented
|
||||
*/
|
||||
EXTERN_C HRESULT WINAPI
|
||||
TF_ClearLangBarAddIns(_In_ REFGUID guid)
|
||||
{
|
||||
FIXME("(%p)\n", guid);
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* TF_InvalidAssemblyListCache (MSCTF.@)
|
||||
*
|
||||
* @unimplemented
|
||||
*/
|
||||
EXTERN_C HRESULT WINAPI
|
||||
TF_InvalidAssemblyListCache(VOID)
|
||||
{
|
||||
FIXME("()\n");
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* TF_IsInMarshaling (MSCTF.@)
|
||||
*
|
||||
* @unimplemented
|
||||
*/
|
||||
EXTERN_C BOOL WINAPI
|
||||
TF_IsInMarshaling(_In_ DWORD dwThreadId)
|
||||
{
|
||||
FIXME("(%lu)\n", dwThreadId);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* TF_PostAllThreadMsg (MSCTF.@)
|
||||
*
|
||||
* @unimplemented
|
||||
*/
|
||||
EXTERN_C HRESULT WINAPI
|
||||
TF_PostAllThreadMsg(_In_opt_ WPARAM wParam, _In_ DWORD dwFlags)
|
||||
{
|
||||
FIXME("(%p, 0x%X)\n", wParam, dwFlags);
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* TF_InitSystem (MSCTF.@)
|
||||
*
|
||||
* @unimplemented
|
||||
*/
|
||||
EXTERN_C BOOL WINAPI
|
||||
TF_InitSystem(VOID)
|
||||
{
|
||||
FIXME("()\n");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* TF_UninitSystem (MSCTF.@)
|
||||
*
|
||||
* @unimplemented
|
||||
*/
|
||||
EXTERN_C BOOL WINAPI
|
||||
TF_UninitSystem(VOID)
|
||||
{
|
||||
FIXME("()\n");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* TF_RegisterLangBarAddIn (MSCTF.@)
|
||||
*
|
||||
|
|
|
@ -18,6 +18,7 @@
|
|||
#include <undocuser.h>
|
||||
#include <cguid.h>
|
||||
#include <msctf.h>
|
||||
#include <msctf_undoc.h>
|
||||
#include <ctffunc.h>
|
||||
#include <ctfutb.h>
|
||||
#include <shlwapi.h>
|
||||
|
|
|
@ -74,7 +74,7 @@ typedef enum {
|
|||
|
||||
cpp_quote("HRESULT WINAPI SetInputScope(HWND hwnd,InputScope inputscope);")
|
||||
cpp_quote("HRESULT WINAPI SetInputScopes(HWND hwnd,const InputScope *pInputScopes,UINT cInputScopes,WCHAR **ppszPhraseList,UINT cPhrases,WCHAR *pszRegExp,WCHAR *pszSRGS);")
|
||||
cpp_quote("HRESULT WINAPI SetInputScopeXML(HWND hwnd,WCHAR *pszXML);")
|
||||
cpp_quote("HRESULT WINAPI SetInputScopeXML(_In_opt_ HWND hwnd, _In_opt_ PCWSTR pszXML);")
|
||||
|
||||
cpp_quote("DEFINE_GUID(GUID_PROP_INPUTSCOPE,0x1713dd5a,0x68e7,0x4a5b,0x9a,0xf6,0x59,0x2a,0x59,0x5c,0x77,0x8d);")
|
||||
|
||||
|
|
|
@ -46,31 +46,13 @@ cpp_quote("#define TF_E_STACKFULL MAKE_HRESULT(SEVERITY_ERROR, FACILI
|
|||
cpp_quote("#define TF_E_SYNCHRONOUS MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0208)")
|
||||
cpp_quote("#define TF_S_ASYNC MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_ITF, 0x0300)")
|
||||
|
||||
cpp_quote("EXTERN_C HRESULT WINAPI TF_InitSystem(VOID);")
|
||||
cpp_quote("EXTERN_C HRESULT WINAPI TF_UninitSystem(VOID);")
|
||||
cpp_quote("EXTERN_C HRESULT WINAPI TF_GetGlobalCompartment(_Out_ ITfCompartmentMgr **ppCompMgr);")
|
||||
cpp_quote("EXTERN_C HRESULT WINAPI TF_PostAllThreadMsg(DWORD dwUnknown1, DWORD dwUnknown2);")
|
||||
cpp_quote("EXTERN_C HRESULT WINAPI TF_CreateThreadMgr(_Out_ ITfThreadMgr **pptim);")
|
||||
cpp_quote("EXTERN_C HRESULT WINAPI TF_GetThreadMgr(_Out_ ITfThreadMgr **pptim);")
|
||||
cpp_quote("EXTERN_C HRESULT WINAPI TF_CreateInputProcessorProfiles(_Out_ ITfInputProcessorProfiles **ppipr);")
|
||||
cpp_quote("EXTERN_C HRESULT WINAPI TF_CreateLangBarMgr(_Out_ ITfLangBarMgr **pppbm);")
|
||||
cpp_quote("EXTERN_C HRESULT WINAPI TF_CreateLangBarItemMgr(_Out_ ITfLangBarItemMgr **pplbim);")
|
||||
cpp_quote("EXTERN_C HANDLE WINAPI TF_CreateCicLoadMutex(_Out_ LPBOOL pfWinLogon);")
|
||||
cpp_quote("EXTERN_C HRESULT WINAPI TF_InvalidAssemblyListCache(VOID);")
|
||||
cpp_quote("EXTERN_C HRESULT WINAPI TF_InvalidAssemblyListCacheIfExist(VOID);")
|
||||
cpp_quote("EXTERN_C HRESULT WINAPI TF_DllDetachInOther(VOID);")
|
||||
cpp_quote("EXTERN_C HRESULT WINAPI TF_CreateCategoryMgr(_Out_ ITfCategoryMgr **ppcat);")
|
||||
cpp_quote("EXTERN_C HRESULT WINAPI TF_CreateDisplayAttributeMgr(_Out_ ITfDisplayAttributeMgr **ppdam);")
|
||||
cpp_quote("EXTERN_C HICON WINAPI TF_GetLangIcon(_In_ LANGID LangID, _Out_ LPWSTR pszText, _In_ INT cchText);")
|
||||
cpp_quote("EXTERN_C VOID WINAPI TF_InitMlngInfo(VOID);")
|
||||
cpp_quote("EXTERN_C INT WINAPI TF_MlngInfoCount(VOID);")
|
||||
cpp_quote("EXTERN_C BOOL WINAPI TF_GetMlngHKL(_In_ INT iKL, _Out_opt_ HKL *phKL, _Out_opt_ LPWSTR pszText, _In_ INT cchText);")
|
||||
cpp_quote("EXTERN_C INT WINAPI TF_GetMlngIconIndex(_In_ INT iKL);")
|
||||
cpp_quote("EXTERN_C HICON WINAPI TF_InatExtractIcon(_In_ INT iKL);")
|
||||
cpp_quote("EXTERN_C HRESULT WINAPI TF_RunInputCPL(VOID);")
|
||||
cpp_quote("EXTERN_C BOOL WINAPI TF_GetThreadFlags(_In_ DWORD dwThreadId, _Out_ LPDWORD pdwFlags1, _Out_ LPDWORD pdwFlags2, _Out_ LPDWORD pdwFlags3);")
|
||||
cpp_quote("EXTERN_C LONG WINAPI TF_CheckThreadInputIdle(_In_ DWORD dwThreadId, _In_ DWORD dwMilliseconds);")
|
||||
cpp_quote("EXTERN_C BOOL WINAPI TF_IsInMarshaling(_In_ DWORD dwThreadId);")
|
||||
|
||||
cpp_quote("EXTERN_C const GUID GUID_PROP_TEXTOWNER;")
|
||||
cpp_quote("EXTERN_C const GUID GUID_PROP_ATTRIBUTE;")
|
||||
|
|
57
sdk/include/reactos/msctf_undoc.h
Normal file
57
sdk/include/reactos/msctf_undoc.h
Normal file
|
@ -0,0 +1,57 @@
|
|||
/*
|
||||
* PROJECT: ReactOS Kernel
|
||||
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
|
||||
* PURPOSE: Private header for msctf.dll
|
||||
* COPYRIGHT: Copyright 2025 Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <msctf.h>
|
||||
#include <inputscope.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
BOOL WINAPI TF_InitSystem(VOID);
|
||||
BOOL WINAPI TF_UninitSystem(VOID);
|
||||
HRESULT WINAPI TF_GetGlobalCompartment(_Out_ ITfCompartmentMgr **ppCompMgr);
|
||||
HRESULT WINAPI TF_PostAllThreadMsg(_In_opt_ WPARAM wParam, _In_ DWORD dwFlags);
|
||||
HANDLE WINAPI TF_CreateCicLoadMutex(_Out_ LPBOOL pfWinLogon);
|
||||
HRESULT WINAPI TF_InvalidAssemblyListCache(VOID);
|
||||
HRESULT WINAPI TF_InvalidAssemblyListCacheIfExist(VOID);
|
||||
HICON WINAPI TF_GetLangIcon(_In_ LANGID LangID, _Out_writes_(cchText) PWSTR pszText, _In_ INT cchText);
|
||||
VOID WINAPI TF_InitMlngInfo(VOID);
|
||||
INT WINAPI TF_MlngInfoCount(VOID);
|
||||
INT WINAPI TF_GetMlngIconIndex(_In_ INT iKL);
|
||||
HICON WINAPI TF_InatExtractIcon(_In_ INT iKL);
|
||||
HRESULT WINAPI TF_RunInputCPL(VOID);
|
||||
LONG WINAPI TF_CheckThreadInputIdle(_In_ DWORD dwThreadId, _In_ DWORD dwMilliseconds);
|
||||
BOOL WINAPI TF_IsInMarshaling(_In_ DWORD dwThreadId);
|
||||
|
||||
// This is intentionally misspelled to match the original name:
|
||||
BOOL WINAPI TF_IsFullScreenWindowAcitvated(VOID);
|
||||
|
||||
HRESULT WINAPI TF_CUASAppFix(_In_ LPCSTR pszName);
|
||||
HRESULT WINAPI TF_ClearLangBarAddIns(_In_ REFGUID rguid);
|
||||
HRESULT WINAPI TF_GetInputScope(_In_opt_ HWND hWnd, _Out_ ITfInputScope **ppInputScope);
|
||||
BOOL WINAPI TF_DllDetachInOther(VOID);
|
||||
|
||||
BOOL WINAPI
|
||||
TF_GetMlngHKL(
|
||||
_In_ INT iKL,
|
||||
_Out_opt_ HKL *phKL,
|
||||
_Out_writes_opt_(cchText) LPWSTR pszText,
|
||||
_In_ INT cchText);
|
||||
|
||||
BOOL WINAPI
|
||||
TF_GetThreadFlags(
|
||||
_In_ DWORD dwThreadId,
|
||||
_Out_ LPDWORD pdwFlags1,
|
||||
_Out_ LPDWORD pdwFlags2,
|
||||
_Out_ LPDWORD pdwFlags3);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} // extern "C"
|
||||
#endif
|
Loading…
Add table
Add a link
Reference in a new issue