dll.c

来自「著名物理引擎Hawk的源代码」· C语言 代码 · 共 70 行

C
70
字号
/* dll.c, HAWK game engine
 *
 * Copyright 1997-1998 by Phil Frisbie, Jr.
 * for Hawk Software
 *
 */

#ifdef WIN32

#include <windows.h>
HMODULE Handle;

void *dllLoad(char *name)
{
	Handle = LoadLibrary(name);
	return (void *)Handle;
}

void *dllGetFunction(void *handle, char *name)
{
	return GetProcAddress((HMODULE)handle, name);
}

void dllUnload(void *handle)
{
	if(handle)
		FreeLibrary((HMODULE)handle);
}

#else

#ifdef LINUX

#include <dlfcn.h>
void *Handle;

void *dllLoad(char *name)
{
	Handle=dlopen(name, RTLD_NOW);
	return Handle;
}

void *dllGetFunction(void *handle, char *name)
{
	return dlsym(handle, name);
}

void dllUnload(void *handle)
{
	if(handle)
		dlclose(handle);
}

else
void *dllLoad(char *name)
{
	return NULL;
}

void *dllGetFunction(void *dll, char *name)
{
	return NULL;
}

void dllUnload(void *dll)
{
}

#endif
#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?