“Conocimiento Programación>Programación Java

Cómo capturar una captura de pantalla de un sistema remoto utilizando Java

2011/3/6
Hay una sencilla aplicación Java que puede utilizar para enviar una captura de pantalla actual a través de Internet . Usted puede encontrar este programa útil si usted necesita para administrar varios equipos, si usted es dueño de un negocio y quieren controlar el uso de las computadoras de sus empleados , o si desea controlar el uso de la computadora de sus hijos. Se trata de la creación de dos clases de Java : ScreenServer.java y ScreenClient.java . Sin embargo , asegúrate de revisar la advertencia en la parte inferior de la página antes de poner la aplicación en uso. Instrucciones
1

Abre tu editor de texto preferido , y ahorrar de inmediato el documento vacío " ScreenServer.java . " Esta es la parte del programa que debe ejecutarse en el sistema remoto . Se escuchará una conexión en un puerto arbitrario y enviar las dimensiones de la pantalla y los datos en ese puerto . En este ejemplo se usa " 5494 " como el puerto , pero cualquier número de puerto va a hacer, siempre y cuando no entre en conflicto con otro servicio que se ejecuta en el equipo. Naturalmente, usted tendrá que tener acceso directo a la computadora remota en algún momento con el fin de poner este programa en él y empezar a hacerlo funcionar
2

Pega el siguiente código en el " ScreenServer ": .

import java.net * ; .

import java.awt * ; .

java.awt.image import * , .

importación java.io . * ;

importación javax.imageio.ImageIO ;

public class ScreenServer {

void (String [] args ) public static throws Exception {
< p > Robot robot = new robot ( ) ;
pantalla BufferedImage

;

while ( true) {

servidor ServerSocket = new ServerSocket ( 5494 ) ;

Socket client = server.accept ();

tamaño Rectangle = new Rectangle ( Toolkit.getDefaultToolkit () getScreenSize (). ) ;
pantalla

= robot.createScreenCapture (tamaño ) ;

int [ ] rgbData = new int [( 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 a = new ObjectOutputStream ( baseOut ) ;

ImageIO.write (pantalla, "png " , el nuevo archivo ( " orig_screen.png "));

out.writeObject (tamaño ) ;
< p > for (int x = 0 ; x < rgbData.length ; x + +) su código .
3

Abra un nuevo documento en el editor de texto , y el nombre de " ScreenClient.java . " Este es el programa que se ejecutará localmente. Simplemente se conecta al ordenador a distancia en la dirección especificada y guarda los datos de pixel que recibe en el disco duro en formato PNG
4

Pega el siguiente código y guardar el trabajo : .
< p> import java.net * ; .

import java.awt * ; .

java.awt.image import * , .

import java.io. * ;

javax.imageio.ImageIO importación;

public class ScreenClient

{ public static void main ( String [] args ) throws Exception {
servidor Socket

= new Socket ( args [ 0 ] , 5494 ) ;

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

tamaño del rectángulo = ( Rectangle) in.readObject ();

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

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

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


in.close ();

server.close ( ) ;

pantalla BufferedImage = 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 (pantalla, "png " , nuevo archivo ( " screen.png ")); }


}

Programación Java
¿Qué hace el operador ^ media en Java
Cómo realizar un desplazamiento de bits en Java
Cómo instalar una aplicación Java Vendor
Cómo capturar pulsaciones de teclas en Java
Cómo escribir programas para Android
Cómo Graficar en Java
¿Cómo puedo buscar un archivo creado mediante Java Servlet
Cómo crear UML De Java Fuente
Conocimiento de la computadora © http://www.ordenador.online