2016-02-02 533 views
0

正如標題可能暗示,我試圖通過「ShellExecute」函數打開一個.bat文件。C++ ShellExecute批處理腳本將無法識別命令

它適用於非常基本的.bat腳本,例如「hello world」,但不能與包含運行遊戲服務器的命令的其他腳本一起使用。 例如,這裏是一個「殺人地面1」服務器批處理腳本:

ucc server KF-Mountainpass.rom?game=KFmod.KFGameType?VACSecured=true?MaxPlayers=6?GamePassword=genrl -log=server.log 
PAUSE 

請注意,此批完美的作品時手動點擊它,但給人當通過ShellExecute的打開了以下錯誤:

"ucc" is not recognized as an internal or external command, operable program or batch file. 

我也測試了其他遊戲服務器的其他批處理文件,結果相同。

所以,這裏是什麼,我已經嘗試了名單,到目前爲止,並沒有工作:

ShellExecute(NULL, "open", "cmd.exe", "C:\\windows\\system32\\cmd.exe /C C:\\Cartella_Server\\Server_KF1\\System\\KF_Server_Launcher.bat", NULL, SW_SHOW); 

ShellExecute(NULL,"open", C:\\Cartella_Server\\Server_KF1\\System\\KF_Server_Launcher.bat", NULL, NULL, SW_SHOW); 

ShellExecute(NULL, "open", "cmd.exe", "/C C:\\Cartella_Server\\Server_KF1\\System\\KF_Server_Launcher.bat", NULL, SW_SHOW); 

是否有任何解決這個?

預先感謝您的時間:)

回答