现在的位置: 首页 > 综合 > 正文

vc中载入flash资源

2013年08月31日 ⁄ 综合 ⁄ 共 808字 ⁄ 字号 评论关闭

1.工程区的 resource树中,鼠标右键->import,
2.选择 *.swf文件;

3.Resource type 里输入 "SWF",包括双引号;

4.swf被以二进制方式导入资源中;

5. CMyDlg::OnInit() 里加入如下代码:

  CString Type="swf";
  HRSRC res=FindResource (NULL,MAKEINTRESOURCE(IDR_SWF1),Type);
  HGLOBAL gl=LoadResource (NULL,res); 
  //返回指向资源内存的地址的指针
  LPVOID lp=LockResource(gl);
  //保存的临时文件名
  CString filename="search.swf";
 
  HANDLE fp= CreateFile(filename,GENERIC_WRITE,0,NULL,CREATE_ALWAYS,0,NULL);
  DWORD a;
  //sizeofResource 得到资源文件的大小
  if (!WriteFile (fp,lp,SizeofResource (NULL,res),&a,NULL))
  return 1;
  //关闭句柄
  CloseHandle (fp);
  //释放内存
  FreeResource (gl); 
 
  //查找flash文件并加载
  TCHAR strCurDrt[500];
  int nLen = ::GetCurrentDirectory(500,strCurDrt);
  if( strCurDrt[nLen]!='\\' )
  {
  strCurDrt[nLen++] = '\\';
  strCurDrt[nLen] = '\0';
  }
   
  CString strFileName = strCurDrt;
  strFileName += "search.swf";
  m_MyFlash.LoadMovie(0, strFileName);
  m_MyFlash.Stop();

抱歉!评论已关闭.