WEB开发网
开发学院软件开发VC Visual C++实现Flash动画播放 阅读

Visual C++实现Flash动画播放

 2008-11-24 19:37:22 来源:WEB开发网   
核心提示: 显然要将Navigate2()函数的第一个参数改成Temp.swf的存放路径,刚才在释放资源到文件时并没有指定绝对路径,Visual C++实现Flash动画播放(3),因此释放出来的资源文件应当和应用程序处于同一目录,但是在此处如果不写明绝对路径是无法显示该临时文件的,本文所述程序在Wi

显然要将Navigate2()函数的第一个参数改成Temp.swf的存放路径。刚才在释放资源到文件时并没有指定绝对路径,因此释放出来的资源文件应当和应用程序处于同一目录。但是在此处如果不写明绝对路径是无法显示该临时文件的。获取该临时文件的绝对路径可用如下方法实现:先获取应用程序本身的绝对路径,然后去处应用程序全名(程序名和扩展名)此时得到的是应用程序和临时文件所处文件夹的路径,最后只需在此基础上加上临时文件的文件名 Temp.swf即可得到临时文件的全路径。下面是实现的主要代码:

  //获取应用程序的全路径
char exeFullPath[MAX_PATH];
GetModuleFileName(NULL,exeFullPath,MAX_PATH);
//将其格式化为字符串
m_TempFile.Format("%s",exeFullPath);
//去掉应用程序的全名(15为应用程序文件全名的长度)
exeFullPath[m_TempFile.GetLength()-15]='';
//得到应用程序所在路径
m_TempFile.Format("%s",exeFullPath);
//得到临时文件的全路径
m_TempFile+="Temp.swf";

最后将得到的临时文件的全路径m_TempFile作为参数传递给Navigate2()即可在程序运行时把Flash动画作为主页而显示。

由于临时文件Temp.swf是在程序运行过程中从应用程序的资源中提取出来的,因此在程序退出之前需要将其删除。一般是在消息WM_DESTORY的响应函数里通过DeleteFile()函数来加以实现的。

小结

本文通过对CHtmlView和内嵌资源的动态释放实现了Flash动画在VC程序中的播放,并对资源的动态释放作了较为清晰的描述。通过类似的方法,可以将动态链接库、HTML文件等程序模块作为资源嵌入其中,在使用时再动态释放到临时文件,这样可有效避免文件模块过多时的杂乱以及程序模块丢失导致程序非正常运行等情况的发生。本文所述程序在Windows 98下,由Microsoft Visual C++ 6.0编译通过。Flash动画由 Macromedia Flash 5.0制作,所需浏览器支持为Internet Explorer 6.0.

上一页  1 2 3 

Tags:Visual 实现 Flash

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接