Programação  
 
Conhecimento computador >> Programação >> Programação em Java >> 
Como capturar uma captura de tela a partir de um sistema remoto usando Java
Há uma simples aplicação Java que você pode usar para enviar uma imagem atual através da Internet. Você pode encontrar este programa útil se você precisa para gerenciar vários computadores, se você possui um negócio e deseja monitorar o uso do computador de seus empregados , ou se você deseja monitorar o uso do computador de seus filhos. Ela envolve a criação de duas classes Java : ScreenServer.java e ScreenClient.java . No entanto, não deixe de conferir o aviso no final da página antes de colocar o aplicativo em uso. Instruções
1

Abra seu editor de texto preferido , e imediatamente salve o documento vazio como " ScreenServer.java ". Esta é a parte do programa que deve ser executado no sistema remoto. Ele vai ouvir uma conexão em uma porta arbitrária e enviar as dimensões de tela e dados por essa porta . Este exemplo usa " 5494 " como o porto, mas qualquer número de porta vai fazer, desde que não entre em conflito com outro serviço em execução no computador . Naturalmente, você vai precisar ter acesso direto ao computador remoto , em algum momento , a fim de colocar este programa sobre ele e iniciá-lo em execução
2

Cole o seguinte código no " ScreenServer " : .
java.net importação

* ; . .

import java.awt * ;

java.awt.image import * ; .

java.io import . * ;

importação javax.imageio.ImageIO ;

public class ScreenServer {

void main ( string [ ] args ) public static throws Exception {

robot Robot = new Robot ( );

tela BufferedImage ;

while ( true) {

ServerSocket servidor = new ServerSocket ( 5494 );

cliente socket = server.accept ();

Retângulo size = new Rectangle ( Toolkit.getDefaultToolkit () getScreenSize (). );

screen = robot.createScreenCapture ( tamanho );

int [ ] = new int rgbData [ (int) ( size.getWidth () * size.getHeight ()) ];

screen.getRGB ( 0,0, (int) size.getWidth ( ) , (int) size.getHeight () , rgbData , 0, (int) size.getWidth ());

OutputStream baseOut = client.getOutputStream ();

ObjectOutputStream out = new ObjectOutputStream ( baseOut );

ImageIO.write ( tela, " png ", new File (" orig_screen.png "));

instrução out.writeObject ( tamanho );

for (int x = 0; x < rgbData.length ; x + +) seu código.
3

Abra um novo documento no seu editor de texto, com o nome " ScreenClient.java ". Este é o programa que será executado localmente. Ele simplesmente se conecta ao computador remoto para o endereço especificado e salva os dados de pixel que recebe para o disco rígido em formato PNG
4

Cole o seguinte código , e salvar seu trabalho : .

java.net import * ; .

import java.awt * ; .

java.awt.image import * ; .

import java.io. *;

importar javax.imageio.ImageIO ;

public class ScreenClient {

void main ( string [ ] args ) public static throws Exception {

Soquete servidor = new socket ( args [0] , 5494 );

ObjectInputStream in = new ObjectInputStream ( server.getInputStream ());

Retângulo size = (retângulo ) in.readObject ();

int [ ] = new int rgbData [ (int) ( size.getWidth () * size.getHeight ()) ];

for (int x = 0; x < rgbData.length , x + +) {

rgbData [x ] = in.readInt (); }


in.close ();

server.close ( );

BufferedImage tela = new BufferedImage ( (int) size.getWidth () , (int) size.getHeight () , BufferedImage.TYPE_INT_ARGB );

screen.setRGB (0,0 , (int) size.getWidth () , (int) size.getHeight () , rgbData , 0, (int) size.getWidth ());

ImageIO.write ( tela, " png " , novo File (" screen.png ")); }

}

Anterior :

Próximo : No
  Os artigos relacionados
·Por Classes abstratas em Java 
·Como detectar um caráter CJK em Java 
·Como escrever um menu usando um Applet Java 
·Como usar o Apache ANT para chamar Java 
·Como usar as ferramentas do SDK do Android no Windows 7…
·Como redefinir ContentView no Android 
·Como Abrir JPanel em Java 
·Tipos incompatíveis foram encontrados em Java 
·Como substituir uma palavra em uma frase em Java 
·Como configurar um quadro branco com Applets Java 
  Artigos em destaque
·Como fazer sua própria Wap Site 
·Como importar um pacote em um projeto Eclipse 
·Por que uma seqüência Imutável Calcule seu valor de …
·Ferramentas de desenvolvimento do Mac OS 
·Como mover um JPanel Java 
·Como salvar um vetor para um arquivo em C + + 
·Definição de Java e Javascript 
·Desvantagens e Vantagens de Compiladores 
·Java Coding idioma 
·O código HTML para Highlights Fundo 
Cop e direita © Conhecimento computador http://ptcomputador.com Todos os Direitos Reservados