Exemplo n.º 1
0
ILibrary *LibrarySystem::OpenLibrary(const char *path, char *error, size_t maxlength)
{
	LibraryHandle lib;
#if defined PLATFORM_WINDOWS
	lib = LoadLibraryA(path);
#elif defined PLATFORM_POSIX
	lib = dlopen(path, RTLD_NOW);
#endif

	if (lib == NULL)
	{
		GetLoaderError(error, maxlength);
		return NULL;
	}

	return new CLibrary(lib);
}
Exemplo n.º 2
0
CLibrary* LibrarySystem::OpenLibrary(const char* path, char* error, size_t maxlength)
{
#if defined PLATFORM_WINDOWS

	LibraryHandle lib = LoadLibrary(path);

#elif defined PLATFORM_POSIX

	LibraryHandle lib = dlopen(path, RTLD_NOW);
#endif

	if (!lib)
	{
		if (error && maxlength)
		{
			GetLoaderError(error, maxlength);
		}

		return nullptr;
	}

	return new CLibrary(lib);
}