如何生成一个只有资源的DLL?怎么导出DLL里的资源?应用程序又怎么调用DLL里的资源呢?

解决方案 »

  1.   

    首先创建一个WIN32 DLL工程,不是MFC的DLL,然后创建一个资源文件 *.RC,添加到资源DLL的工程中去。然后添加一个初始化DLL的原文件。 
     
     
    #include  
     
    extern "C" 
    BOOL WINAPI DllMain( HINSTANCE hInstance, DWORD dwReason, LPVOID ) 

    return 1; 

     
    这是纯资源DLL所必须需的代码,保存这个文件为*.CPP。编译这个资源DLL。在应用程序显示的调用这个DLL,使用LoadLibrary函数装入资源DLL,FindResource和LoadResource来装入各种资源,或者使用下列的特定的资源装入函数: 
     
    FormatMessage  
    LoadAccelerators  
    LoadBitmap  
    LoadCursor  
    LoadIcon  
    LoadMenu  
    LoadString  
    当资源使用结束,你的应用程序须调用FreeLibrary函数来释放资源。 
     
    下面就讲一下如何调用编写好的资源DLL 
     
    首先在应用程序中声明一个DLL的句柄,HINSTANCE m_hLibrary;在OnCreate( )函数中调用LoadLirbrary( ),在OnDestory( )中调用FreeLibrary()。