Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用文件目录以编程方式打开程序_C#_Registry - Fatal编程技术网

C# 如何使用文件目录以编程方式打开程序

C# 如何使用文件目录以编程方式打开程序,c#,registry,C#,Registry,我已经开发语音应用程序一段时间了,我想尝试一些不同的东西。我想打开程序,而不需要手动将程序中的类似内容写入代码: Process.Start("notepad.exe"); 我想知道如何使用文件目录执行程序,例如: string appPath = Path.GetDirectoryName(Application.ExecutablePath); 我想这样做的原因是我不知道客户机在计算机系统上会有什么程序。。我尝试过研究,我发现的一切都和我编程的方式一样 那么,有没有办法拉程序的可执行文件

我已经开发语音应用程序一段时间了,我想尝试一些不同的东西。我想打开程序,而不需要手动将程序中的类似内容写入代码:

Process.Start("notepad.exe");
我想知道如何使用文件目录执行程序,例如:

string appPath = Path.GetDirectoryName(Application.ExecutablePath);
我想这样做的原因是我不知道客户机在计算机系统上会有什么程序。。我尝试过研究,我发现的一切都和我编程的方式一样

那么,有没有办法拉程序的可执行文件并执行程序呢

完整示例:

if (speech == " ")
{
    Start.Process(Application.ExecutablePath);
}

还是有办法做到这一点?

好的,使用以下代码可以很容易地解决这一问题:

以下是如何获取所有exe应用程序 使用System.IO; 使用System.Windows.Forms

string appPath = Path.GetDirectoryName(Application.ExecutablePath);
下面的代码用于获取正在运行的应用程序 使用System.IO; 运用系统反思

string path = Path.GetDirectoryName(Assembly.GetAssembly(typeof(MyClass)).CodeBase);

现在,我可以使用GetProcess方法轻松地提取procId,以关闭打开的应用程序。

为什么这里需要“来自注册表”?当然,更明智的做法是检查“开始”菜单中安装的各种快捷方式?也就是说,这些是应用程序安装以允许用户启动程序的“入口点”。我不能要求每个安装程序的客户都给我一个开始菜单的列表。。我认为当安装了一个新的程序时,它会通过程序目录更容易。但是,出于我自己的目的,我可以手动放置每个程序,因为我知道我有哪些程序。。以你为例,我不知道你的电脑上有什么程序。那么,我如何让我的应用程序识别您的应用程序以及您安装的新应用程序呢?因此,通过这种方式,你可以说“打开(应用程序)”,看看Microsoft Speech、Cortana或其他语音激活程序。你认为你的程序能够扫描注册表以找到启动程序的正确路径(实际上,通常注册表中存储的唯一可执行信息是卸载程序的路径),但不知怎的,您认为您的程序无法搜索?好吧,让我们这样看。。如果我有程序,请阅读“开始”菜单。。那么你会如何获取信息。。我想我可以拉程序,比如说,我说“OpenAero”,然后它就会打开Aero,一个我创建的定制程序。然后我说接近。。您必须具有进程id。。那么哪一个更容易呢?另一种看待它的方式是,如果我添加一个新的应用程序,程序会识别新的应用程序吗?并执行命令打开,而无需我做更多的编码和更新。。看看Cortana,她是如何工作的,还有Speecha女士,我正在尝试建立一个自定义算法。其中包括作为受体神经元的注册。我们所做的一切都涉及到注册处,因为它是冰山一角的最深处。。我不想要一条容易的出路。。我想知道你是如何对注册表进行编程的。可以做到,但如何做到?与“Fn”键相同。它的硬件。但它起着开关的作用。使用什么代码操作开关?