2000/NT/XP'de Delphi ile OLE nesnesini aşağıdaki gibi oluşturarak yaptım:Vista'da konuşma metni
Voice := CreateOLEObject('SAPI.SpVoice');
Voice.speak(...)
Ancak bu Vista'da çalışmaz, programımı Vista'da nasıl yazabilirim?
2000/NT/XP'de Delphi ile OLE nesnesini aşağıdaki gibi oluşturarak yaptım:Vista'da konuşma metni
Voice := CreateOLEObject('SAPI.SpVoice');
Voice.speak(...)
Ancak bu Vista'da çalışmaz, programımı Vista'da nasıl yazabilirim?
Sadece aşağıdaki kod ile (Vista Home Premium'da D2009) denedim ve işe yarıyor! bir EZeroDivide Vista'da çalışan ve vermek neden yayınlanmadığını için
:
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.
Bilginize, bir Brian Long tarafından nice paper on using speech in Delphi programming ...
(Çok) Geç Güncelleme yoktur IDE dışındaki istisnai diğer soruya bakın: Delphi SAPI Text-To-Speech
Kağıt için teşekkürler. Ancak, gösterdiğiniz kodu çalıştırarak, Vista'da "Sıfır noktası ayırma sıfıra" hatası alıyorum. Vista'da test ettin mi? (Windows XP'de BDS2006 ile kurdum ve Vista'da çalıştırılabilir çalıştırdım) –
Vista'da (aynı makinede) –
teşekkürler ve test ettim François. Bu bir bileşene çalışır önerdiğiniz kağıt (http://www.blong.com/Conferences/DCon2002/Speech/SAPI51/SAPI51.htm) –
teşekkürler François. Bileşenle önerdiğiniz bir kağıtta çalışır (http://www.blong.com/Conferences/DCon2002/Speech/SAPI51/SAPI51.htm) –