Trabalho de Conclusão de Curso

0 comentários
Olá a todos,

Neste link está a minha monografia de final de curso. Deixei bem enxuta, não enrolei. Depois, conto sobre as situações inusitadas que passei. O software só vou disponibilizar quando tirar a patente.

Até mais

p.s: Estou usando o servidor da faculdade e as vezes ele cai.

Desligar computador a Distância no Windows usando Java

0 comentários
Hoje, pensei em uma idéia para desligar meu computador a distância. Consegui e a técnica é bem simples.

Primeiro, no computador que será desligado é necessário que algum código que estabeleça uma conexão em uma porta qualquer (acima da porta 1024) a fim de aguardar a ordem de desligamento.

O desligamento é feito pelo comando "shutdown.exe" do Windows (está na pasta c:\WINDOWS\system32\)

Então, criei uma classe que estabelece uma conexão por TCP na porta 10001. E ela espera somente duas "frases".

Frase 1 - Senha para o desligamento
Frase 2 - argumentos para o desligamento

A senha é importante para que nenhum outro código (além do seu) desligue a máquina.
Os argumentos para o desligamento são os mesmos do comando "shutdown.exe".

A classe que dá a ordem para desligar deve enviar a senha e os argumentos para a porta do computador a ser desligado. E pronto.

A classe ShutListener é o ouviente para ordem. Deixa-a rodando na máquina que vc pretende desligar.

A classe ShutLauncher é o disparador.

p.s: Uso de ShutLauncher

Abra o terminal e vá aonde o .class está e execute
java ShutLauncher 111.111.111.111 -r

O primeiro argumento é o ip da máquina a ser desligado e -r fará com que seja aberta uma janela dizendo o Windows será encerrado dentro 30 segundos.

Argumentos que podem ser passados:
-Abra o terminal e digite: shutdown /?
-Este artigo pode ajudar: link

Comentários:
- Você pode facilmente adaptar para o Linux.
- TCP é usado para garantir que as mensagens enviadas sejam recebidas, pois, TCP implementa transporte confiável. Eu poderia ter usado UDP e implementar o transporte confiável, mas, não estava com disposição para isso.

Arquivo .class

2 comentários
O arquivo com extensão .class é resultado da compilação correta (pelo javac) de um .java.

Hoje, abri um .class em um editor de texto padrão e vi que ele contém texto contendo nome de atributos, herança, parte do código dentro dos métodos e dentre outros.

Então, é possível juntar os dois no modo binário (não o contrário).

Isso justifica o fato de ser possível transformar um .class no seu respectivo .java.

Para comprovar o que digo, o código cria um arquivo em modo binário e insere informação em ascii e binário. Abra o arquivo gerado e veja o resultado

Ratings:

Avaliação deste artigo

Copyright © Programming @ home