Ich schreibe ein benutzerdefiniertes Text-in-Sprache-Programm, das SAPI 5 verwendet, und ein Problem, das ich konfrontiert ist, ist die Aufzählung von Stimmen mit SpEnumTokens
und Iteration über sie erzeugt CSpDynamicString
Objekte.Wie konvertiere ich von CSpDynamicString in `char *` mit ATL?
Meine Frage ist, wie konvertiere ich CSpDynamicString
zu char *
so könnte ich printf
ihnen?
Es sieht so aus, als müsste ich eine Art Textkonvertierungs-Makro von ATL verwenden. Ich fand ein Beispiel, das dies tut (gegeben dstrDesc
ist CSpDynamicString
):
CSpDynamicString dstrDesc;
SpGetDescription(voiceToken, &dstrDesc);
USES_CONVERSION;
printf("%s\n", W2T(dstrDesc));
jedoch nur das druckt das erste Zeichen des Voice-Namen!
Irgendwelche Ideen?