C# Process.Start 路径
Posted
技术标签:
【中文标题】C# Process.Start 路径【英文标题】:C# Process.Start Path [duplicate] 【发布时间】:2014-09-02 15:43:20 【问题描述】:我目前有一个正常运行的程序,只需单击一个按钮即可启动一个单独的 .exe 文件。我创建的安装程序会询问他们想要安装的位置,默认情况下位于 fodler C:\Program Files\PRHA
。
启动程序的代码如下所示
private void ivClick(object sender, RoutedEventArgs e)
Process.Start("C:/Program Files/PRHA/IV/IV.exe");
我怎样才能让Process.Start
找到正在运行的应用程序的路径,所以如果用户决定安装在另一个目录中,Process.Start
仍然可以工作。
【问题讨论】:
您是否在 Visual Studio 中使用部署项目?还是定制安装程序? 我想知道的是,如果用户决定安装在另一个目录中,如何让 Process.Start 找到路径。 记住程序的安装位置,并使用它路径 两个 EXE 是否总是并排安装? 目前有一个名为 Install Creator 的安装程序,但如果有必要我会更改它。 约翰,两个 EXE 总是并排安装,是的。 【参考方案1】:如果您只想获取正在运行的应用程序的路径以启动辅助应用程序(在同一目录中),您应该能够使用:
System.Reflection.Assembly.GetExecutingAssembly().Location
参考:http://msdn.microsoft.com/en-us/library/aa457089.aspxhttp://msdn.microsoft.com/en-us/library/system.reflection.assembly.location(v=vs.110).aspx
【讨论】:
这非常有效!非常感谢!【参考方案2】:我认为,如果您这样做,则不需要两者都必须在同一位置。
我们可以尝试对IV.exe
的安装程序进行自定义操作,以创建安装路径的注册表项。需要调用IV.exe
的应用程序将读取注册表并获取具有该特定键的路径。
【讨论】:
以上是关于C# Process.Start 路径的主要内容,如果未能解决你的问题,请参考以下文章
C# 中的 Process.Start 与 Process `p = new Process()`?