HRSRC FindResource(
  HMODULE hModule, // module handle
  LPCTSTR lpName,  // resource name
  LPCTSTR lpType   // resource type
);
装载ICON资源,最后一个参数用的是RT_ICON或RT_GROUP_ICON
都返回为NULL,为什么?我的目的是想将icon资源写到文件里:1.ico
如果用的是LoadIcon返回HICON又该如何做呢

解决方案 »

  1.   

    应该是lpName不对,要看你定义的ID还是string
      

  2.   

    你可以去查下我的这个问题,
    不仅仅我一个人出现而且我的lpName没错
      

  3.   

    1813 The specified resource type cannot be found in the image file. 
      

  4.   


    // 我在本机上试了一下,正常
    HRSRC hRsc = FindResource(NULL, MAKEINTRESOURCE(IDI_ICON1), RT_GROUP_ICON);
    if(NULL == hRsc)
    {
    DWORD dwRet = GetLastError();
    CString str;
    str.Format(_T("%d"), dwRet);
    AfxMessageBox(str);
    return ;
    }
    DWORD dwSize = SizeofResource(NULL, hRsc);
    if(0 == dwSize)
    {
    return ;
    }
    HGLOBAL hGlobal = LoadResource(NULL, hRsc);
    if(NULL == hGlobal)
    {
    return ;
    }
    LPVOID pBuf = LockResource(hGlobal);
    if(NULL == pBuf)
    {
    return ;
    }
    UnlockResource(hGlobal);
      

  5.   

    晕了
    ico我是放在资源里的,
    用的是RT_GROUP_ICON返回1813
    如果用RT_ICON则返回1814错误
    这到底是怎么回事呢?
      

  6.   

    发现好像有的ico文件不可以
    有的可以
    但是FindResource可以正常返回的话
    我最后WriteFile写到文件里
    也不能正常显示出ico来,而已系统默认的文件图标