• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

TTS - brakujące metadane

VPS Starter Arubacloud
0 głosów
599 wizyt
pytanie zadane 22 maja 2022 w C# przez Mariusz M Obywatel (1,640 p.)
using System;
using System.Speech.Synthesis;
using System.IO;
namespace NamespaceName
{
	public class ClassName
	{
		public static void Main(string[] args)
		{
			string path;
			SpeechSynthesizer synth = new SpeechSynthesizer();
			synth.SetOutputToDefaultAudioDevice();
			synth.SelectVoice("Microsoft Paulina Desktop");
			Console.WriteLine("Podaj sciezke do pliku ktory chcesz wczytac");
			path = Console.ReadLine();
			try
			{
				using(StreamReader sr = new StreamReader(path)){
					string line;
					while((line = sr.ReadLine()) != null){
						synth.Speak(line);
					}
					
				}
			}
			catch(Exception e)
			{
				Console.WriteLine("The file could not be read");
				Console.WriteLine(e.Message);
			}
			System.ReadKey()
		}
	}
}

 

Gdy próbuję skompilować ten kod poleceniem
csc /r:System.Speech.dll CzytajPlik.cs otrzymuję błąd

error CS0006: Nie można odnaleźć pliku metadanych „System.Speech.dll”.

O co chodzi z tym plikiem metadanych i jak to naprawić

komentarz 22 maja 2022 przez VBService Ekspert (251,210 p.)

BTW, w linii masz błąd, jest

System.ReadKey()

powinno być

Console.ReadKey();

 

komentarz 22 maja 2022 przez Mariusz M Obywatel (1,640 p.)
Ten błąd zauważyłem ale to nie rozwiązuje problemu

który pojawia się tylko przy kompilacji z linii poleceń

Dla projektu z Visual Studio znalazłem już rozwiązanie

1 odpowiedź

+2 głosów
odpowiedź 22 maja 2022 przez VBService Ekspert (251,210 p.)
edycja 22 maja 2022 przez VBService

Nie wiem, czy jedynym rozwiązaniem, jest podanie pełnej ścieżki do System.Speech.dll 

np. u Mnie wygląda to tak

csc /out:e:\code\app.exe /r:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.Speech.dll" e:\code\app.cs

 

komentarz 22 maja 2022 przez Mariusz M Obywatel (1,640 p.)
Tak to zadziałało
komentarz 22 maja 2022 przez VBService Ekspert (251,210 p.)
edycja 22 maja 2022 przez VBService

wink

using System;
using System.IO;
using System.Runtime.InteropServices;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            var framework_path = RuntimeEnvironment.GetRuntimeDirectory();
            var csc_path = Path.Combine(framework_path, "csc.exe");

            Console.WriteLine(framework_path);
            Console.WriteLine(csc_path);
            Console.WriteLine(RuntimeEnvironment.GetSystemVersion());

            Console.ReadKey();
        }
    }
}

 

Podobne pytania

0 głosów
1 odpowiedź 1,416 wizyt
0 głosów
1 odpowiedź 1,948 wizyt
pytanie zadane 10 września 2019 w JavaScript przez 42savage Bywalec (2,630 p.)
0 głosów
1 odpowiedź 281 wizyt
pytanie zadane 24 listopada 2018 w Systemy operacyjne, programy przez SzaaBao Początkujący (380 p.)

92,453 zapytań

141,262 odpowiedzi

319,088 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...