Welcome 微信登录

首页 / 操作系统 / Linux

Java实现远程屏幕监视

Java实现远程屏幕监视

远程屏幕监视使得控制方可以在远程主机上监视其它一台机器,其主要实现原理就是将被控制机器的屏幕作为图片传送给监视方,在Java中要实现远程屏幕监视,主要解决以下几个问题即可:1:将当前屏幕的显示内容捕捉为图片2:将捕捉的图片发送到远程控制主机3:远程控制主机接收到在本地显示4:利用多线程重复上面三步达到实时更新说起来怎么这么简单啊,今天试着做了一下远程屏幕监视的实验,发现还真不是这么简单的,把我的心得总结出来共享一下,希望对你有用。将当前屏幕显示内容捕捉为图...
获取Java程序的窗口句柄

获取Java程序的窗口句柄

我们知道C++的每个窗体都对应着一个句柄HWND,通过这个句柄我们可以对这个窗口以及它的资源进行各种操作,比如让它前端显示等。那么操作系统给Java编写的窗体(Frame或者JFrame的对象或者子类对象)有没有分配这个唯一的HWND呢? 用spy++查看一下,Frame或者JFrame的对象或者子类对象确实都是存在这个窗口句柄的,那么我们怎么来得到它呢? 下面就是通过JNI取得这个句柄的代码。1HWNDGetHwndOfJavaWindow(JNIEnv...
Swing实现Java代码编辑器

Swing实现Java代码编辑器

Swing里面的文本输入组件有很多, 如JTextField, JTextArea, JTextPane, JEditorane,这些组件的功能确实是非常的强大,但在实际项目中使用的时候,方觉得它们的功能还远远不能满足我们的需求。最近看了Swing文本输入组件的源代码,感受颇深,要说起它们的实现方式,真可谓一个"妙"字,我自己也是被这种设计模式深深地吸引住,按捺不住想写一个Java代码编辑器来深入学习一下Swing的文本组件以及它们的设计模式。Swing的...
Swing实现Java代码编辑器 - 语法高亮显示

Swing实现Java代码编辑器 - 语法高亮显示

本文主要记录怎么给代码编辑器实际语法高亮显示的功能,先来张效果图吧: 当JEditorPane被创建时,它会把createDefaultEditorKit()方法(javax.swing.text.EditorKit的子类对象)的返回值作为默认的编辑器工具包,然后将文本的编辑与显示工作交给这个工具包。其原型为:1protectedEditorKitcreateDefaultEditorKit()2{3returnnewPlainEditorKit();4}...
C++写的Java环境变量自动设置工具

C++写的Java环境变量自动设置工具

用Java写程序的朋友都知道,安装JDK之后做的第一件事就是配置环境变量,不然在命令行下操作的话就不行。配置环境变量虽说不是很麻烦,但其实还是有点麻烦的~(路人甲:这人有神经病~)。所以写了这个软件,方便各位Java爱好者。具体用法在程序的主界面写着,这里也贴出来,想说的是:用之前一定要看一下!不要偷懒哦~使用必看: 这个工具根据您给出的JDK和JRE路径自动设置ClassPath和Path这两个Java运行必需的环境变量。由于是在注册表中操作,所以使用此...
透过 Linux 内核看无锁编程

透过 Linux 内核看无锁编程

多核多线程已经成为当下一个时髦的话题,而无锁编程更是这个时髦话题中的热点话题。Linux 内核可能是当今最大最复杂的并行程序之一,为我们分析多核多线程提供了绝佳的范例。内核设计者已经将最新的无锁编程技术带进了 2.6 系统内核中,本文以 2.6.10 版本为蓝本,带领您领略多核多线程编程的真谛,窥探无锁编程的奥秘 ,体味大师们的高雅设计!非阻塞型同步 (Non-blocking Synchronization) 简介如何正确有效的保护共享数据是编写并行程序...
Java运行时异常

Java运行时异常

Java提供了两类主要的异常:runtime exception和checked exception。checked 异常也就是我们经常遇到的IO异常,以及SQL异常都是这种异常。对于这种异常,JAVA编译器强制要求我们必需对出现的这些异常进行catch。所以,面对这种异常不管我们是否愿意,只能自己去写一大堆catch块去处理可能的异常。但是另外一种异常:runtime exception,也称运行时异常,我们可以不处理。当出现这样的异常时,总是由虚拟机接...
Java堆和栈的区别

Java堆和栈的区别

栈与堆都是Java用来在Ram中存放数据的地方。与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。 Java的堆是一个运 行时数据区,类的(对象从中分配空间。这些对象通过new、newarray、anewarray和multianewarray等指令建立,它们不需要 程序代码来显式的释放。堆是由垃圾回收来负责的,堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,因为它是在运行时动态分配内存 的,Java的垃圾收集器会自动收走这...
Java5泛型 T.class的获取和为擦拭法站台

Java5泛型 T.class的获取和为擦拭法站台

Java 5的泛型语法已经有太多书讲了,这里不再打字贴书。GP一定有用,不然Java和C#不会约好了似的同时开始支持GP。但大家也清楚,GP和Ruby式的动态OO语言属于不同的意识形态,如果是一人一票,我想大部分的平民程序员更热衷动态OO语言的平白自然。但如果不准备跳槽到支持JSR223的动态语言,那还是看看GP吧。 胡乱总结泛型的四点作用: 第一是泛化,可以拿个T代表任意类型。 但GP是被C++严苛的静态性逼出来的,落到Java、C#这样的花语平原里...
使用Java组件itext 生成pdf介绍

使用Java组件itext 生成pdf介绍

iText是一个能够快速产生PDF文件的java类库。iText的java类对于那些要产生包含文本,表格,图形的只读文档是很有用的。它的类库尤其与java Servlet有很好的给合。使用iText与PDF能够使你正确的控制Servlet的输出。 一、前言 在企业的信息系统中,报表处理一直占比较重要的作用,Java组件——iText可以非常快速的生成PDF报表。iText是着名的开放源码的站点sourceforge一个项目,是用于生成PDF文档的一个j...
基于飞凌2440开发板的Linux-2.6.28移植过程

基于飞凌2440开发板的Linux-2.6.28移植过程

如发现BUG欢迎发帖指正宿主机:RedHat 9.0gcc-3.4.1目标机:s3c2440交叉编译器:arm-linux-gcc-3.4.1要移植的内核版本:linux-2.6.28.7文件系统: cramfs准备知识:Linux支持多种平台架构。在其源码的arch目录下,已经将各种支持的平台架构的源码分门别类。为了配置方便,在各种平台架构的目录下,一般都配有一个名为configs的目录。其中,放置着许多已经初步配置好的defconfig文件。通过这些d...
<< 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 >>