java代码
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by FernFlower decompiler)
//
import java.awt.Color;
import java.awt.Component;
import java.awt.Font;
import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Calendar;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class Mysqldump {
private static final String username = "root"; //数据库
private static final String password = "root";
private static final String path = "D:\\EXE\\MYSQL\\"; //备份文件目录
public Mysqldump() {
}
public static void main(String[] var0) {
String var1 = null;
Calendar var2 = Calendar.getInstance();
int var10000 = var2.get(2) + 1;
String var3 = "Backup-" + var10000 + "-" + var2.get(5) + ".sql"; //以时间构造名字
File var4 = new File(path ,var3); //输出的sql文件
if (!var4.exists() || !var4.isFile() || var4.length() == 0L) { //已经存在且不为空
try {
Process var5 = Runtime.getRuntime().exec("cmd /c mysqldump -u"
+username+" -p"+password+" --all-databases" +
" > "+var4.getPath());
BufferedReader var6 = new BufferedReader(new InputStreamReader(var5.getInputStream()));
String var7 = var6.readLine();
if (var7 != null) {
for(var1 = var7; (var7 = var6.readLine()) != null; var1 = var1 + var7) {
}
addFrame(var1);
}
} catch (IOException var8) {
var1 = var8.getMessage();
addFrame(var1);
}
var4 = new File(var4.getPath());
if (!var4.exists() || !var4.isFile() || var4.length() == 0L) {
addFrame("数据库备份失败");
}
}
}
private static void addFrame(String var0) {
JFrame var1 = new JFrame("MYSQL备份失败");
var1.setSize(512, 256);
var1.setAlwaysOnTop(true);
var1.setLocationRelativeTo((Component)null);
var1.setDefaultCloseOperation(3);
JLabel var2 = new JLabel("错误信息:" + var0);
var2.setVerticalAlignment(1);
Font var3 = new Font("SansSerif", 1, 15);
var2.setForeground(Color.RED);
var2.setFont(var3);
var1.add(var2);
var1.setVisible(true);
}
}
c代码
//#include<bits/stdc++.h>
#include<windows.h>
//#pragma comment( linker, "/subsystem:windows /entry:mainCRTStartup" )
int main(){
HWND hwnd=GetForegroundWindow();
ShowWindow(hwnd,SW_HIDE);
Sleep(1000*60); //一分钟后启动
// system("javac -encoding UTF-8 D:\\Alice\\Java\\utils\\MYSQL-dump\\Mysqldump.java");
system("java -Dfile.encoding=UTF-8 -cp D:\\Alice\\Java\\utils\\MYSQL-dump Mysqldump"); //运行java文件
return 0;
}
开机运行
将编译后的exe文件放入路径:C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup