00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef flc_DLL_WIN_H
00018 #define flc_DLL_WIN_H
00019
00020 #include <falcon/dll_base.h>
00021 #include <windows.h>
00022
00023 namespace Falcon
00024 {
00025
00026 class FALCON_DYN_CLASS DllLoader_win
00027 {
00028 HMODULE m_module;
00029 DWORD m_error;
00030
00031 public:
00032 DllLoader_win():
00033
00034 m_module( NULL )
00035 {}
00036
00037 virtual ~DllLoader_win();
00038
00039 bool open( const String &dll_name );
00040 bool close();
00041 virtual void getErrorDescription( String &descr ) const;
00042
00043 void assign( DllLoader_win &other );
00044
00045 DllFunc getSymbol( const char *sym_name ) const ;
00046 static bool isDllMark( char ch1, char ch2 );
00047 static const char *dllExt() { return "dll"; };
00048 };
00049
00050 typedef DllLoader_win DllLoader;
00051
00052 }
00053
00054 #endif
00055
00056