如何将Flash文件做为资源保存在.res中啊?
解决方案 »
- 求Carlos Antollini的ADO封装 VS2008版
- 请教,该在何处包含头文件
- 有没有这个菜单消息??
- 图形控件怎么使用?
- 常看到msdn说句柄能否继承,是啥意思?
- 如何一个电脑同步控制多台电脑
- 关于CreateDIBbitmap的问题,我写了个调用的程序,运行后只可以显示3次,就出问题了,求教高手
- 对《WINDOWS程序设计》里面说的多边形填充方式不理解,哪位大虾可否讲讲???
- 告诉我有分哦。在对话框中加菜单,为什么不响应pCmdUI->SetCheck(1)?
- 如何向另一个程序发送消息,改变他的BorderStyle
- Webbrowser 的IHTMLDocument2 的write的显示字体编码方式
- 怎么改变边框颜色
如下方法://查找资源
//IDR_XXXXXX就是你刚才导入的flash文件的ID,在resource.h中找。
HRSRC hRsrc = FindResource(NULL, MAKEINTRESOURCE(IDR_XXXXXX), TEXT("MY_FLASH_DATA")); //获取资源大小
DWORD dwSize = SizeofResource(NULL, hRsrc);
//加载资源
HGLOBAL hGL = LoadResource(NULL, hRsrc); //锁定资源
LPVOID lp = LockResource(hGL); 之后就可以使用了,过年大扫除,先这样吧…………
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();
明白了