预览模式: 普通 | 列表

映象劫持技术

“映像劫持”,也被称为“IFEO”(Image File Execution Options,其实应该称为“Image Hijack”,至少也应该称为IFEO Hijack而不是只有“IFEO”自身!),它的存在自然有它的理由,在WindowsNT架构的系统里,IFEO的本意是为一些在默认系统环境中运行时可能引发错误的程序执行体提供特殊的环境设定,系统厂商之所以会这么做,是有一定历史原因的,在Windows NT时代,系统使用一种早期的堆栈Heap,由应用程序管理的内存区域)管理机制,使得一些程序的运行机制与现在的不同,而后随着系统更新换代,厂商修改了系统的堆栈管理机制,通过引入动态内存分配方...

查看全部...

标签:

分类:security | 固定链接 | 评论: 7 | 查看次数: 579

我准备写的书-JAVA RMI框架开发与应用

附件
切换到幻灯片模式

为了不同的目的,我经常开发一些小软件,在开发这些小软件的过程中我发现其实开发过程有很多重复的东西。为了能提高以后的开发效率。我在以下几个方面做了优化:
1、框架
BS和CS是我们通常使用的两个模式。SUN的RMI虽然简单,但我不喜欢它的部署方式。并且它还不支持B/S模式的软件开发。我自己定义的框架很简单,开发起来也比较容易,部署更方便。后面会陆续介绍一些有关这个框架的一些知识
2、业务逻辑的自动化
业务逻辑的自动化包括将数据表映射成JAVA类以及数据表操作的方法自动编码。
3、展示逻辑
展示逻辑按说不应该进行优化。但我在开发数据库系统系统时,经常会碰到对一些数据字典的维护。这些简...

查看全部...

标签:

分类:PROJECT | 固定链接 | 评论: 10 | 查看次数: 1034

商业业务逻辑开发之自动化

附件
附件
切换到幻灯片模式

商业业务逻辑开发不仅要实现接口的内容,而且还要完成对数据库的所有表的基本操作,为了节省开发时间,这里我们将利用一个自动编码工具,该工具将自动生成对系统所有表的四个基本操作:插入、修改、删除和查询。
该工具的潜在规则的解释以表SBSSubject为例:

public int insertToTsbssubject(Vector v){}
public int updateTsbssubjectByID(long id,Vector v){}
public int deleteTsbssubjectByID(long id){}
public Vector getTsbssubjec...

查看全部...

标签:

分类:UI | 固定链接 | 评论: 10 | 查看次数: 1209

Object中的同步机制

附件
切换到幻灯片模式

程序不是玩具,必须具备商业运作的稳定性。所以在运行的时候要充分考虑不同线程之间的同步性。在使用同步性技术的时候,考虑到标志布尔型变量与while循环搭配的效果容易对CPU造成很大的资源浪费,所以在这里采取了wait+notify技术。
Java在设计之初就充分考虑到了线程同步的问题,因而在设计基础类Oject的时候就为其提供了基于同步技术的三个函数wait+notify+notifyAll。这就意味着你所编写的任何类都可以使用这些方法(虽然在某些时候这些方法是根本没有意义的)。
我们知道,Thread对象的sleep()方法也可以使当前线程暂停运行。但sleep()方法和wait()方法从...

查看全部...

标签:

分类:PROJECT | 固定链接 | 评论: 21 | 查看次数: 2001

校园自动广播系统

附件
切换到幻灯片模式

实现的功能:

1、自动播放定义的播放组
2、自动开关机
3、远程上传音视频文件
4、远程管理曲目、曲目组、播放组
5、可以接收客户端发送的命令,主要支持以下命令:

1 play file:d:/wav/003.mp3 2 终止当前播放组,设置播放方式为手动,并且播放003.mp3两次,结束后重新还原为原来的播放方式
2 stop m 跳过当前播放曲目
3 stop g 停止播放当前播放组
4 shutdown 关机
5 auto T/F 将播放方式设置为自动播放(T)和手动播放(F),手动播放表示停止所有广播
6 refresh 终止当前播放任务,重新加载系统...

查看全部...

标签:

分类:UI | 固定链接 | 评论: 5 | 查看次数: 634

JMF简介

写这部分的时候,正值ORACLE收购SUN的消息传来,网络上沸沸扬扬。去SUN公司网站查看醒目的大标题:SANTA CLARA, Calif., April 20, 2009 -- Sun Microsystems (NASDAQ: JAVA) and Oracle Corporation (NASDAQ: ORCL) announced today they have entered into a definitive agreement under which Oracle will acquire Sun common stock for $9.50 per share in cash....

查看全部...

标签:

分类:JMF | 固定链接 | 评论: 5 | 查看次数: 1237

简单的JMF视频播放器

附件
切换到幻灯片模式

简单的JMF视频播放器

接下来我们来看一个简单的视频播放器。因为视频播放需要有界面。所以我们要在一个具有界面的应用程序里实现它。大致的思路是:通过构造函数获取要播放的文件绝对路径,然后通过构造URL传递给Manager,由Manager来制造播放器,并加载指定的文件。当播放器完成以后,即开始播放视频文件。代码分析如下:
CODE:

public class ExpVideoPlayer implements ControllerListener {


类实现了ControllerListener。该事件监听器是针对播放器的,当播放器的到了某些状态以后就可以...

查看全部...

标签:

分类:JMF | 固定链接 | 评论: 3 | 查看次数: 1222

简单的JMF音频播放器

附件
切换到幻灯片模式

简单的的音频播放器

在这一部分,我将带领大家实现一个最简单的音频播放器。这部分涉及到的主要类有Manager类和Player接口。为了能更好地理解代码内部机制,我们不再设计GUI,而把重点放在代码的流程上。

(1)引入必要的类
ExpAudioPlayer类中包括了一些对JMF相关类相关方法的的调用,在其前几行中需要引入所有必要的类:
[code]
import javax.media.*;
import java.io.File;
import java.io.IOException;
import java.net.URL;
import java.net...

查看全部...

标签:

分类:JMF | 固定链接 | 评论: 4 | 查看次数: 1082

远程资源管理器

附件
切换到幻灯片模式

以前远程服务器的翻版,实现的功能:
1、浏览服务器目录
2、上传
3、下载
4、用户权限定义

提高了显示速度,加入了多用户管理

查看全部...

标签:

分类:UI | 固定链接 | 评论: 4 | 查看次数: 729

耗时操作中的界面更新

附件
切换到幻灯片模式

最近开发了一个小程序,其中有一部分是用来显示文件上传进度的。但该显示是在一个耗时循环中,在显示时碰到了一点问题。现将解决方案和简单的示例写出来:

[code]
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import javax.swing.*;
import javax.swing.tree.*;
import java.net.*;
import java.io.*;
import java.util.Vector;
import javax.swing.filechooser....

查看全部...

标签:

分类:UI | 固定链接 | 评论: 4 | 查看次数: 1016

远程屏幕捕捉-本地屏幕捕捉(七)

11、基于插入点的捕捉策略
插入点又叫Caret。但是微软提供的GetCaretPos函数并不能很好地工作。所以基于插入点策略的捕捉有一定难度。
其实,录入时的窗口总是处于最顶层的。也就是说,插入点所在的窗口应该是当前最活跃线程所对应的窗口。有了这样的认识再来理解插入点就不很难了。我们可以通过获得当前线程的信息来实现插入点的具体信息。
(1)线程信息获取函数原型
GetGUIThreadInfo(
DWORD idThread, ;线程号
GUITHREADINFO lpgui ;线程信息结构体

函数实现了对当前GUI线程的属性的获取。
其中最后一个参数记录...

查看全部...

标签:

分类:security | 固定链接 | 评论: 21 | 查看次数: 1753

远程屏幕捕捉-本地屏幕捕捉(六)

10、基于活动窗口的捕捉策略
活动窗口的策略相对比较简单,基本思路是:首先获取当前屏幕的活动窗口句柄(如果桌面上没有活动窗口,则获取桌面的句柄),然后根据句柄获得活动窗口在屏幕的位置和大小。接下来你可以把窗口看成是桌面,当鼠标指针在活动窗口的一定范围内活动时,捕捉的区域以鼠标指针作为对象。当然,你也可以以活动窗口中的插入点作为捕捉屏幕时的依据。
以下代码为活动窗口的定位,其中窗口内使用了跟随鼠标指针的策略:
[code]
;----------------------------
; 根据活动窗口位置更改坐标
;----------------------------
_doCh...

查看全部...

标签:

分类:security | 固定链接 | 评论: 11 | 查看次数: 2584

远程屏幕捕捉-本地屏幕捕捉(五)

附件
切换到幻灯片模式

8、屏幕捕捉策略
针对不同的场合,屏幕捕捉的策略应该有所不同,其捕捉的区域应该以某个特定的中心点作为捕捉的依据。以下讨论了不同场合下响应的捕捉策略:
(1)随机捕捉策略
服务器的屏幕不需要用户操作,因此,对服务器屏幕的监视需要客户端随机选取捕捉区域,并依照该区域进行随机的平滑滚动。该策略以服务器屏幕为中心,需要将变量dwCapturePolicy设置为1
(2)用户指定策略
用户浏览网页时,鼠标指针一直在滚动条上,这时候需要客户自行指定捕捉位置。该策略以客户为中心,需要将变量dwCapturePolicy设置为2
(3)鼠标跟随策略
用户移动鼠标或者操作菜单,点击鼠标等动作发生时...

查看全部...

标签:

分类:security | 固定链接 | 评论: 5 | 查看次数: 1415

远程屏幕捕捉-本地屏幕捕捉(四)

附件
切换到幻灯片模式

8、屏幕上的小粘贴

为了突出个性化的屏幕,我们有时候需要在屏幕上合成一些内容。下面将针对屏幕捕捉做的一些修改,在捕捉的屏幕位图上增加小粘贴。
最主要的代码如下:
[code]
;---------------------
; 更新客户区域
;---------------------
_doUpdateDC proc _lpParam
local @rect:RECT
local @dwSize
LOCAL hdc:HDC
LOCAL hMemDC:HDC
LOCAL rect:RECT

invoke Sleep,1000 ...

查看全部...

标签:

分类:security | 固定链接 | 评论: 31 | 查看次数: 1799

远程屏幕捕捉-本地屏幕捕捉(三)

附件
切换到幻灯片模式

7、屏幕区域捕捉程序设计
(1)根据以上的逐步分析,我们获取到了屏幕区域捕捉的基本思路,知道应该先定位要捕捉的位置,然后再由屏幕DC内容向内存DC复制位图,从而完成屏幕捕捉功能。以下是详细代码:
[code]
;------------------------
; 适应不同策略的屏幕区域捕捉
; 戚利
; 文件名:CapScreen_2.asm
; 2006.4.24
;------------------------
.386
.model flat,stdcall
option casemap:none

include windows.inc
inclu...

查看全部...

标签:

分类:security | 固定链接 | 评论: 8 | 查看次数: 1176