2016-10-05 2 views
0

Die SAPI-Dokumentation behandelt das Erstellen und Löschen eines Erkennungsprofils. Aber wie kann ich das mit SpeechLib machen? Ich möchte:SAPI-Spracherkennung - Erstellen und Löschen von Erkennungsprofilen mit SpeechLib

  1. Finden Sie das derzeit aktive Profil, und notieren Sie es.
  2. Erstellen Sie ein neues Profil.
  3. Machen Sie das neue Profil zum aktiven Profil.

Wenn meine Anwendung zu verlassen:

  1. das Profil löschen, die ich geschaffen habe.
  2. Setzen Sie das aktive Profil auf das zurück, was es vor dem Start meiner App war.

BTW: Ist SpeechLib dokumentiert?

Antwort

1

Die SpeechLib-Dokumentation finden Sie, indem Sie nach SAPI Automation interfaces suchen.

Profile sind eine Art von SpObjectToken und können mit dem Objekt SpObjectTokenCategory aufgelistet werden. Erstellen Sie speziell ein neues SpObjectToken, legen Sie die ID fest und verwenden Sie EnumerateTokens, um die Profile abzurufen. (In diesem Beispiel wird VB, aber Sie sollten zu übersetzen fähig sein)

Dim E As SpeechLib.ISpeechObjectTokens  'an enumeration of object tokens 
Dim C As SpeechLib.SpObjectTokenCategory 'a category of object tokens  
Set C = New SpObjectTokenCategory 
C.SetId SpeechCategoryRecoProfiles 
List1.AddItem " " & C.Id 
Set E = C.EnumerateTokens() 

For Each T In E 
    List1.AddItem " " & T.GetDescription 
Next 
+0

OK, aber nach SpObjectToken zu schaffen, wie kann ich es mache ein „neues“ installiert Profil, so wird es in der Systemsteuerung mit einer eigenen erscheinen Name? – Bohoo

+0

Legen Sie die Beschreibung mit 'SpObjectToken.DataKey.SetStringValue (NULL, szBeschreibung)' fest. –

+0

Zuerst muss ich die Kategorie festlegen und MyNewProfile.Category.SetId (SpeechStringConstants.SpeechCategoryRecoProfiles) gibt einen Fehler aus. – Bohoo

Verwandte Themen