彻底去掉java项目启动时的DOS黑屏
windows下的java项目,如swing,启动方式一般是建立批处理文件,执行 java 或 javaw 命令,如下:javaw -jar xxx.jar
但会有DOS的黑屏一直存在,在批处理这样写
@echo off
start javaw -jar xxx.jar
就只会在启动刹那有黑屏闪过。
但怎么能彻底去掉黑屏呢?
昨晚做了一个小东西,可解决这个问题。
你可能猜到了!
用 Win32 或 MFC 写一个程序,执行 javaw 即可!
主要代码如下:
CString path; GetModuleFileName(NULL, path.GetBufferSetLength(MAX_PATH), MAX_PATH); int nCount = path.ReverseFind( '\\'); path = path.Left(nCount); CString cmdfile; cmdfile.Format("%s\\%s", path, "cmd.txt"); CStdioFile f; if(!f.Open(cmdfile, CFile::modeRead|CFile::typeText)) { MessageBox(0, "当前目录下没有 cmd.txt 配置文件.\n\n该文件应该有两行, 第一行是命名, 第二行是参数.", "错误", MB_OK); exit(1); } CString cmd; f.ReadString(cmd); CString param; f.ReadString(param); f.Close(); param.Replace("{path}", path); ShellExecute(0, "open", cmd, param, 0, SW_SHOWNORMAL);
编译完成生成 .exe 后,在同目录下建立一个 cmd.txt 文件,内容如下:
javaw
-jar {path}\xxxx.jar
其中{path}指当前目录,用来确定 xxxx.jar 的绝对位置
这样,双击 .exe 就可以没有黑屏的启动 java 项目了!
页:
[1]