关于vs2010中SpeechLib库语音播报功能

出现异常“没有注册类 (异常来自 HRESULT:0x80040154 (REGDB_E_CLASSNOTREG))”,该怎么处理

代码

public void Speak(string item)
{
SpVoice voice = new SpVoice();
voice.Rate = -2;
voice.Voice = voice.GetVoices(string.Empty, string.Empty).Item(0);
voice.Speak(item, SpeechVoiceSpeakFlags.SVSFDefault);
}

                    private void button1_Click(object sender, EventArgs e)
    {
        for (int i = 0; i < dataGridView1.RowCount - 1; i++)
        {
            string name = dataGridView1.Rows[i].Cells[0].ToString();
            Speak(name);
        }

    }

代码

public void Speak(string item)
{
SpVoice voice = new SpVoice();
voice.Rate = -2;
voice.Voice = voice.GetVoices(string.Empty, string.Empty).Item(0);
voice.Speak(item, SpeechVoiceSpeakFlags.SVSFDefault);
}

                    private void button1_Click(object sender, EventArgs e)
    {
        for (int i = 0; i < dataGridView1.RowCount - 1; i++)
        {
            string name = dataGridView1.Rows[i].Cells[0].ToString();
            Speak(name);
        }

    }