• Viernes 19 de Abril de 2024, 06:08

Autor Tema:  Error de referencia no asignada al usar SpeechSynthesizer  (Leído 1354 veces)

Geo

  • Miembro de PLATA
  • *****
  • Mensajes: 1011
  • Nacionalidad: mx
    • Ver Perfil
    • http://hsblog.mexchip.com
Error de referencia no asignada al usar SpeechSynthesizer
« en: Martes 18 de Enero de 2011, 07:28 »
0
Qué tal, acabo de instalar Visual Studio 2010 y estoy intentando ejecutar un ejemplo de síntesis de voz, hago lo siguiente:

1. Creo un nuevo proyecto Windows Forms
2. Agrego una referencia a Speech.Synthesis
3. Agrego un botón con este código al hacer clic:

Código: C#
  1.             try
  2.             {
  3.                 SpeechSynthesizer speaker = new SpeechSynthesizer();
  4.                 speaker.Rate = 1;
  5.                 speaker.Volume = 100;
  6.                 speaker.Speak("Hello");
  7.                 //speak.SpeakAsync("Hello world, how are you doing");
  8.             }
  9.             catch (Exception ex)
  10.             {
  11.                 MessageBox.Show(ex.Message);
  12.             }
  13.  
  14.  
Pero siempre obtengo el mensaje de excepción "Object reference not set to an instance of an object". El ejemplo es muy sencillo, basado en varios que he encontrado en la red pero no entiendo la razón del error, se supone que speaker debe haber sido correctamente instanciado tras la instrucción new.

Espero su ayuda, cualquier comentario es bienvenido.
La imaginación es el límite.
Hardware & Software | Mexchip

tannke

  • Miembro MUY activo
  • ***
  • Mensajes: 152
  • Nacionalidad: es
    • Ver Perfil
Re: Error de referencia no asignada al usar SpeechSynthesizer
« Respuesta #1 en: Martes 18 de Enero de 2011, 22:44 »
0
Dos cosas a tener en cuenta, yo lo prové y funciona bien,

1º En la parte alta de tu codigo pusiste el using?
Código: C#
  1. using System.Speech.Synthesis;
  2.  

2º Has referenciado la libreria?
       -esto se hace arriba a la derecha en el "Explorador de soluciones" tienes que darle (boton derecho) a "references" y le das a "Agregar referencia", una vez ahi tienes que buscar la libreria "System.Speech" y agregarla.

saludos

Geo

  • Miembro de PLATA
  • *****
  • Mensajes: 1011
  • Nacionalidad: mx
    • Ver Perfil
    • http://hsblog.mexchip.com
Re: Error de referencia no asignada al usar SpeechSynthesizer
« Respuesta #2 en: Martes 18 de Enero de 2011, 22:55 »
0
Gracias por la respuesta, y si a ambas preguntas, ya incluí la instrucción using y también agregué la referencia a System.Speech. El programa se genera sin problemas, el detalle está al momento de querer utilizar las propiedades o métodos de speaker. Incluso descargué un código de ejemplo de un artículo que usa el framework .net 4, y me ocurre el mismo detalle, estoy más por el lado de que hay algún problema en mi instalación, porque de plano no doy  :brickwall:.

¿Saben de algún requerimiento en específico para poder utilizar System.Speech.Synthesis?
La imaginación es el límite.
Hardware & Software | Mexchip