#include "dkcOSIndependent.h"
dkcDLL.hのインクルード依存関係図
このグラフは、どのファイルから直接、間接的にインクルードされているかを示しています。
構成 | |
struct | dkc_DLL |
型定義 | |
typedef dkc_DLL | DKC_DLL |
関数 | |
DKC_EXTERN DKC_DLL *WINAPI | dkcLoadLibrary (const char *filename) |
Win32APIで言うLoadLibrary. | |
DKC_EXTERN void *WINAPI | dkcGetProcAddress (DKC_DLL *dll, const char *id) |
Win32APIで言うGetProcAddress. | |
DKC_EXTERN int WINAPI | dkcUnloadLibrary (DKC_DLL **pp) |
Win32APIで言うFreeLibrary. |
d金魚
dkcDLL.h で定義されています。
|
参照元 dkcGetProcAddress(), dkcLoadLibrary(), と dkcUnloadLibrary(). |
|
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 } |