Java是没办法获取到管理员权限的,但是java可以执行.bat文件,.bat文件是可以获取管理员权限的。
因此
新建wakeUpBate.bat文件,主要是通过本bat进行文件移动操作
@echo off
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
cd /d "%~dp0"
xcopy "D:bate1.lnk" "C:ProgramDataMicrosoftWindowsStart MenuProgramsStartUp"
其中这个是获取管理员权限
@echo off
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
cd /d "%~dp0"
这个是移动文件,比如D:bate1.lnk下的1.lnk快捷文件到开机自启动文件下
xcopy "D:bate1.lnk" "C:ProgramDataMicrosoftWindowsStart MenuProgramsStartUp"
java调用bat
private static void callCmd(String locationCmd){
StringBuilder sb = new StringBuilder();
try {
Process child = Runtime.getRuntime().exec(locationCmd);
InputStream in = child.getInputStream();
BufferedReader bufferedReader=new BufferedReader(new InputStreamReader(in));
String line;
while((line=bufferedReader.readLine())!=null)
{
sb.append(line + "n");
}
in.close();
try {
child.waitFor();
} catch (InterruptedException e) {
System.out.println(e);
}
System.out.println("cmd_success");
} catch (IOException e) {
System.out.println(e);
}
}
设置wamp自启动
修改bat文件
@echo off
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
cd /d "%~dp0"
sc config wampapache64 start= auto
sc config wampmysqld64 start= auto



