我想在我的工程中得到一个动态库中资源,比如位图,图标,我加在动态库后,通过ID 去取位图,编译没有问题,但是好象没有取到,请高手指点

解决方案 »

  1.   

    hehe,你在exe里是exe的资源句柄,当然取不到动态库的了,先把资源句柄切换到动态库,取得资源后再切换回来
      

  2.   

    HRSRC hResLoad;     // handle to loaded resource 
    HANDLE hExe;        // handle to existing .EXE file 
    HRSRC hRes;         // handle/ptr. to res. info. in hExe 
    HANDLE hUpdateRes;  // update resource handle 
    char *lpResLock;    // pointer to resource data 
    BOOL result; 
    // Load the .EXE file that contains the dialog box you want to copy. 
    hExe = LoadLibrary("hand.exe"); 
    if (hExe == NULL) 

        ErrorHandler("Could not load exe."); 

     
    // Locate the dialog box resource in the .EXE file. 
    hRes = FindResource(hExe, "AboutBox", RT_DIALOG); 
    if (hRes == NULL) 

        ErrorHandler("Could not locate dialog box."); 

     
    // Load the dialog box into global memory. 
    hResLoad = LoadResource(hExe, hRes); 
    if (hResLoad == NULL) 

        ErrorHandler("Could not load dialog box."); 

     
    // Lock the dialog box into global memory. 
    lpResLock = LockResource(hResLoad); 
    if (lpResLock == NULL) 

        ErrorHandler("Could not lock dialog box."); 

      

  3.   

    HINSTANCE hLibrary ;
    HBITMAP hBitmap ;
    int iCurrent = 1 ;
    hLibrary = LoadLibrary ("xxx.DLL")
    hBitmap = LoadBitmap (hLibrary, MAKEINTRESOURCE (iCurrent)) ;