Autor
|
Tema: ayuda en VB.NET (Leído 3,121 veces)
|
**Aincrad**
|
hola a todos. bueno tengo un pequeño problemilla. tengo el siguiente code: Const SAFT48kHz16BitStereo = 39 Const SSFMCreateForWrite = 3 Dim oFileStream, oVoice Set oFileStream = CreateObject("SAPI.SpFileStream") oFileStream.Format.Type = SAFT48kHz16BitStereo oFileStream.Open "C:\Work\Sample.wav", SSFMCreateForWrite ' Aqui el directorio que quiero cambiar por un SaveFileDialog1.FileName Set oVoice = CreateObject("SAPI.SpVoice") Set oVoice.AudioOutputStream = oFileStream oVoice.Speak(ben.Text, 3) oVoice.WaitUntilDone(10000) oFileStream.Close
y lo que quiero es cambiar ese directorio por un SaveFileDialog1.FileNamey me quedaria algo como esto: Const SAFT48kHz16BitStereo = 39 Const SSFMCreateForWrite = 3 SaveFileDialog1.DefaultExt = ".wav" Dim oFileStream, oVoice Set oFileStream = CreateObject("SAPI.SpFileStream") oFileStream.Format.Type = SAFT48kHz16BitStereo oFileStream.Open SaveFileDialog1.FileName, SSFMCreateForWrite Set oVoice = CreateObject("SAPI.SpVoice") Set oVoice.AudioOutputStream = oFileStream oVoice.Speak "Hello world", 3 oVoice.WaitUntilDone(10000) oFileStream.Close
no se si me explique , en pocas palabras lo que quiero es aplicar el SaveFileDialog1.FileName al primer code que puse , pero no logro hacerlo , disculpen mi ignorancia. gracias de antemano.
|
|
|
En línea
|
|
|
|
Serapis
|
De entrada, quiero reprenderte, por estas razones: 1º - Veo que no eres nuevo en el foro (tienes ya 175 mensajes publicados en el foro), pero el título del tema, no dice nada, los títulos de los temas DEBEN SER DESCRIPTIVOS del problema en cuestión. Decir "Ayuda..." es nada. El buscador del foro, es completamente inútil con títulos así. 2º - De hecho es probable que tu pregunta ya esté explicada en este mismo foro, más de 1 ó 5 veces. Creo que no has usado el buscador del foro... 3º - De hecho es tan genérica que puedo asegurarte que hay miles de ejemplos buscando por google "ejemplo para usar el control SaveFileDialog en VB.NET", tampoco te has tomado la molestia de buscar en la red de forma genérica con google (u otro buscador de tu elección).
Cuando se hagan preguntas en un foro, tiene uno al menos que haber investigado por su cuenta, y sólo cuando no haya logrado nada al respecto (casos de temas complejos, nuevos, o muy específicos que escapen de la generalidad), es cuando es razonable preguntar en un foro en busca de ayuda. Pero el primer punto de la ayuda, debe ser buscarla por uno mismo: 1º - En la ayuda que el propio programa-entorno contenga. 2º - En la web propia del lenguaje que uno usa (en este caso concreto Microsoft.com) 3º - En los buscadores de internet (Google it's your friend and wikipedia your cousin, my brother). 4º - En el buscador del foro. 5º - Si todo lo anterior fracasa, es cuando procede hacer una consulta en el foro, pero además bien formulada y con un título claramente descriptivo (lo de breve si es posible, y en el sitio correcto, en eso aciertas).
Así que no voy a ayudarte con el tema, y preferiría que tampoco lo hiciera ningún compañero...
|
|
|
En línea
|
|
|
|
**Aincrad**
|
bueno , acepto todo lo que mes has dicho como critica constructiva . de verdad admito que fuy un poco flojo acerca de el titulo. y acerca del code ya lo he logrado , bueno ha quedado asi: Const SAFT48kHz16BitStereo = 39 Const SSFMCreateForWrite = 3 Dim oFileStream, oVoice Dim saveFileDialog2 As New SaveFileDialog() saveFileDialog2.Filter = "WAV Sound|*.wav" saveFileDialog2.Title = "Save an sound File" saveFileDialog2.ShowDialog() Try oFileStream = CreateObject("SAPI.SpFileStream") oFileStream.Format.Type = SAFT48kHz16BitStereo oFileStream.Open(saveFileDialog2.FileName, SSFMCreateForWrite) oVoice = CreateObject("SAPI.SpVoice") oVoice.AudioOutputStream = oFileStream oVoice.Speak(ben.Text, 3) oVoice.WaitUntilDone(10000) oFileStream.Close() Catch ex As Exception MsgBox(ex.Message) End Try
|
|
« Última modificación: 13 Noviembre 2017, 17:06 pm por **Aincrad** »
|
En línea
|
|
|
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.885
|
Aparte de todo lo que te ha dicho el compañero @ NEBIRE, cosa en la que concuerdo completamente... CreateObject("SAPI.SpFileStream")
...No existe una necesidad real de recurrir a código no administrado, y aparte lo estás haciendo al estilo obsoleto, inseguro y limitado de VB6/VBS, para eso sinceramente no conviene usar .NET, por que no le estás sacando ningún beneficio real. Deberías evitar copiar el primer código que te encuentres en Internet para VB6 o VBS, e intentar buscar soluciones más actualizadas que hagan uso de los miembros equivalentes para .NET Framework ( System.Type.GetTypeFromProgID() + System.Activator.CreateInstance() + Implementación de interfaces nativas ), no es tan dificil investigar bien... en general debes evitar usar en lo máximo posible los miembros del espacio de nombres Microsoft.VisualBasic, por que el 80% aprox del contenido son miembros que están ahí simplemente por compatibilidad en temas de migración de VB6 a VB.NET, pero cuyo código fuente de todos esos miembros, aunque sea una implementación en código .NET apesta, es un código muy poco óptimo y miembros muy limitados en comparación (puedes observar las diferencias analizando la referencia online del código fuente de .NET Framework). Si quieres hacer de forma correcta, segura y sofisticada lo que pretendes hacer, entonces usa la implementación administrada de Microsoft Speech API (SAPI) para .NET. Aquí tienes un ejemplo para sintetizar texto y guardarlo en un archivo WAV: PD: La documentación de MSDN es tu mejor amiga... cuando no sepas algo, busca ahí. Saludos.
|
|
« Última modificación: 13 Noviembre 2017, 22:32 pm por Eleкtro »
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
[Ayuda] Necesito ayuda para crear un buen video uso AF y Flash.
Diseño Gráfico
|
XXXXXX
|
1
|
5,872
|
11 Noviembre 2009, 00:17 am
por Sub_Cero
|
|
|
Ayuda por davor ayuda os ruego ayuda XD (SOLUCIONADO)
Hardware
|
XxRekcahlExX
|
6
|
11,258
|
24 Mayo 2010, 00:56 am
por Aprendiz-Oscuro
|
|
|
AYUDA -.- ahora no entro más en 4chan (tengo una duda, ayuda por favor)
Foro Libre
|
Draklit
|
6
|
9,267
|
15 Octubre 2010, 03:14 am
por Draklit
|
|
|
[PYTHON][AYUDA][ERROR] Necesito ayuda para instalar PyGTK 2 en windows 7
Scripting
|
Noxware
|
2
|
8,440
|
20 Septiembre 2014, 00:05 am
por Noxware
|
|
|
[AYUDA] Ayuda para poner en modo monitor mi tarjeta de red! Kali LInux
GNU/Linux
|
Santi__
|
1
|
9,747
|
12 Noviembre 2016, 18:25 pm
por Will21
|
|