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