Entwickeln von IME-Aware Multiple-Thread-Anwendungen

Das IMM enthält threadidentifikationsüberprüfung, die bestimmt, ob ein Aufrufthread der Ersteller eines angegebenen Eingabemethodenkontexthandpunkts (HIMC-Typ) oder Fensterhandpunkts (HWND-Typ) ist. Wenn der Thread nicht der Ersteller des Handles ist, schlägt die aufgerufene IMM-Funktion fehl, und ein späterer Aufruf von GetLastError gibt ERROR_INVALID_ACCESS zurück.

Hinweis

Die aktuelle IMM-Architektur bietet keine Synchronisierungseinrichtung für den Zugriff auf IMM-Handle.

 

Um die Threadidentifizierung zu verwenden, müssen Ihre Anwendungen den folgenden Richtlinien entsprechen:

  • Ein Thread sollte nicht auf den Eingabekontext zugreifen, der von einem anderen Thread erstellt wurde.
  • Ein Thread sollte keinen Eingabekontext mit einem Fenster zuordnen, das von einem anderen Thread erstellt wurde und umgekehrt.

Verwenden des Eingabemethoden-Managers