`

使用程序实现截屏获取teamview登录信息

    博客分类:
  • java
阅读更多
很多的时候,我们需要使用teamview进行远程登录。
比如现在我的环境就是有一台电脑A,使用双网卡实现登录,这个电脑也做了自动报表相关的业务,比如指定时间把制作好的报表发到指定邮箱。而且这台电脑也承担了邮件服务的功能。
那么如果自己出差在外地,怎么能够实现特定的需求,获取现在的teamview的登录信息进行登录呢?
下面就是我实现的方法。
1,采用java的运行cmd方式将teamview程序运行起来,然后再使用截屏的工具把屏幕截取下来到指定文件夹。
2,使用java调用ftp将文件发送到制定网络的ftp服务器上(未做)。
----------------------------------------------------
一下是相关代码:
package com.duduli.li;

import java.awt.Dimension;
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;

import javax.imageio.ImageIO;

public class CaptureScreen {

	public static void captureScreen(String fileName, String folder)
			throws Exception {

		Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
		Rectangle screenRectangle = new Rectangle(screenSize);
		Robot robot = new Robot();
		BufferedImage image = robot.createScreenCapture(screenRectangle);
		// 截图保存的路径
		File screenFile = new File(fileName);
		// 如果路径不存在,则创建
		if (!screenFile.getParentFile().exists()) {
			screenFile.getParentFile().mkdirs();
		}
		// 判断文件是否存在,不存在就创建文件
		if (!screenFile.exists() && !screenFile.isDirectory()) {
			screenFile.mkdir();
		}

		File f = new File(screenFile, folder);
		ImageIO.write(image, "png", f);
		// 自动打开
		/*
		 * if (Desktop.isDesktopSupported() &&
		 * Desktop.getDesktop().isSupported(Desktop.Action.OPEN))
		 * Desktop.getDesktop().open(f);
		 */
	}

	public void runPocess() throws IOException {
		Process process = Runtime.getRuntime().exec(
				"C:/Program Files (x86)/TeamViewer/TeamViewer.exe");

	}

	public static void main(String[] args) throws IOException, InterruptedException {
		new CaptureScreen().runPocess();
		new Thread().sleep(60000);
		Date dt = new Date();
		SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
		SimpleDateFormat sdf1 = new SimpleDateFormat("yyyyMMddHHmmss");
		String data = sdf.format(dt);
		String rd = sdf1.format(dt);
		try {
			captureScreen("c:\\" + data, rd + ".png");
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

}



使用定时任务进行的bat。
java -jar c:\cutsrcreen.jar

实现后台运行的vbs
createobject("wscript.shell").run "c:\run.bat",0


其后将实现
1,远程运行(因为电脑并非是固定ip所以可能借助工具)。
2,服务器上FTP搭建。
3,java实现图片ftp上传。
分享到:
评论

相关推荐

    C#实现截屏功能C#实现截屏功能C#实现截屏功能

    C#实现截屏。vs2015C#实现简单截屏功能,供大家参考学习

    C#实现截屏 可区域截屏,或可全屏。点ESC退出

    C#实现截屏 可区域截屏,或可全屏。点ESC退出

    C# wpf 使用GDI+实现截屏

    wpf做屏幕录制或者屏幕广播之类的功能时需要实现截屏,在C#中比较容易实现的截屏方法是使用GDI+,本文将展示使用GDI+截屏的具体实现方案,包括如何绘制鼠标,按帧率采集屏幕、将GDI+对象转成wpf对象等。原文链接:...

    C# wpf 实现截屏框热键截屏功能

    在《C# wpf 使用DockPanel实现截屏框》中我们实现了一个截屏框,接下来就要实现相应的截屏功能了。获取截屏区域然后使用GDI+截屏,在这里不少的细节需要处理,比如响应热键弹出截屏界面、点击拖出截屏框、截屏区域...

    MATLAB实现截屏的小程序

    解压之后可以直接用MATLAB轻松实现截屏,一个小小的程序,可以帮我们不少忙

    VC实现的本地截屏程序

    可以实现本地截屏,并将屏幕图片保存在C盘下,将截取的图片传送到远程服务器就可以实现远程监控功能!

    微信小程序canvas拖拽、截图组件功能

    由于movable-view无法实现旋转,所以选择使用canvas 需要解决的问题 如何将多个元素渲染到canvas上 如何知道手指在元素上、如果多个元素重叠如何知道哪个元素在最上层 如何实现拖拽元素 如何缩放、旋转、删除...

    C# wpf 使用DockPanel实现截屏框

    做桌面客户端的时候有时需要实现截屏功能,能够在界面上框选截屏,做一个蒙版然后中间选框透明可以移动和改变大小。这个功能是不太好实现的,需要一定的方法,其中使用DockPanel是相对简单直接的实现。本资源为文章...

    MediaProjection实现截屏

    Android5.0之后,用MediaProjection实现截屏功能。

    JAVA简单实现截屏

    用JAVA简单实现截屏

    Qt截屏实现

    使用QT实现的类似于QQ截图的截屏软件,可缩放,可保存,可取消。

    突破截屏键被屏蔽的小软件,可实现截屏功能

    截屏键被屏蔽了或者坏了的情况下可以使用本软件,即可用scroll Lock键代替截屏键

    C# wpf 使用GDI实现截屏

    使用gdi也能实现截屏,截屏数据也能转成BitmapSource对象,当然调用流程会复杂一些,而且需要引入win32方法,唯一比较容易的就是可以直接绘制异或鼠标。本资源为文章附件资源,原文链接:...

    C#实现Winform实现区域截屏

    用winform写的一个简单实现截屏,可以任意区域截取矩形图片和全屏。

    VC 截屏或抓屏程序

    用C++编写的截屏、抓屏程序,希望能对大家有指导作用。

    截屏程序 VC++6.0

    用vc++6.0编的截屏程序,非常的简单,便于理解

    JS实现截屏

    用的是百度的JS版API,由于百度API未提供截屏功能,便自己动手写,用网页调用APPLET方式实现。附代码,提供JSP和HTML两个版本。亲测可用,觉得有用的请顶! PS: 1、保证D盘有个img目录或者自己修改代码自动创建...

    截屏小程序

    截屏

    uniapp安卓防截屏案例

    uniapp通过调用原生方法实现防截屏,需要监听安卓物理返回键和自定义导航栏

    桌面截屏小程序

    桌面整个屏幕截屏并保存在桌面的小程序 (带Runnable Jar)

Global site tag (gtag.js) - Google Analytics