2011-09-13 86 views
0

我已經使用下面的代碼在我的java項目中創建了一個不可刪除的文件夾。它工作正常。當我創建我的項目的exe時,dos提示符不會消失。需要在不打開dos提示符的情況下運行該命令

cmd.exe /c start icacls "folder name" /e /c /d %username% 

我也嘗試過不打開dos提示符。但它不起作用。

icacls ONGX32/winkrl /e /c /d %username% 

回答

0

我發現了一個簡單的方法。創建一個.bat臨時文件由該命令組成。使用該.bat文件。它沒有打開命令提示符。

1

而是使用:

cmd /c icacls "folder name" /e /c /d %username% 

start幾分一樣cmd /c的,所以你不需要兩者。

+0

它拋出以下IOEXCEPTION「無法運行程序」開始「:CreateProcess錯誤= 2,系統找不到指定的文件」 – Manikandan

+0

其實,我犯了一個錯誤。 'start'是一個cmd命令,不是可執行文件。你不需要'start',但你確實需要'cmd/c'。我正在更新上述記錄的答案。 – Sajid

0

變量%username%被cmd.exe的值替換。

你需要用System.getenv("username")得到它,並用命令字符串替換它自己。

編輯。您可能還需要使用icacls.exe的完整路徑。

0

在命令提示符下,命令exit將其關閉。

您可以使用&&命令分隔符運行multiple commands on one line

應該是這樣的:

cmd /c icacls "folder name" /e /c /d %username% && exit 
相關問題