C# 从.NET控制台应用程序打开.exe应用程序
如果我尝试从.NET控制台应用程序打开记事本,它可以正常工作。 我的做法如下:C# 从.NET控制台应用程序打开.exe应用程序,c#,console-application,system.diagnostics,C#,Console Application,System.diagnostics,如果我尝试从.NET控制台应用程序打开记事本,它可以正常工作。 我的做法如下: var p = new Process { StartInfo = { FileName = "c:\windows\system32\notepad.exe"; } }; p.Start(); 当我试图打开我真正想要打开的应用程序时,什么都没有发生。如果我手动打开该应用程序,我会看到一个Java进程正在创建,这意味着它是一个打包为exe文件的Java应用程序 有没有关于如
var p = new Process
{
StartInfo =
{
FileName = "c:\windows\system32\notepad.exe";
}
};
p.Start();
当我试图打开我真正想要打开的应用程序时,什么都没有发生。如果我手动打开该应用程序,我会看到一个Java进程正在创建,这意味着它是一个打包为exe文件的Java应用程序
有没有关于如何通过.NET打开Java exe应用程序的想法
提前感谢假设您有一个名为“HelloWorld”的应用程序。然后,从命令提示符(以及您的代码)中,您可以使用以下命令启动它:
java HelloWorld
现在假设java
在您的路径中。这是一个错误的假设。因此,您最好使用逻辑来填充java
的路径,或者对其进行硬编码
如果你打算把这个软件到处传播,我不建议你硬编码一个路径。这从来都不是一件确定的事情……常规的EXE和“已退出”的Java应用程序之间应该没有太大区别。你试过调整工作目录吗?可能正在解压。嗯。。。应该没有太大的区别。你试过调整工作目录吗?在调试器中,探索这行
p.Start()之后的p
的属性代码>。该过程可能已经开始并立即终止。在本例中,您将看到exit code属性。看看这对你有没有帮助,这就解决了Thorsten。我必须将工作目录设置为应用程序所在的根文件夹。你能补充一个答案让我接受吗?谢谢;)为什么这个问题被否决了@但丁:复制了我的评论作为答案。它是一个.exe应用程序,不是一个jar什么的。我可以像其他任何应用程序一样打开它(双击图标,从命令提示符调用它,…),唯一不起作用的地方是从.NET调用它。