-}
-
-void *wxDynamicLibrary::GetSymbol(const wxString &name, bool *success) const
-{
- wxCHECK_MSG( IsLoaded(), NULL,
- _T("Can't load symbol from unloaded library") );
-
- bool failed = FALSE;
- void *symbol = 0;
-
-#if defined(__WXMAC__) && !defined(__UNIX__)
- Ptr symAddress;
- CFragSymbolClass symClass;
- Str255 symName;
-#if TARGET_CARBON
- c2pstrcpy( (StringPtr) symName, name );
-#else
- strcpy( (char *)symName, name );
- c2pstr( (char *)symName );
-#endif
- if( FindSymbol( dllHandle, symName, &symAddress, &symClass ) == noErr )
- symbol = (void *)symAddress;
-
-#elif defined(__WXPM__) || defined(__EMX__)
- DosQueryProcAddr( m_handle, 1L, name.c_str(), (PFN*)symbol );
-
-#elif defined(HAVE_DLOPEN)
- symbol = dlsym( m_handle, name.c_str() );
-
-#elif defined(HAVE_SHL_LOAD)
- if( shl_findsym( &m_handle, name.c_str(), TYPE_UNDEFINED, &symbol ) != 0 )
- symbol = 0;
-
-#elif defined(__DARWIN__)
- if( NSIsSymbolNameDefined( name.c_str() ) )
- symbol = NSAddressOfSymbol( NSLookupAndBindSymbol( name.c_str() ) );
-
-#elif defined(__WINDOWS__)
- symbol = ::GetProcAddress( m_handle, name.mb_str() );
-
-#else
-#error "runtime shared lib support not implemented"
-#endif