Sistema de backup por bat

To postano aqui um sistema de backup que fiz em bat. É um sistema simples que simplismente copia os arquivos novos para uma determinada pasta, caso o arquivo seja o mesmo e nao foi atualizado ele nao copia caso o arquivo esteje atualizado ou tenha um novo arquivo ele substitui/copia o mesmo.
O programa salva um registro dos arquivos copiados e das operações na area de trabalho como “log.log”, caso execulte ele varias vezes ele ira incrementar no arquivo de log.

@echo off
@echo #######################
@echo #    Fazendo Backup   #
@echo #      Aguarde....    #
@echo #######################
@echo                Fazendo Backup                 >> %userprofile%desktoplog.log
@echo Hora e data de inicio:                    >> %userprofile%desktoplog.log
date /t                                             >> %userprofile%desktoplog.log
time /t                                             >> %userprofile%desktoplog.log
xcopy "e:PROJETOS" "C:BackupProjetos" /D /E /V /C /F /G /H /Y  >> %userprofile%desktoplog.log
@echo Horario de termino:                           >> %userprofile%desktoplog.log
time /t                                             >> %userprofile%desktoplog.log
@echo               Backup Realizado                >> %userprofile%desktoplog.log
@echo #######################
@echo #        Backup       #
@echo #      Realizado      #
@echo #######################
@echo ============================================== >> %userprofile%desktoplog.log
pause

Nesta linha que é informado o caminho do backup:

xcopy "e:PROJETOS" "C:BackupProjetos" /D /E /V /C /F /G /H /Y  >>

em projetos: Origem
em backup: Destino (lembre-se de criar o diretorio antes)

Copiem o codigo em um editor de texto e salve com extensão *.bat

Fim.

Guilherme B. Zarelli

Imagem de fundo em JPanel

Segue dois exemplos abaixo para inserir uma imagem de backgroud em um JPanel

Neste primeiro exemplo faz a imagem (“fundoPrincipal”) ser automaticamente redimencionada quando voce altera o tamanho da janela. Podendo tambem inserir uma imagem maior do que o tamanho do painel.

    /** Método que define a imagem de fundo da tela principal
     *  Com redimencionamento
     * @param g
     * @see JComponent#paintComponent(java.awt.Graphics)
     */
    @Override
    public void paintComponent(Graphics g) {
        super.paintComponent(g);
        Graphics2D g2d = (Graphics2D) g.create();
        g2d.drawImage(fundoPrincipal, 0, 0, this.getWidth(), this.getHeight(), null);
        g2d.dispose();
    }

Já neste exemplo a imagem (“fundoLogin”) fica do tamanho original e centralizada no painel sem alteração caso a janela mude de tamanho.

    /** Método que define a imagem de fundo da tela principal
     * Centralizado sem redimencionamento de imagem.
     * @param g
     * @see Graphics
     */
    @Override
    public void paintComponent(Graphics g) {
        super.paintComponent(g);
        int x = (this.getWidth() - fundoLogin.getWidth(null));
        int y = (this.getHeight() - fundoLogin.getHeight(null));
        g.drawImage(fundoLogin, x, y, this);
    }

Segue uma imagem como ficaria:

É isso ae muito simples de se implementar….

Obrigado.

Guilherme B. Zarelli