找出为什么有些人可以运行我的应用程序(这是一个Minecraft启动程序)时遇到一些麻烦,它会创建一个.bat文件并使用UseShellExecute运行它。不确定它是否因为UAC废话或其他原因。
对我来说,我可以把exe放在任何文件夹中,它会起作用,就像它需要在程序文件中一样?我没有为它安装任何安装程序。
它可以使用系统java或者便携式java程序调整文件夹路径等...然后使用程序设置创建bat文件..然后在文件制作完成后运行....如
Process Launchit = new Process();
try
{
Launchit.StartInfo.UseShellExecute = false;
Launchit.StartInfo.FileName = exePath + "\\Launcher.bat";
Launchit.StartInfo.CreateNoWindow = true;
Launchit.Start();
}
catch (Exception exx)
{
MessageBox.Show(exx.Message);
}
在Launcher.bat中这样的例子......
"java" -Xms524M -Xmx1000M -jar "blahblah.jar"
它适用于我,但对于一些它什么也没做..即使他们尝试运行.bat文件它不起作用,只是打开和关闭,试图找出为什么有问题。他们确实安装了java。
有什么方法我可以打开cmd.exe让它转到bat文件的目录并运行它,只是这样他们可以看到命令控制台中的错误是什么?
答案 0 :(得分:0)
使用cmd.exe
参数和批处理文件路径作为参数运行/K
。请查看cmd.exe /?
了解详情。
答案 1 :(得分:0)
omg ..所以问题一直是我的发射器没有封装""文件夹路径..所以有些人把exe放在一个有空格的文件夹中就会运行它,而其他人把它放在没有空格的文件夹中就可以了。
所以没有必要做那个cmd.exe的事情,虽然这样做了。