Eingabemethoden-Editoren von Drittanbietern

Plattformen

Clients – Windows 8
Server – Windows Server 2012

Beschreibung

Eingabemethode-Editoren (IMEs) sind Softwarekomponenten, mit denen ein Benutzer Text in einer Sprache eingeben kann, die mehr Zeichen enthält, als auf einer Tastatur dargestellt werden können. (Dies ist üblich, aber nicht beschränkt auf ostasiatische Sprachen.) Anstatt jedes einzelne Zeichen auf einem einzelnen Schlüssel zu sehen, geben Benutzer Kombinationen von Schlüsseln ein, die dann vom IME interpretiert werden. Der IME generiert das Zeichen, das dem Satz von Tastenstrichen entspricht, präsentiert dem Benutzer manchmal eine Liste möglicher Zeichen, aus denen er auswählen kann, und fügt das Zeichen dann in das Bearbeitungssteuerfenster der App des Benutzers ein.

In der Vergangenheit hat Windows die Ausführung von IMEs von Drittanbietern im Windows-System zugelassen, und diese Funktion wird für Windows 8. Benutzer können eine IME eines Drittanbieters installieren und verwenden. Darüber hinaus härten wir das System und die Prozesse, um schädliche IMEs zu verhindern, die Sicherheit zu verbessern und die Benutzerfreundlichkeit zu verbessern.

In Windows 8 finden Sie:

  • IME-Unterstützung von Drittanbietern für Hardwaretastaturen und Touchtastaturen
  • IME-Drittanbieter müssen die Microsoft-Richtlinien befolgen, um ihre IMEs für Windows 8
  • IMEs von Drittanbietern müssen digital signiert sein.
  • IMEs von Drittanbietern müssen über Textdienstframework (TSF) akzeptabel sein, und die richtigen IME-Flags müssen so festgelegt werden, dass sie ordnungsgemäß in Windows 8
  • Ältere IMEs von Drittanbietern können in Desktop-Apps ausgeführt werden, werden jedoch in Windows Store blockiert.
  • ImEs von Drittanbietern können das von Windows bereitgestellte Touchtastaturlayout verwenden, um ihre IME zu verknüpfen, sodass Benutzer ihre IME mit Touchtastaturen verwenden können. Bestimmte Funktionen von In-Box-IMEs für Touchtastaturen sind jedoch nicht für IMEs von Drittanbietern verfügbar.
  • Windows Defender werden schädliche IMEs aus dem Windows entfernt.

Manifestation

Änderung der Eingabesprache und der Eingabemethode

Anstatt alle Symbole im IME-Modus zusammen mit dem IME-Brandingsymbol anzuzeigen, wird nur ein SYMBOL für den IME-Modus zusammen mit dem IME-Brandingsymbol angezeigt. Die beiden folgenden Abbildungen zeigen das Windows 8-Eingabe-Flyout und das IME-Flyout mit japanischem IME als aktuelle Eingabemethode. Wenn Sie auf das IME-Brandingsymbol klicken, können Sie die Eingabemethoden wechseln.

Switcheingabemethoden

Wenn Sie auf das Symbol imE-Modus klicken, können Sie in einen anderen IME-Modus wechseln.

Switch-IME-Modi

Wenn ein IME die Sprachleiste verwendet, um seine Modussymbole in Windows 7 anzuzeigen, muss der IME geändert werden, um das Brandingsymbol und das Modussymbol im Eingabeindikator in Windows 8.

Hinweis

Hinweis: Die Details dazu, wie ein IME das Brandingsymbol und das Modussymbol in SysTray auf der Taskleiste des Desktops anzeigen kann, werden dokumentiert und öffentlich in den Windows 8 IME-Richtlinien veröffentlicht.

Neue Windows Umgebung

Die Umgebung in Windows 8 ändert die Landschaft für IMEs. Die Konzepte Windows Store Apps, Lokalen Kontext-App-Containern und API-Einschränkungen für IMEs waren in Version 7 Windows vorhanden. Einige vorhandene Windows 7 IMEs reagieren nicht mehr, wenn sie in einer Windows Store-App ausgeführt werden, und lassen daher nicht zu, dass ältere IMEs in Windows Store ausgeführt werden. Stellen Sie außerdem sicher, dass neue Versionen von IMEs überprüft werden, um sicherzustellen, dass sie mit der neuen Benutzeroberflächenumgebung kompatibel sind, bevor sie in Windows Store werden.

Minderung

Sie können eine desktopkompatible IME auf dem System verwenden. Dies ist möglicherweise die beste Option, wenn Sie hauptsächlich Desktop-Apps verwenden und weiterhin einen bevorzugten Legacy-IME für die Eingabe verwenden möchten. Es wird empfohlen, dass Sie einen Windows 8 IME verwenden und keine älteren/nicht zertifizierten IMEs mehr verwenden. Benachrichtigungen werden sowohl von der Sprach-CPL als auch vom Eingabeschalter bereitgestellt, um Sie vor den Auswirkungen der Verwendung eines desktopkompatiblen IME zu warnen.

Sie sehen eines der folgenden Verhaltensweisen, wenn ein desktopkompatibeler IME in Ihrem System nicht funktioniert:

  • Die Sprache CPL UI bezeichnet desktopkompatible IMEs und zeigt eine Meldung an, dass nicht kompatible IMEs nur in Desktop-Apps funktionieren.
  • Das Eingabe-Flyout graut desktopkompatible IMEs aus, wenn sich der Benutzer in Windows Store befindet. Dies gibt an, dass der IME in dieser App nicht funktioniert. (Desktopkompatible IMEs sind auf dem Desktop nicht ausgegraut.) Wenn Sie zu Windows Store-Apps mit einem nicht kompatiblen IME wechseln und feststellen, dass der IME deaktiviert ist, verwenden Sie den Eingabeindikator, um zu einem IME zu wechseln, der mit Windows Store ist.

Ältere oder desktopkompatible IMEs sind auf die folgenden Bedingungen beschränkt:

  • Upgrade von Windows 7 auf Windows 8 mit IMEs von Drittanbietern auf dem System
  • Der Anbieter hat keine Version veröffentlicht, die mit Windows 8 kompatibel ist, und der Benutzer versucht in der Zwischenzeit, eine vorhandene Windows 7-Version zu verwenden.

Lösung

Allgemein

Verwenden Sie die vorhandene TSF-Infrastruktur (Text Services Framework), um Ihre IME-Logik und die Windows Store app common controls für Ihre Beis zu implementieren. Erstellen Sie eigene Fenster, um Ihre Benutzeroberfläche zu hosten.

Neue Such-APIs werden hinzugefügt, um die Suchvorhersage zu verbessern und eine bessere Suchoberfläche auf der Benutzeroberfläche zu bieten.

APIs werden auch hinzugefügt, um IMEs von Drittanbietern zu benachrichtigen, wenn eine Touchtastatur aufgerufen wird, um die Benutzeroberfläche vor der Überhingung durch die Touchtastatur zu schützen. Ein standardmäßiges klassisches Touchtastaturlayout wird automatisch für IMEs von Drittanbietern geladen. Für die Integration in dieses klassische Touchtastaturlayout ist keine zusätzliche Arbeit erforderlich. ImEs von Drittanbietern können jedoch ein alternatives Touchlayout anfordern.

Machen Sie sich mit den Windows 8 IME-Richtlinien vertraut, damit Sie wichtige Windows Store für die App-Benutzerfreundlichkeit in Ihrem IME fördern können. IMEs, die den Richtlinien entsprechen, müssen ein Flag festlegen, um anzugeben, dass der IME mit dem Microsoft-Entwurf kompatibel ist. Windows 8 verhindert, dass alle desktopkompatiblen IMEs in Windows Store ausgeführt werden.

Das digitale Signieren verhindert zusätzlich zur Sperrung durch Windows Defender, dass schädliche IMEs auf dem Windows 8 installiert werden. Bei der Identitätsüberprüfung wird die ImE-.dll eines Drittanbieters digital signiert. Nur IMEs mit dieser digitalen Signatur können auf dem System installiert werden, ohne dass dem Benutzer eine kritische Warnmeldung angezeigt wird. Benutzer können schädliche IMEs melden. Nachdem ein IME als böswillig ermittelt wurde, Windows Defender es aus dem Windows entfernt.

Textdienstframework

Der IME muss TSF-fähig sein, um in der Lage zu sein, in einem Windows 8. Windows 8 verhindert, dass nicht TSF-orientierte IMEs in Windows Store werden. Wenn eine App gestartet wird, lädt TSF die IME-.dll für den IME, den der Benutzer ausgewählt hat, in den App-Prozess.

Hinweis

Um separate Funktionen oder Beis zwischen Windows Store-Apps und Desktop-Apps zu bieten, kann die von TSF geladene .dll überprüfen, in welche Art von App sie geladen wird. Der IME ruft die ITfThreadMgrEx::GetActiveFlags-Methode auf und überprüft das TF _ TMF IMMERSIVEMODE-Flag und kann je nach Ergebnis unterschiedliche App-Logik _ auslösen.

Wenn ein IME in eine Windows Store-App geladen wird, unterliegt er den gleichen App-Containereinschränkungen wie die App selbst. Dieses Verhalten stellt sicher, dass IMEs nicht in der Lage sind, Windows Store-App-Sicherheitsverträge zu verletzen, obwohl sie Zugriff auf das Desktop-SDK haben (da sie nicht von der Anwendung verteilt oder zertifiziert Windows Store). Einige Funktionen, die IMEs derzeit ausführen, sind in einem App-Container betroffen. Zu diesen Funktionen gehören:

  • Wörterbuchdateien
  • Internetaktualisierung
  • On-the-Fly-Lernen
  • Freigeben von Informationen zwischen Prozessen

Weitere Informationen finden Windows 8 IME-Richtlinien.

Ältere IMEs funktionieren nicht in Windows Store Apps, um das Potenzial für schlechte Benutzererfahrungen zu vermeiden, einschließlich Systemstopps. IMEs, die mit den Windows Store-Apps kompatibel sind, müssen sich selbst deklarieren, indem sie ein Flag festlegen, das diese Kompatibilität angibt. Dieses Flag wird von TSF in der TF _ INPUTPROCESSORPROFILE-Struktur bereitgestellt. Details zur Verwendung dieses Flags zum Deklarieren einer IME eines Drittanbieters als Windows Store-app-kompatibel werden dokumentiert und öffentlich in den IME-Richtlinien Windows 8 veröffentlicht.

IMEs, die mit Windows Store-Apps kompatibel sind, können entweder in Desktop-Apps oder in Windows Store ausgeführt werden. ImEs, die nicht kompatibel sind, können nur in Desktopprozessen ausgeführt werden.

User interface (Benutzeroberfläche)

Obwohl IMEs von Drittanbietern Zugriff auf Desktopfenster-APIs haben, müssen sie die gleichen Fenster-API-Einschränkungen wie die App befolgen, in der sie ausgeführt werden. Ein IME kann z. B. nicht auf einer App Windows Store, während er in einer Desktop-App aktiv ist. API-Einschränkungen sind darauf ausgerichtet, diese Szenarien zu verhindern:

  • Desktop-Apps, die den Fokus von Windows Store-Apps erhalten
  • Zeichnen von Desktop-Apps in Windows Store-App
  • Desktop-Apps, die Windows Store haben

Unterstützung der Bildschirmtastatur

Obwohl die Unterstützung der Tastatureingabe (TKB) weiterhin für IME-Drittanbieter verfügbar ist, wird in diesem Bereich keine vollständig anpassbare und integrierte Touchtastatur Windows 8. ImEs von Drittanbietern können ihre IMEs jedoch dem tastaturspezifischen Layout zuordnen, das für Toucheingabe optimiert ist. Der Windows Soft Input Panel (SIP) bietet standardmäßig ein klassisches Tastaturlayout für IMEs von Drittanbietern. Da die klassische Tastatur Tastenereignisse generiert, die der Funktionsweise einer Hardwaretastatur ähneln, besteht derzeit keine besondere Implementierungsanforderung für IMEs von Drittanbietern, um mit einer Touchtastatur zu arbeiten. Die Eingabebehandlung für Hardwareschlüsselereignisse verarbeitet auch wichtige Ereignisse aus klassischen Touchlayouts.

Hinweis

Hinweis: IMEs müssen möglicherweise mit der Behandlung von Unicode-Eingabeereignissen beginnen, wenn die TKB-Unterstützung erweitert wurde, um auch optimierte Tastaturlayouts einzubeziehen.

Ein Drittanbieter-IME kann das optimierte Tastaturlayout für seine IME verwenden. Weitere Informationen finden Sie in der IME-Richtlinie von Drittanbietern.

Stellen Sie sicher, dass die Benutzeroberfläche Ihres Kandidatenbereichs (und andere Benutzeroberflächenelemente) nicht unter der Touchtastatur gezeichnet werden. In den meisten Fällen sollte die App die Größe ihres Fensters ändern, um die Touchtastatur zu berücksichtigen. Wenn eine App dies jedoch nicht tut, können IMEs weiterhin die InputPaneFramework-API verwenden, um die Position der Touchtastatur zu erlernen. ImEs von Drittanbietern können diese API verwenden, um den von der Touchtastatur genutzten Bildschirmbereich vor dem Zeichnen von Kandidatenbenutzeroberflächen (oder anderen) Benutzeroberflächen abzurufen, und ihre Benutzeroberfläche neu zuflowen, um zu vermeiden, dass sie unter der Touchtastatur zeichnen.

Suche

In Windows 8 können Windows Store-Apps ihren Benutzern problemlos Suchfunktionen bereitstellen, indem sie den Suchvertrag implementieren und in den Suchbereich integrieren. Der Suchbereich ist ein zentraler Ort, an dem Benutzer Suchvorgänge für alle ihre Apps ausführen können. Windows hilft Apps, die den Suchbereich verwenden, ihre Benutzer so schnell wie möglich an den gewünschten Ort zu bringen. Insbesondere für IME-Benutzer bietet es eine einzigartige Suchfunktion, mit der kompatible IMEs in die Windows 8 integriert werden können, um eine höhere Effizienz und Benutzerfreundlichkeit zu erzielen.

Eine IME ist mit der integrierten Suchfunktion kompatibel, wenn sie diese Kriterien erfüllt:

  • Ist mit der Windows Store-App-Umgebung kompatibel
  • Implementiert APIs im TFS-Modus "UILess"
  • Implementiert TFS-Suchintegrations-APIs:
    • ItfSearchCandidateProvider
    • ItfSearchHardwareKeyboardBehaviors

Wenn die kompatible IME im Suchbereich aktiviert wird, wird sie in den Modus "UILess" versetzt und kann ihre Benutzeroberfläche nicht anzeigen. Stattdessen werden Konvertierungskandidaten an Windows gesendet, die sie dann im Inline-Kandidatenlisten-Steuerelement anzeigen.

Die IME sendet auch Windows Kandidaten, die zum Ausführen der aktuellen Suche verwendet werden sollen. Diese Kandidaten können mit den Konvertierungskandidaten identisch sein oder für die Suche angepasst werden. Gute Suchkandidaten erfüllen diese Kriterien:

  • Keine Präfixüberlappung
  • Kein Vorhersagekandidat (nur Abschluss)

IMEs, die die Kriterien nicht erfüllen und nicht mit der Suche kompatibel sind, werden auf die gleiche Weise wie in anderen Windows Store App-Steuerelementen angezeigt und können die Benutzeroberflächenintegration und Suchkandidaten nicht nutzen. (Apps empfangen Abfragen erst, nachdem der Benutzer die Erstellung abgeschlossen hat.)

Wenn eine App, die den Suchvertrag unterstützt, eine Abfrage empfängt, enthält das Abfrageereignis ein "queryTextAlternatives"-Array, das alle bekannten Alternativen enthält, die von den relevantesten (wahrscheinlich) bis zu den am wenigsten relevanten (unwahrscheinlichen) Alternativen sortiert sind. Wenn Alternativen bereitgestellt werden, sollte die App jede Alternative als Abfrage behandeln und alle Ergebnisse zurückgeben, die mit einer der Alternativen übereinstimmen (als ob der Benutzer mehrere Abfragen gleichzeitig ausgegeben hätte), und im Wesentlichen eine "oder"-Abfrage an den Dienst ausgeben, der die Ergebnisse bereitstellt. Um die Leistung zu verbessern, beschränken Apps den Abgleich häufig auf die 10 relevantesten Alternativen.

Digitale IME-Signatur

Alle IMEs von Drittanbietern müssen digital signiert sein, damit sie als IME auf dem Windows 8 System installiert werden können. Mit SmartScreen können Benutzer eine Warnmeldung sehen, wenn sie eine nicht signierte IME aus dem Web herunterladen. So rufen Sie ein Zertifikat ab und signieren Ihre Dateien:

  • Verwenden einer Authenticode-Signatur zum digitalen Signieren von Programmen
  • Sicherstellen, dass Downloads nicht als Schadsoftware erkannt werden
    • Heruntergeladene Programme, die als Schadsoftware erkannt und bestätigt werden, wirken sich sowohl auf den Ruf des Downloads als auch auf den Ruf des digitalen Zertifikats aus, das zum Signieren dieser Datei verwendet wird.
  • Windows Zertifizierung beantragen
    • Besuchen Sie die Seite Windows App-Zertifizierung auf MSDN.

Weitere Informationen finden Sie in den folgenden Artikeln zu digitalen Signaturen und codesignieren:

Wenn eine IME nicht signiert ist, erhält der Benutzer diese Warnmeldung, wenn er versucht, die IME herunterzuladen:

ime is not signed warning message (Ime ist keine signierte Warnmeldung)

Wenn eine IME signiert ist, wird Benutzern stattdessen die folgende Meldung angezeigt:

ime is signed message (Ime ist signierte Nachricht)

Basierend auf diesen Benachrichtigungen können Benutzer auswählen, ob die Datei gelöscht oder die Warnung ignoriert und das heruntergeladene Programm ausgeführt werden soll.

IME-Sperrung

IMEs, die schädlich sind oder nicht den Windows 8 IME-Richtlinien entsprechen, können mithilfe von Windows Defender aus dem System entfernt werden. Weitere Informationen zu schädlichen IMEs finden Sie im Artikel zu IMEsvon Drittanbietern in Windows 8 .

Ressourcen