.rc文件  
 
about.htm    HTML  DISCARDABLE  "res\\about.htm"  
flash.swf    HTML  DISCARDABLE  "res\\flash.swf"  
pic.jpg        HTML  DISCARDABLE  "res\\pic.jpg"  
 
about.htm:  
 
<object  classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"  codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0"  width="407"  height="181">  
   <param  name="movie"  value="flash.swf">  
   <param  name="quality"  value="high">  
   <embed  src="flash.swf"  quality="high"  pluginspage="http://www.macromedia.com/go/getflashplayer"  type="application/x-shockwave-flash"  width="407"  height="181"></embed></object>  
<img  src="pic.jpg"  width="272"  height="146">  
 
void  CIEView::OnInitialUpdate()  
Navigate2(_T("res://IE.exe/about.htm"),NULL,NULL);  
 
//Navigate2(_T("res://IE.exe/flash.swf"),NULL,NULL);这样也说没加载影片  
 
图片可以显示出来,但是FLASH文件无法显示,说没有加载影片。如何做呢?

解决方案 »

  1.   

    不知道flash支不支持这样的路径,不支持的话,先把flash文件释放出来。
      

  2.   

    就是说要把资源里的FLASH释放到一个临时目录里,那么如何释放能告诉我吗
      

  3.   

    首先声明,这是一种方法,不知道能不能像你那样直接使用资源中的路径。下面是从资源中提取文件的方法:BOOL ExtractRes(LPCTSTR szResourceName, LPCTSTR szResourceType, LPCTSTR szSavePath)
    {
    HRSRC hResrc = FindResource(AfxGetResourceHandle(), szResourceName,szResourceType);
    HGLOBAL hResData;
    if (!hResrc || !(hResData = LoadResource(AfxGetResourceHandle(),hResrc)))
    {
    TRACE(_T("Load (resource): Error loading resource %s\n"),szResourceName);
    return FALSE;
    };
    DWORD dwSize = SizeofResource(AfxGetResourceHandle(),hResrc);

    // hResData is not the real HGLOBAL (we can't lock it)
    // let's make it real

    HGLOBAL hGlobal = GlobalAlloc(GMEM_MOVEABLE | GMEM_NODISCARD,dwSize);
    if (!hGlobal)
    {
    TRACE(_T("Load (resource): Error allocating memory\n"));
    FreeResource(hResData);
    return FALSE;
    };

    char *pDest = reinterpret_cast<char *> (GlobalLock(hGlobal));
    char *pSrc = reinterpret_cast<char *> (LockResource(hResData));
    if (!pSrc || !pDest)
    {
    TRACE(_T("Load (resource): Error locking memory\n"));
    GlobalFree(hGlobal);
    FreeResource(hResData);
    return FALSE;
    };
    CopyMemory(pDest,pSrc,dwSize);
    FreeResource(hResData);
    GlobalUnlock(hGlobal);

    CFile file;
    file.Open(szSavePath, CFile::modeCreate | CFile::modeReadWrite);
    file.WriteHuge(pDest, dwSize);
    file.Close();

    GlobalFree(hGlobal);

    return TRUE;
    }
    使用方法:
    ExtractRes(MAKEINTRESOURCE(ResID), ResType, SavePath);