Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 软件时空 > 工具软件 > Macromedia Flash Remoting for Flash MX 2004 ActionScript 2.0 速成
【标  题】:Macromedia Flash Remoting for Flash MX 2004 ActionScript 2.0 速成
【关键字】:c,in,for,ip,io,MX,2004,20,Flash,Remoting,on,Re,Script,04,Mac,Macromedia,or,Action,200,ActionScript,Macromedia,Flash,Remoting,for,Flash,MX,2004,ActionScript
【来  源】:网络

Macromedia Flash Remoting for Flash MX 2004 ActionScript 2.0 速成

Your Ad Here P.S.好久没有上来了..一上来看到这么好的文章,看到没有人应楼主的意思去改为简体版,那我就来改了.....
指教了.

Macromedia Flash Remoting for Flash MX 2004 ActionScript 2.0 速成 ( 搭配 ColdFusion )

万用ActionScript

import mx.remoting.*;
import mx.rpc.*;
//服务器传回数据时,会调用此函数
function myTestFunction_Result (re:ResultEvent):Void {
trace("返回数据:" + re.result);}
//发生异常时,会调用此函数
function myTestFunction_Fault (fault:FaultEvent):Void {
trace("异常信息:" + fault.fault.description);}
//建站一个连接到127.0.0.1根目录的myCFCDir文件夹中的myCFC.cfc
var myService:Service = new Service("http://127.0.0.1/flashservices/gateway",null,"myCFCDir.myCFC",null,null);
//调用myService所指向的CFC中的myTestFunctino函数,并传入”123”作为参数
var myPendingCall:PendingCall = myService.myTestFunction("123");
//当这个函数有回传值时,使用一个RelayResponder对象来对它做出处理.这个对象在处理时会调用我们在最前面做的myTestFunction_Result 或 myTestFunction_Fault 函数
myPendingCall.responder = new RelayResponder(this,"myTestFunction_Result","myTestFunction_Fault");

万用CFC

<cfcomponent output="no">
<cffunction access="remote" name="myTestFunction" output="false">
<cfargument name="var_01" required="yes" type="any">
<cfset tmp = var_01 & var_01>
<cfreturn tmp>
</cffunction>
</cfcomponent>

制作步骤:
1.首先当然先确定ColdFusion MX 6.1 ( 或 BlackStone - ColdFusion MX 7 )、Flash MX 2004 及 Flash Remoting AS2 都安裝好了,且 ColdFusion 服務有在执行中.

2.在网站的根目录中新建一个文件夹叫myCFCDir,里面新建一个文件叫myCFC.cfc(若使用ColdFusion内建的网站服务器,网站根目录是预设在ColdFusion文件夹下的「wwwroot」文件夹)

3.将myCFC.cfc的内容改成上面的万用CFC的内容.

4.用http://127.0.0.1/myCFCDir/myCFC.cfc网址查看CFC的语法是否正确, ColdFusion会要求先输入密码,这是为了安全起见.

5.在Flash MX 2004 新建一个文件.在菜单栏上选「Windows」「Other Panels」「Common Libraries」「Remoting」,会多出一个元件库,里面有两个Flash Remoting AS2的元件,将RemotingClasses拖一个到场景上,再将它删除,这样他就会出现在这个新的文件的元件库中.

6.将上面的万用ActionScript复制到第一帧的动作面板中,并针对你的环境将代码做适当调整.
7.执行该Flash测试是否有trace出「返回数据: :123123」,如果有就成功了.

8.要做别的Flash Remoting 就直接拿上面的万用 ActionScript 及万用 CFC 修改就可以了。

Flash的运作过程:
首先由Flash来看,一开始就载入了我们需要的这些类,然后定义了两个函数,分别用于处理ColdFusion的返回值,以及在发生错误时做相关的处理(trace出错误讯息)

接着建立 Service对象myService,这是一个直接指向CFC的对象,在这里例子中它指向IP为127.0.0.1的服务器(就是本机)根目录下的myCFCDir文件夹中的myCFC.cfc这个文件. 「/flashservices/gateway」是ColdFusion来处理Flash Remotion呼叫的路径,无论你的CFC放在这台主机的哪里,都不会改变.

再来执行myService指向CFC中的myTestFunction函数,并将返回的PendingCall对象的实例myPendingCall,这个对象是Flash在送出对CFC的调用时就立刻建立的,可以将它想像成调用CFC的这个动作,而非CFC返回的结果.

最后我们建立一个RelayResponder对象,并把它指给myPendingCall的 responder。这是专门来处理ColdFusion的返回值,处理的方法就是一开头建立的两个函数,所以在建立这个对象的同时,将那两个函名名称传给它了

当CFC传回数据时, myPendingCall就会调用自己的responder方法,并决定执行成功还是失败的函数来处理这些数据.

用原型继承方法:【上一篇】
AS数据类型的一些探索:【下一篇】
【相关文章】
  • Flash中的物理运动知识(1)
  • Flash中的物理运动知识(2)
  • Flash中的物理运动知识(3)
  • Flash中的物理运动知识(4)
  • mx.utils 包之Collection&Iterator
  • for循环使用详解(c语言版)
  • Flash 实用编程百例解读
  • 实例学用Flash MX增强的AS功能
  • 用flash动作脚本动态创建和控制文本框
  • Flash MX的AS绘图和时间控制
  • 【随机文章】
  • 一个使用信号量实现的互斥访问list的类
  • 政府VPN
  • stat.c
  • 任务管理器和注册表被锁的解锁方法
  • QQ免费得到魔法表情以及原理
  • 摆渡者分形软件发布
  • 看到一个粗制滥造的程序所感
  • 你尽力了吗
  • 动感首页更新实现之六 ------ 首页删除篇
  • flash8的mx.data.binding.EndPoint
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.