Make Your Computer Talk

Introduction: Make Your Computer Talk

About: High schooler, Programmer, Gamer

Step 1: Open Notepad

Open up Notepad on your windows xp, windows 7, or windows 8 computer.

Step 2: The Code

Type this into Notepad:

Dim text, sapi
text=inputbox("enter text to be spoken")
Set sapi=Createobject("sapi.spvoice")
sapi.Speak text

Now what does this mean?
-When you execute this script it first creates a input box which is recognized as "text".
-Then the script sets up the sapi so we can now use it (this what will speak)
-Lastly it takes what was typed into input box "text" and sends it to the sapi to be spoken.

Step 3: Save Your File

Now you need to save your file.

First Click file>save as...

Next choose any file name but be sure to put .vbs afterwards. Ex. Filename.vbs

Then be sure to click next to Save as type: and then in the drop down menu click All Files

Click save.

Step 4: Execute Your File

The last step is to locate where you saved your file and double click it.

In the input field enter something and click ok.

Congratulations! You just made your computer talk!

Other notes:
• this is written in a Visual Basic scripting language (vbs)
• this only works with windows xp and higher
• if your having trouble or have questions feel free to ask me in the comments.



  • Fix It! Contest

    Fix It! Contest
  • Water Contest

    Water Contest
  • Tiny Home Contest

    Tiny Home Contest

26 Discussions

sir what i have to do after saving the word to be spoken

hi.Thank you but I got an error message saying;Object doesn't support this property or method:"Setsapi". Code 800AO1B6



It's not working on my computer and giving an error.
Windows can't find c/users /hp/desktop/hello.vbs make sure you typed the name correctly and then try again
What should I do??

1 reply

Follow these codes:------

Dim Message, Speak

Message=InputBox("Enter text","Speak")

Set Speak=CreateObject("sapi.spvoice")

Speak.Speak Message

Its not working on my bank computer nd giving an error
Windows can't find C/users/hp/desktop /hello.vbs. Make sure you typed the name correctly and then try again

What should I do???

When I first tried to run the program I received an error message because I typed in a .(period) instead of a ,(comma) on the first line.

Dim text. sapi

Line: 1

Char: 9

Error Expected end of statement

Code: 800A0401

Source: Microsoft VBScript compilation error.

It's supposed to be

Dim text,sapi

(Use a comma instead of a period)

Yah........... My stuff is better......

Sorry, I followed your directions, I can't get this to work, I had a error saying something about a script host error. I'm sure I did something wrong, I need a more defined step by step way to do this. I was at a friends home, he has his computer calling him "master, good morning what shall I do for you today? This software made his computer act and react like he was talking to a human, so cool. I don't remember the name of the software though. I am running windows 7 service pack one enterprize. Thank you in advance for any help you may be able to give me to get this off the ground level, I would really appreciate that. Ray

3 replies

Thank you for sharing this information , From long time I am trying find solution how to speak up computer
. At last I got this in your web site . thank you for sharing this kind of information with us . try to keep this , thank you .


2 years ago

hey i dont get how u do it ps make it easy

Ok I've made it , but how do you get to tell you to do something at a specific time ? How do the end ifs work ?

is there any way to make your computer do this when you open it every time or when you walk in your room. Say, if this motion sensor works run the file

1 reply

You can have it run when you start your computer but I don't know about using a motion sensor. In windows 7 you can do this by placing the file in the startup folder. See this link for a better explanation

Your welcome! Glad you like it.

We can easily keep the the box open by creating a loop. Simply put the word "Do" without quotes in front of the rest of the code, and end with "loop until text = false" I hope this isn't to confusing.