【问题标题】:Using the SAPI object in Inno Setup在 Inno Setup 中使用 SAPI 对象
【发布时间】:2022-02-24 19:44:36
【问题描述】:

我想在安装过程中使用 Windows SAPI COM 对象发出声音。 我知道在 VBScript 中他们这样做:

Set oVoice = CreateObject("SAPI.SpVoice")
set oSpFileStream = CreateObject("SAPI.SpFileStream")
oSpFileStream.Open "xxx.wav"
oVoice.SpeakStream oSpFileStream
oSpFileStream.Close

我问,如何在 Inno Setup 脚本中执行此操作。 我对 Inno Setup 还很陌生,还没有学会如何使用 CreateOleObject 函数等等。 我试图了解 Inno Setup 文档,但对我没有帮助。 关于使用 COM 对象的其他答案也没有让我理解这一点。 感谢您的帮助

【问题讨论】:

    标签: inno-setup ole pascalscript


    【解决方案1】:

    使用CreateOleObject support function:

    var
      oVoice, oSpFileStream: Variant;
    begin
      oVoice := CreateOleObject('SAPI.SpVoice');
      oSpFileStream := CreateOleObject('SAPI.SpFileStream');
      oSpFileStream.Open('xxx.wav');
      oVoice.SpeakStream(oSpFileStream);
    end;
    

    Pascal Scripting: Using COM Automation objects


    有关替代解决方案,请参阅Playing sound during an Inno Setup install

    【讨论】:

    • 谢谢。我确实尝试过以这种方式工作,但与 VBScript 不同,其中代码是 oSpFileStream.Open "xxx.wav"空格,我必须使用 括号oSpFileStream.Open ('xxx.wav') 这让我很复杂.
    猜你喜欢
    • 1970-01-01
    • 2011-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多