试图从另一个程序中启动Visual Studio c#程序

本文关键字:程序 Visual Studio 启动 另一个 | 更新日期: 2023-09-27 17:49:50

我很难让一个用vs2008 c#编写的Windows程序来启动另一个类型程序。我放了一个主程序,让你能够启动其他vs2008 c#程序。当其中一个被选中时,下面的代码将执行启动:

System.Diagnostics.Process。开始(@"C:'Documents and Settings'rat'My Documents'Visual Studio 2008'Projects'PV_002_082708'PV_001'PV_001'bin'Debug'PV.exe");

可以工作,但是每个用户都有不同的路径。显示的路径是给我的电脑的。代码必须知道每个人的程序安装在哪里!在过去,我可以很容易地调用位于C:'Program Files位置的程序,因为这是MS Package &部署程序放程序。VS 2008/2010没有把他们放在那里!

我确定我对Visual Studio 2008/2010不了解,不知道是否有解决这个问题的方法,所以任何帮助都将非常感谢。

试图从另一个程序中启动Visual Studio c#程序

System.Diagnostics.Process.Start(System.Io.Path.Combine(System.Windows.Forms.Application.StartupPath, "PV.exe"));

假设程序在启动的应用程序的路径中。

还是……

System.Diagnostics.Process.Start(System.Io.Path.Combine(System.Environment.GetFolderPath(System.Environment.SpecialFolder.MyDocuments), @"Visual Studio 2008'Projects'PV_002_082708'PV_001'PV_001'bin'Debug'PV.exe"));

假设您想从它所在的位置打开项目

一旦你创建了安装包,你可以将安装路径设置为一些固定的路径,用户将无法更改,然后在你的代码中使用它(不是很用户友好,但它会工作),或者将用户选择的路径值插入到注册表中,并从那里获得它。

可能想看看这个线程。How-to以及很多的利弊。

将*.exe嵌入到dll

如果你看到他问题的第一个答案,我想这对你来说是可行的。

简单地说,他是说,你添加一个资源文件到你的项目,然后当用户runes你的程序,它提取你的exe文件,你添加作为一个资源文件到某个地方,你知道在终端用户的机器。