1) vb.net
<DllImport("Shell32.dll")>
Private Shared Function ShellExecute(ByVal hwnd As IntPtr, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Integer) As Integer
End Function
Private Sub StartApplication(ByVal projname As String, ByVal arg As String)
ShellExecute(IntPtr.Zero, "Open", projname, arg, "E:\TF\sample\ProjectB\ProjectB\bin\Debug", 1)
End Sub
2)C#
[DllImport("Shell32.dll")]
private static extern int ShellExecute(
IntPtr hwnd,
string lpOperation, //多为"open"
string lpFile, //文件名称
string lpParameters, //参数
string lpDirectory, //文件路径
int nShowCmd
);
/// <summary>
/// 加载相应的应用程序
/// </summary>
private void StartApplication(string projname, string arg)
{
//ShellExecute(IntPtr.Zero, "Open", projname, arg, Application.StartupPath + @"\", 1);
ShellExecute(IntPtr.Zero, "Open", projname, arg, "E:\\TF\\sample\\ProjectB\\ProjectB\\bin\\Debug", 1);
}
以上代码实现在项目A中启动项目B