#include "dkcDLL.h"dkcDLL.cのインクルード依存関係図

関数 | |
| DKC_DLL *WINAPI | dkcLoadLibrary (const char *filename) |
| Win32APIで言うLoadLibrary. | |
| void *WINAPI | dkcGetProcAddress (DKC_DLL *dll, const char *id) |
| Win32APIで言うGetProcAddress. | |
| int WINAPI | dkcUnloadLibrary (DKC_DLL **pp) |
| Win32APIで言うFreeLibrary. | |
dkcDLL.c で定義されています。
|
||||||||||||
|
Win32APIで言うGetProcAddress.
参照先 DKC_DLL, dkc_DLL::mHandle, と NULL.
|
|
|
Win32APIで言うLoadLibrary.
参照先 DKC_DLL, dkcAllocate(), dkcFree(), dkc_DLL::mHandle, と NULL.
00011 {
00012 DKC_DLL *p = NULL;
00013 p = dkcAllocate(sizeof(DKC_DLL));
00014 if(NULL==p) return NULL;
00015
00016 #ifdef WIN32
00017 p->mHandle = LoadLibrary(filename);
00018 #else
00019 p->mHandle = dlopen(filename, RTLD_NOW | RTLD_GLOBAL);
00020 #endif
00021 if(p->mHandle == 0){
00022 goto Error;
00023 }
00024 return p;
00025 Error:
00026 dkcFree(&p);
00027 return NULL;
00028 }
|
|
|
Win32APIで言うFreeLibrary.
参照先 DKC_DLL, dkcFree(), edk_FAILED, と NULL.
00047 {
00048 if(NULL==pp || NULL==*pp || NULL==(*pp)->mHandle){
00049 return edk_FAILED;
00050 }
00051
00052 #ifdef WIN32
00053 FreeLibrary((*pp)->mHandle);
00054 #else
00055 dlclose((*pp)->mHandle);
00056 #endif
00057 return dkcFree(pp);
00058 } |
1.3.6