问题描述
我正在做一个助手,我希望它打开应用程序。它只会打开某些应用程序,例如chrome.exe(Chrome)和devenv.exe(Visual Studio)。
我还有4个应用程序,分别是Spotify.exe(Spotify),discord.exe(discord),obs64.exe(OBS Studio)和Steam.exe(Steam)。当我告诉助手打开该特定应用程序时出现错误:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Speech.Synthesis;
using System.Speech.Recognition;
using System.Media;
using System.Diagnostics;
namespace Assistant
{
public partial class Form1 : Form
{
SpeechSynthesizer ZeroTwo;
SpeechRecognitionEngine ZeroTwoears;
Soundplayer ZeroTwoGreeting;
Grammar ZeroTwoGrammar;
bool ZeroTwoSearch = false;
public Form1()
{
InitializeComponent();
// Sound player
ZeroTwoGreeting = new Soundplayer(@"c:/Users/User/Desktop/Zero Two Sound Files/dahling ohaio.wav");
// Speech Synthesizer
ZeroTwo = new SpeechSynthesizer();
// Speech Recognition
ZeroTwoears = new SpeechRecognitionEngine();
Choices list = new Choices();
list.Add(new string[] {
// Greetings
"Ohaio,zero two",// Google search
"Zero two,search for",// Open apps
"Zero two,open discord","Zero two,open google",open visual studio",open spotify",open steam",open obs"
} );
ZeroTwoGrammar = new Grammar(new GrammarBuilder(list));
try
{
ZeroTwoears.RequestRecognizerUpdate();
ZeroTwoears.LoadGrammar(ZeroTwoGrammar);
ZeroTwoears.SpeechRecognized += ZeroTwoears_SpeechRecognized;
ZeroTwoears.SetInputToDefaultAudioDevice();
ZeroTwoears.RecognizeAsync(RecognizeMode.Multiple);
}
catch { }
}
private void ZeroTwoears_SpeechRecognized(object sender,SpeechRecognizedEventArgs e)
{
String ZamdiesLines = e.Result.Text;
button1.Text = ZamdiesLines;
if (ZeroTwoSearch == true)
{
ZeroTwoGreeting.Play();
Process.Start("https://www.google.com/search?q=" + ZamdiesLines);
button1.Text = "Searched!";
ZeroTwoSearch = false;
}
if (ZamdiesLines == "Zero two,search for")
{
ZeroTwoSearch = true;
ZeroTwoGreeting.Play();
button1.Text = "fired!";
}
if (ZeroTwoSearch == false)
{
switch (ZamdiesLines)
{
case ("Ohaio,zero two"):
ZeroTwoGreeting.Play();
break;
case ("Zero two,open discord"):
ZeroTwoGreeting.Play();
Process.Start("discord.exe");
break;
case ("Zero two,open google"):
ZeroTwoGreeting.Play();
Process.Start("chrome.exe");
break;
case ("Zero two,open visual studio"):
ZeroTwoGreeting.Play();
Process.Start("devenv.exe");
break;
case ("Zero two,open spotify"):
ZeroTwoGreeting.Play();
Process.Start("Spotify.exe");
break;
case ("Zero two,open steam"):
ZeroTwoGreeting.Play();
Process.Start("Steam.exe");
break;
case ("Zero two,open obs"):
ZeroTwoGreeting.Play();
Process.Start("obs64.exe");
break;
}
}
}
}
}