![]() |
Delphi-Version: XE
Sprachausgabe funktioniert nur im Debug-Modus
Hi,
Der folgende Code zur Sprachausgabe funktioniert im Debug-Modus problemlos und wenn man die exe-Datei direkt aus dem Explorer startet gibt es eine "ungültige Gleitkommadivision" bzw. eine "Division durch Null" als Fehler. Kann mir jemand sagen warum das so ist und wie ich diesen Fehler beheben kann?
Delphi-Quellcode:
Getestet mit Delphi XE und Delphi 2007.
var
voice: OLEVariant; begin voice := CreateOLEObject('SAPI.SpVoice'); voice.speak('Hello World!', 0); end; |
AW: Sprachausgabe funktioniert nur im Debug-Modus
Hallo luke2,
verwendest Du Win 7, so gibt es Probleme, unter XP (oder XP-Mode) sollte es eigentlich funktionieren. Bis bald Chemiker |
AW: Sprachausgabe funktioniert nur im Debug-Modus
Ja, ich benutze Win7 (x64). Schade.
Gibt es auch unter Win7 die Möglichkeit einer stabilen Sprachausgabe? |
AW: Sprachausgabe funktioniert nur im Debug-Modus
Hallo luke2,
ich habe das nicht weiter verfolgt, weil es nicht möglich war eine deutsche Ausgabe mit Win 7 zu realisieren(oder nicht so einfach), allerdings kann sich das Mittlerweile geändert haben. Bis bald Chemiker |
AW: Sprachausgabe funktioniert nur im Debug-Modus
OK, Danke Chemiker. Dann werde ich mal suchen.
|
AW: Sprachausgabe funktioniert nur im Debug-Modus
Hier habe ich was gefunden:
![]()
Code:
Das speak im obigen Beispiel funktioniert nur, solange es nicht asynchron (Parameter 1 statt 0) aufgerufen wird, weil das Objekt am Ende der Prozedur aufgeräumt wird, noch bevor der Rechner zu Sprechen begonnen hat. Also ganz so wie hier im Beispiel sollte man es nicht umsetzen ;)
procedure TForm1.Button1Click(Sender: TObject);
var voice: OLEVariant; SavedCW: Word; begin voice := CreateOLEObject('SAPI.SpVoice'); SavedCW := Get8087CW; Set8087CW(SavedCW or $4); voice.speak('Hello World!', 0); // Funktioniert nur, solange hier 0 steht Set8087CW(SavedCW); end; Müßte man nicht eigentlich beim Programmstart noch ein CoInitialize(nil) machen? Gruß Michael |
AW: Sprachausgabe funktioniert nur im Debug-Modus
Super, Vielen Dank grizzly, damit funktioniert es :thumb:
|
AW: Sprachausgabe funktioniert nur im Debug-Modus
Zitat:
Bernhard |
AW: Sprachausgabe funktioniert nur im Debug-Modus
Funktioniert doch nicht so ganz, nach ein paar Aufrufen kommt der gleiche Fehler... :(
|
AW: Sprachausgabe funktioniert nur im Debug-Modus
Hast du dir das Tutorial schon einmal angesehen
![]() Das funktioniert bei mir super, auch unter Win7 64bit. Viele Grüße... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:54 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz