2014-01-06 54 views
0

如果我嘗試從.NET控制檯應用程序打開記事本,它工作正常。 我做它,如下所示:從.NET控制檯應用程序打開.exe應用程序

var p = new Process 
{ 
    StartInfo = 
    { 
     FileName = "c:\windows\system32\notepad.exe"; 
    } 
}; 

p.Start(); 

當我嘗試打開我居然要打開應用程序,沒有任何反應。如果我手動打開該應用程序,則會看到正在創建的Java進程,這意味着它是一個打包爲exe文件的Java應用程序。

有關如何通過.NET打開Java EXE應用程序的任何想法?

在此先感謝

+1

嗯......那裏不應該有太大的區別。你有沒有嘗試調整工作目錄?也許有一些解壓縮正在進行。 –

+0

在調試器中,探索'p.Start();'這行之後的'p'的屬性。該過程可能已經開始並立即終止。在這種情況下,您會看到退出代碼屬性。看看這是否有助於你。 – oleksii

+0

解決了它Thorsten。我必須將工作目錄設置爲應用程序所在的根文件夾。你可以添加一個答案,以便我可以接受它嗎?謝謝;) – Dante

回答

2

常規EXE和「經過驗證」的Java應用程序之間應該沒有太大區別。你有沒有嘗試調整工作目錄?也許有一些解壓縮正在進行。

0

假設您有一個名爲「HelloWorld」的應用程序。然後從命令提示符(和你的代碼),你將與啓動它:

java HelloWorld 

現在這個會認爲java是在你的路徑。這是一個糟糕的假設。所以你最好用邏輯來填充路徑java,或者硬編碼它。

如果您計劃通過此軟件,我不建議硬編碼路徑。這絕對不是一件確定的事情......

+0

這是一個.exe應用程序,不是jar或其他東西。我可以打開它作爲任何其他應用程序(雙擊圖標,從命令提示符調用,...),唯一不起作用的地方是從.NET調用。 – Dante

相關問題