用flash调用VC打开文件对话框,取得路径。
本来想用flash的as2调用html+javascript的方法取得本地路径,但项目催得紧,没有时间研究基本不会的html了。只好使用熟悉的vc,捣鼓了一整天,凑合出一个解决方法来。不罗嗦了,见正文。
======================flash端的as2脚本如下:
//call Open file dialog
//fscommand("exec", "deleteFile.exe");
//fscommand("exec", "forFlash.exe");
System.useCodepage = true;
//System.setClipboard( "Hello world ");
var gFilePath:String;
function btn1_fun() {
var my_lv:LoadVars = new LoadVars();
var bIsStopWait:Boolean = false;
var intervalId:Number;
var duration:Number = 300000;//5 minus
fscommand("exec", "openFile.exe");
intervalId = setInterval(timerEvent, duration);
my_lv.load("fscommand/filePath.txt",my_lv,"GET");
function timerEvent():Void {
bIsStopWait = true;
clearInterval(intervalId);
title_txt.text = "Time is over.";
//my_lv.load("fscommand/filePath.txt",my_lv,"GET");
}
my_lv.onData = function(src:String) {
if (src == undefined) {
trace("Error loading title.");
title_txt.text = "loading...";
if (true == bIsStopWait) {
title_txt.text = "Time is over.";
bIsStopWait = false;
return;
}
my_lv.load("fscommand/filePath.txt",my_lv,"GET");
return;
} else {
clearInterval(intervalId);
if ("Error_Or_Cancel" == src) {
title_txt.text = "User not open a file.";
} else {
title_txt.text = src;
loadContent(src);
//file path process
gFilePath=src;
}
//call delete path file
fscommand("exec", "deleteFile.exe");
return;
}
};
}
function loadContent(pCon:String) {
var my2_lv:LoadVars = new LoadVars();
my2_lv.onData = function(src:String) {
if (src == undefined) {
trace("Error loading content.");
return;
}
content_txt.text = src;
};
my2_lv.load(pCon,my_lv,"GET");
}
//------------------background-------------------------
function btn2_fun() {
var my_lv:LoadVars = new LoadVars();
var bIsStopWait:Boolean =
相关文档:
1.打开
http://labs.adobe.com/downloads/flashplayer10_64bit.html
下载 Flash Player 10 for 64-bit Linux
2.解压后复制到/usr/lib64/mozilla/plugins
mv libflashplayer.so /usr/lib64/mozilla/plugins/libflashplayer.so
3.重启firefox,可以修改flash默认字体
vi /etc/fonts/conf.d/49-sansserif ......
在执行flash的as脚本时,出现了15秒超时错误。查看adobe官网文档有相关描述
http://help.adobe.com/zh_CN/AS3LCR/Flash_10.0/runtimeErrors.html
出现15秒超时错误后,脚本可以继续执行 15 秒,然后将终止脚本并引发编号为 1503 的运行时错误(脚本在 30 秒内未能退出,终止其执行)。
应用背景: 在flash中有一按钮,增 ......
经daquan提醒,发现听雨对于上传的flash文件的脚本没有处理,用户能够利用上传的flash的脚本功能(比如带有geturl动作的flash)实现自动跳转到某个站点。
到北邮人论坛参考了一下,发现他们有对flash脚本的禁用,于是借鉴北邮人的做法,对听雨的flash附件脚本动作进行了处理,具体做法如下:
改动之前的代码:
<objec ......
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 ......
很多时候,当你有一个层是需要漂浮在页面之上显示的时候,而你的页面里又存在FLASH,这个时候,漂浮层会被FLASH遮挡住,那么解决办法就是给FLASH设置透明属性。
添加参数<param name="wmode"
value="transparent">
//可很好的被IE浏览器所支持
将 wmode="transparent"
加 ......