मैंने निम्नलिखित कोड के साथ अभी कोशिश की है (Vista होम प्रीमियम पर डी 200 9) और यह काम करता है!
कारण है कि यह Vista में काम करते हैं और नहीं दे सकता है एक EZeroDivide के लिए:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComObj;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
Voice: Variant;
begin
Voice := CreateOLEObject('SAPI.SpVoice');
Voice.speak('Hello World');
end;
end.
FYI करें, वहाँ एक nice paper on using speech in Delphi programming ब्रायन लांग द्वारा ...
(बहुत) देर अद्यतन है आईडीई के बाहर अपवाद, यह अन्य SO प्रश्न देखें: Delphi SAPI Text-To-Speech
स्रोत
2008-10-16 08:00:19
धन्यवाद François। यह आपके द्वारा सुझाए गए पेपर में घटक के साथ काम करता है (http://www.blong.com/Conferences/DCon2002/Speech/SAPI51/SAPI51.htm) –