Oh great! It works this way. Teddy
----- Original Message ----- From: "Jan Dubois" <[EMAIL PROTECTED]> To: "'Sisyphus'" <[EMAIL PROTECTED]>; <[email protected]>; "'Jon Bjornstad'" <[EMAIL PROTECTED]> Sent: Tuesday, June 14, 2005 5:19 AM Subject: RE: Win32:OLE - Speech.VoiceText > On Mon, 13 Jun 2005, Sisyphus wrote: > > ----- Original Message ----- > On Tue, 14 Jun 2005, "Jon Bjornstad" <[EMAIL PROTECTED]> wrote: > > > > > This code: > > > > > > use Win32::Ole; > > > my $voice = Win32::Ole->new("Speech.VoiceText"); > > > $voice->Register('', 'Perl'); > > > $voice->speak("hello world"); > > > <STDIN>; # wait til it finishes speaking > > > > > > has been used succesfully on Windows98 (with the > > > Microsoft Speech SDK installed) and on Windows 2000 > > > (which has it installed by default, apparently). > > > > > > > Doesn't work for me on Windows 2000. Even after I correct the typos (both > > instances of "Ole" need to be replaced with "OLE") and 'use warnings;' all I > > get is: > > > > Win32::OLE(0.1502) error 0x8002000e: "Invalid number of parameters" > > in METHOD/PROPERTYGET "speak" at speak.pl line 5 > > > > Does 'use warnings;' result in the same warning on XP ? > > I think Speak() takes 2 arguments. At least it did when I played with it > for my OSCON talk in 1999: > > http://opensource.activestate.com/authors/jandubois/Perl/TPC3/fun.html#Can_I_access_COM_OLE_objects_f > > So try something like > > $voice->speak("hello world", 0); > > in the script above. > > Cheers, > -Jan > > > > _______________________________________________ > Perl-Win32-Users mailing list > [email protected] > To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs _______________________________________________ Perl-Win32-Users mailing list [email protected] To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs
