Entwickeln IME-Aware Anwendungen mit mehreren Threads
Der IMM enthält eine Threadidentifikationsüberprüfung, die bestimmt, ob ein aufrufende Thread der Ersteller eines angegebenen Eingabemethode-Kontexthandks (HIMC-Typ) oder Fensterhand handle (HWND-Typ) ist. Wenn der Thread nicht der Ersteller des Handles ist, schlägt die aufgerufene IMM-Funktion fehl, und ein nachfolgender Aufruf von GetLastError gibt ERROR _ INVALID ACCESS _ zurück.
Hinweis
Die aktuelle IMM-Architektur bietet keine Synchronisierungsmöglichkeit für den Zugriff auf IMM-Handles.
Um die Threadidentifikationsüberprüfung zu verwenden, müssen Ihre Anwendungen die folgenden Richtlinien einhalten:
- Ein Thread sollte nicht auf den Eingabekontext zugreifen, der von einem anderen Thread erstellt wurde.
- Ein Thread sollte einem fenster, das von einem anderen Thread erstellt wurde, keinen Eingabekontext zuordnen und umgekehrt.