利用flash与.net下socket通信实现WEB页面的“推”
(一)基本概述 现在B/S结构的系统越来越流行,然而由于B/S系统都是基于HTTP协议的,这就决定了它在实时应用方面的缺陷。因为服务器端的信息发生了任何变化都不会主动发送到客户端(曾经热及一时的“推”技术已经不了了之了),都需要客户端主动的去请求服务器端才能获得新数据。那么这里就存在一个问题了,客户端如何才知道服务器端数据发生了变化?何时才该去向服务器请求新数据呢?现在在B/S里通常的解决方案是通过客户端浏览器的定时刷新来定时向服务器请求新数据,但是这样存在一定的时间误差,在一些实时性要求比较高的系统(如生产线的监控等)里还是不能达到要求,并且在服务器端没有数据变化时客户端仍然会发出获取数据的请求,这样就加重了服务器和网络传输的负担。
然而在C/S系统里,我们通过Scoket通道可以很容易的在数据发生变化时由Server端主动的将变化后新数据送到Client端。但是我们如何在B/S的系统里使用Scoket呢?我们可能会想到利用activeX控件,但这涉及到数字签名等问题,而且制作过程也比较麻烦。
其实Flash已经为我们提供了一个XMLSocket对象,来实现了客户端socket,允许包含Flash应用的浏览器与服务端建立socket连接,之后Flash应用与服务端就可以相互发送XML数据,而且在一个socket连接建立之后,在该连接上传送的数据量是没有限制的,直到socket连接关闭。另外一方面页面 上的Flash和页面上的Javascript之间可以很容易的实现通信,互相控制和调用,这样我们就可以利用Flash作为桥梁来连接浏览器上的WEB页面和服务器端Socket通信,从而达到服务器主动“推”客户端的效果。 (武林英雄)网页游戏适合用这一种方案@@
相关文档:
VB显示透明FLASH效果
演示效果:
代码如下:
公共声明区域
Option Explicit
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias "SetW ......
flashbuilder中可以建立flex工程与actionscript工程.
flex工程内可以使用mxml是完成设计工作.
actionscript工程建立时默认只有:
playerglobal.swc
flex.swc
utilities.sec
playerglobal.swc
这几个类库.没有framework.swc,就无法使用Button等控件了.
解决方案是 actionscript工程中加入framework.swc.
路径是 x:/A ......
Beside the different silicon cell design, the most important difference between NAND and NOR Flash is the bus interface. NOR Flash is connected to a address / data bus direct like other memory devices as SRAM etc. NAND Flash uses a multiplexed I/O Interface with some additional control pins. NAND fl ......
主要目的:移植u-boot-1.3.2到K9开发板,使其直接从FLASH
启
动,而不是通过boot.bin和u-boot
压
缩文件
启动。实现u-
boot的非压缩式的从FLASH的0x10000000地址处直接启动。
硬件资源:K9开发
板 &n ......
今天有人问到了怎么只用flex前端来计算用户访问本页的次数!!
其实这不难想 ,我们需要利用类似 cookie的东西
flash 里就是 SharedObject
下面就是利用SharedObject来确定用户访问本网站的次数
多次刷新页面进行测试demo :
http://56589.5c5 ......