private Constants.Error createBackUpFiles() {
        Constants.Error ret = null;

        try { // Copy the unchanged systemfile in the backup directory. If the files already exist but the program has no info about it, it
            // saves a second copy and changes the name of the existing file to a name with date.

            if (!Files.exists(Constants.SYSTEMFILE_AUTHUI_BAKPATH, LinkOption.NOFOLLOW_LINKS)) {
                FileUtil.copyFile(this.authuiSystemfilePath, Constants.SYSTEMFILE_AUTHUI_BAKPATH, true);
            } else {
                if (!Settings.backUpCreated()) {
                    String tmp = new java.util.Date().toString();
                    tmp = tmp.replace(":", "-");
                    String tmp2 = Constants.SYSTEMFILE_AUTHUI_BAKPATH.getFileName().toString().replace(".dll", "_" + tmp + ".dll");

                    FileUtil.moveFile(Constants.SYSTEMFILE_AUTHUI_BAKPATH, Constants.PROGRAM_BACKUP_PATH.resolve(tmp2));
                    FileUtil.copyFile(this.authuiSystemfilePath, Constants.SYSTEMFILE_AUTHUI_BAKPATH, true);
                }
            }

            if (!Files.exists(Constants.SYSTEMFILE_BASEBRD_BAKPATH, LinkOption.NOFOLLOW_LINKS)) {
                FileUtil.copyFile(this.basebrdSystemfilePath, Constants.SYSTEMFILE_BASEBRD_BAKPATH, true);
            } else {
                if (!Settings.backUpCreated()) {
                    String tmp = new java.util.Date().toString();
                    tmp = tmp.replace(":", "-");
                    String tmp2 = Constants.SYSTEMFILE_BASEBRD_BAKPATH.getFileName().toString()
                            .replace(".dll", "_" + tmp + ".dll");

                    FileUtil.moveFile(Constants.SYSTEMFILE_BASEBRD_BAKPATH, Constants.PROGRAM_BACKUP_PATH.resolve(tmp2));
                    FileUtil.copyFile(this.basebrdSystemfilePath, Constants.SYSTEMFILE_BASEBRD_BAKPATH, true);
                }
            }
        } catch (IOException e) {
            ret = Error.BACKUP_CREATION_ERROR;
        }

        // control if the backup is really created.
        if (!Files.exists(Constants.SYSTEMFILE_AUTHUI_BAKPATH, LinkOption.NOFOLLOW_LINKS)
                || !Files.exists(Constants.SYSTEMFILE_BASEBRD_BAKPATH, LinkOption.NOFOLLOW_LINKS)) {
            ret = Error.BACKUP_CREATION_ERROR;
            Settings.setBackUpCreated(false);

        } else {
            Settings.setBackUpCreated(true);
        }

        return ret;
    }