SAPI5.1 请看下面的代码到底有什么错误?万望高手指教.(100分)

  • 主题发起人 主题发起人 zhaofeng_z_f
  • 开始时间 开始时间
Z

zhaofeng_z_f

Unregistered / Unconfirmed
GUEST, unregistred user!
真的搞不懂,为什么保存的文件都是0字节.
代码1:
var
spFileStream1 := TSpFileStream;
spVoice1 := TSpVoice;
begin

spFileStream1 := nil;
spVoice1 := nil;
try
spFileStream1 := TSpFileStream.Create(Self);
spVoice1 := TSpVoice1.Create();
spFileStream1.Open('c:/voice/zf.avi',SSFMCreateForWrite,False);
spVoice1.AudioOutputStream := spFileStream1.DefaultInterface;
spVoice1.Speak('中国',SVSFlagsAsync or SVSFPurgeBeforeSpeak or SVSFIsXML);
spVoice1.WaitUntilDone(-1);
spFileStream1.Close();
finally
if (spFileStream1 <> nil) then

spFileStream1.Free();
if (spVoice1 <> nil) then

spVoice1.Free();
end;

end;


代码2(类似sapi vb的例子)
var
spFileStream1 :SpFileStream;//接口
spVoice1 :SpVoice;
begin

spFileStream1 := CreateOleObject("SAPI.SpFileStream");
spVoice1 := CreateOleObject("SAPI.spVoice");
spFileStream1.Open('c:/voice/zf.avi',SSFMCreateForWrite,False);
spVoice1.AudioOutputStream := spFileStream1;//报错
spVoice1.Speak('中国',SVSFlagsAsync or SVSFPurgeBeforeSpeak or SVSFIsXML);
spVoice1.WaitUntilDone(-1);
spFileStream1.Close();
end;

 
你的代码错误很多(如果是Delphi的),变量定义的地方就错了,呵呵
你用的是什么控件,我对这方面没研究,不会这个问题,对不起,只能帮你提前一下
 
谢谢仙剑奇侠,打字打的太快了,不过应该不影响解决问题。
 
后退
顶部