Hello, I am testing a text to speech program working on Windows SAPI, and I encountered a problem that I can not set the Voice property because "member not found".
Below is the code which describe the problem. It is originally from the freepascal wiki (http://wiki.freepascal.org/SAPI) and slightly modified. Setting the voice property in this code is meaningless, I know. It is just to reproduce the problem. The SpVoice.Speak method itself works fine. I am working with fpc 3.0.0 on Windows 7 64bit. Any advice would be appreciated. Regards, Toru _______________________________________________ program TestSAPI; uses SysUtils, comobj; var SavedCW: Word; SpVoice: Variant; Token: Variant; begin SpVoice := CreateOleObject('SAPI.SpVoice'); // Change FPU interrupt mask to avoid SIGFPE exceptions SavedCW := Get8087CW; try Set8087CW(SavedCW or $4); Token := SpVoice.Voice; //I can get a voice token. Writeln(Token.GetDescription); //The token actually works. try SpVoice.Voice := Token; //"member not found" exception here. I can't set it. except on E:Exception do begin Writeln(E.Message); end; end; SpVoice.Speak('hi', 0); finally // Restore FPU mask Set8087CW(SavedCW); end; Readln; end. _______________________________________________ fpc-pascal maillist - [email protected] http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
