亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? skl_dyn_load.cpp

?? mpeg4編解碼器
?? CPP
字號:
/******************************************************** * Some code. Copyright (C) 2003 by Pascal Massimino.   * * All Rights Reserved.      (http://skal.planet-d.net) * * For Educational/Academic use ONLY. See 'LICENSE.TXT'.* ********************************************************//* * skl_dyn_load.cpp * *  Dynamic lib loader * This file must be compiler regardless to whether * SKL_USE_DYN_LOAD has been defined or not. ********************************************************/ #include "skl.h"#include "skl_syst/skl_dyn_load.h"#include "skl_syst/skl_exception.h"//////////////////////////////////////////////////////////// __UNIX__ system calls//////////////////////////////////////////////////////////#if defined(__UNIX__)#include <dlfcn.h>// #define OPEN_MODE   RTLD_NOW#define OPEN_MODE   RTLD_LAZYconst int MAX_STR = 512;static SKL_CST_STRING Make_Lib_Name(SKL_STRING Out,                                    SKL_CST_STRING Module){  SKL_ASSERT( strlen(Module)+1+3<MAX_STR);  sprintf(Out, "%s.so", Module);  return Out;}static SKL_CST_STRING Make_Sym_Name(SKL_STRING Out,                                    SKL_CST_STRING Name){  return Name;}static SKL_CST_STRING Make_Sym_Name2(SKL_STRING Out,                                     SKL_CST_STRING Name) {  return 0;}static SKL_ANY Open(SKL_CST_STRING Name) {  return (SKL_ANY)dlopen(Name, OPEN_MODE);}static SKL_ANY Get_Sym(SKL_ANY Handle, SKL_CST_STRING Name) {  return dlsym((void*)Handle, (char*)Name);}static void Close(SKL_ANY Handle) {   dlclose((void*)Handle);}static void Print_Error(SKL_CST_STRING Module) {  fprintf( stderr, "Error while loading '%s':\n%s\n", Module, dlerror() );}#endif  // UNIX//////////////////////////////////////////////////////////// _WINDOWS system calls//////////////////////////////////////////////////////////#if defined(_WINDOWS)#include <windows.h>const int MAX_STR = 512;static SKL_CST_STRING Make_Lib_Name(SKL_STRING Out,                                    SKL_CST_STRING Module){  SKL_ASSERT( strlen(Module)+4+1<MAX_STR);  sprintf(Out, "%s.dll", Module);  return Out;}static SKL_CST_STRING Make_Sym_Name(SKL_STRING Out,                                    SKL_CST_STRING Name){  return Name;}static SKL_CST_STRING Make_Sym_Name2(SKL_STRING Out,                                     SKL_CST_STRING Name){  SKL_ASSERT( strlen(Name)+1+1<MAX_STR);  sprintf(Out, "_%s", Name);  return Out;}static SKL_ANY Open(SKL_CST_STRING Name) {  return (SKL_ANY)LoadLibrary(Name);}static SKL_ANY Get_Sym(SKL_ANY Handle, SKL_CST_STRING Name) {  return (SKL_ANY)GetProcAddress((HMODULE)Handle, (char*)Name);}static void Close(SKL_ANY Handle) {   FreeLibrary((HMODULE)Handle);}static void Print_Error(SKL_CST_STRING Module) {  fprintf( stderr, "Dynload Error while loading '%s'\n", Module );}#endif  // _WINDOWS//////////////////////////////////////////////////////////// SKL_DYN_LIB//////////////////////////////////////////////////////////SKL_DYN_LOADER::SKL_DYN_LOADER(SKL_CST_STRING Module,                                const SKL_INT32 Version,                               int Load_Now)  : _Sym_Count(0), _Handle(0), _Module(0), _Version(0){  Set_Target( Module, Version );  if (Load_Now) Load(); }void SKL_DYN_LOADER::Set_Target(SKL_CST_STRING Module, const SKL_INT32 Version){  Unload();  _Module = Module;  _Version = Version;}int SKL_DYN_LOADER::Load(){  if (Ok()) return 1;  char Out[MAX_STR];  _Handle = Open(Make_Lib_Name(Out, _Module));  if ( _Handle==0 )    goto Error;    // TODO: Check version number here...  return 1;Error:  Print_Error(_Module);  return 0;}SKL_ANY SKL_DYN_LOADER::Load_Symbol(SKL_CST_STRING Symbol){  if (!Ok())    if (!Load())      return 0;  char Out[MAX_STR];  const char *Sym_Name = Make_Sym_Name(Out, Symbol);  SKL_ANY Sym = (SKL_ANY)Get_Sym(_Handle, Sym_Name);  if (Sym==0) // second chance  {    Sym_Name = Make_Sym_Name2(Out, Symbol);    if (Sym_Name!=0)      Sym = (SKL_ANY)Get_Sym(_Handle, Sym_Name);  }    if (Sym==0) {    Print_Error(_Module);    return 0;  }  _Sym_Count++;  return Sym;}void SKL_DYN_LOADER::Unload() {  if (Ok() && --_Sym_Count==0) {    Close(_Handle);    _Handle = 0;  }}//////////////////////////////////////////////////////////// SKL_SYMBOL_BUILDER//////////////////////////////////////////////////////////void SKL_SYMBOL_MAPPER::Map(){  if (!Is_Mapped()) {    if (!_Lib.Load())      Skl_Throw( SKL_EXCEPTION( "Dynamic load aborted...\n" ) );    _New = (void *(*)())_Lib.Load_Symbol(_Symb);    if (_New==0)      Skl_Throw( SKL_EXCEPTION( "Dynamic load aborted...\n" ) );  }}void SKL_SYMBOL_MAPPER::Unmap(){  _Lib.Unload();  _New = 0;}//////////////////////////////////////////////////////////

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产拍揄自揄精品视频麻豆| 蜜桃视频一区二区三区在线观看| 亚洲精品一二三| 裸体歌舞表演一区二区| 99r国产精品| 精品成人在线观看| 亚洲va在线va天堂| 91丨九色丨黑人外教| 久久先锋资源网| 丝袜诱惑制服诱惑色一区在线观看| 福利一区二区在线| 日韩一级免费观看| 亚洲成人精品在线观看| 91污片在线观看| 中文字幕欧美三区| 国产精品综合av一区二区国产馆| 欧美亚洲另类激情小说| 最新欧美精品一区二区三区| 国产一区二区三区免费播放| 91精品免费在线观看| 亚洲综合久久av| 91视频在线看| 国产精品盗摄一区二区三区| 国产乱人伦偷精品视频免下载| 51精品国自产在线| 午夜精品久久久久久久蜜桃app| 97久久久精品综合88久久| 国产亚洲一区二区三区在线观看| 久久机这里只有精品| 3d成人动漫网站| 天堂va蜜桃一区二区三区| 欧美日韩国产首页在线观看| 亚洲综合激情网| 在线观看国产91| 亚洲国产综合在线| 欧美日韩国产乱码电影| 午夜精品福利久久久| 欧美日韩色综合| 天天射综合影视| 91精品国产乱码| 久久草av在线| 久久精品日韩一区二区三区| 国产黄色成人av| 亚洲国产精华液网站w| av在线不卡观看免费观看| 国产精品福利在线播放| av亚洲精华国产精华| 亚洲欧洲av另类| 欧美视频第二页| 麻豆91在线观看| 国产精品乱码一区二区三区软件| 成人黄色大片在线观看| 亚洲精品国产精品乱码不99 | 国产精品美女一区二区在线观看| 久久99国内精品| 中文字幕欧美日韩一区| 91免费小视频| 蜜芽一区二区三区| 国产日韩欧美激情| 欧美色欧美亚洲另类二区| 免费在线观看视频一区| 国产欧美日韩在线| 欧美视频完全免费看| 老司机午夜精品99久久| 国产精品久久久久精k8| 欧美日韩亚洲高清一区二区| 麻豆精品视频在线观看| 国产精品久久久久久妇女6080| 91国偷自产一区二区开放时间 | 精品少妇一区二区三区免费观看| 国产剧情一区二区三区| 一区二区三区影院| 欧美电影免费观看高清完整版在线 | 午夜成人免费视频| 欧美精品一区二区三| 一本大道av一区二区在线播放 | 久久精品国产亚洲5555| 国产精品久久久久天堂| 8x8x8国产精品| 91伊人久久大香线蕉| 六月丁香婷婷久久| 一区二区三区不卡视频| 久久品道一品道久久精品| 欧美最新大片在线看| 国产一区二三区好的| 亚洲va在线va天堂| 亚洲欧洲三级电影| 久久一日本道色综合| 欧美亚洲国产一区二区三区va| 国产精品羞羞答答xxdd| 日本欧美一区二区三区乱码| 亚洲欧美影音先锋| 2022国产精品视频| 91精品欧美久久久久久动漫| 91国产精品成人| 从欧美一区二区三区| 精品一区二区三区欧美| 亚洲成a人片在线观看中文| 中文字幕一区二区三区视频| 精品剧情在线观看| 欧美一区二区高清| 欧美人xxxx| 欧美日韩中字一区| 色丁香久综合在线久综合在线观看| 国产不卡一区视频| 国产乱码精品一区二区三区忘忧草 | 激情亚洲综合在线| 日韩国产精品久久久| 亚洲一区在线看| 一区二区不卡在线播放| 综合久久久久久久| 国产精品国产精品国产专区不蜜| 久久久久成人黄色影片| 亚洲精品一区二区三区99| 欧美xxx久久| 久久老女人爱爱| 中文字幕精品一区| 国产精品伦理一区二区| 国产精品人成在线观看免费 | 一区二区国产视频| 一个色综合av| 肉色丝袜一区二区| 久久国产三级精品| 国产精品一区二区黑丝| 国产成人精品午夜视频免费| 国产一区二区三区国产| 国产麻豆91精品| 国产成人午夜视频| 波多野结衣亚洲| 一本到不卡免费一区二区| 精品视频在线免费观看| 欧美精品在线视频| 欧美一区二区三区成人| 日韩欧美一区二区在线视频| 欧美va亚洲va在线观看蝴蝶网| 精品国精品国产| 国产精品美女一区二区三区| 亚洲伦理在线免费看| 亚洲综合区在线| 麻豆精品国产传媒mv男同| 国产精品亚洲午夜一区二区三区 | 亚洲欧洲三级电影| 亚洲一二三四在线| 精品在线免费视频| 成人精品国产一区二区4080| 99精品桃花视频在线观看| 欧美日本在线看| 亚洲欧美激情小说另类| 亚洲欧美另类在线| 免费亚洲电影在线| gogo大胆日本视频一区| 6080亚洲精品一区二区| 日本一区二区三区国色天香 | 不卡电影免费在线播放一区| 一本大道av伊人久久综合| 91精品国产91久久久久久最新毛片| 久久只精品国产| 一区二区日韩电影| 国产精品一区二区久久精品爱涩| 色欧美日韩亚洲| 久久新电视剧免费观看| 亚洲一区国产视频| 岛国一区二区三区| 欧美一区二区视频免费观看| 中文字幕在线观看一区| 久久国产生活片100| 在线亚洲精品福利网址导航| 精品成人一区二区| 色噜噜狠狠色综合中国| 久久久亚洲欧洲日产国码αv| 亚洲电影视频在线| 99国内精品久久| 久久久91精品国产一区二区精品| 亚洲综合精品久久| 成人国产精品免费网站| 精品久久久久久亚洲综合网| 亚洲一区二区三区四区在线| 成人性生交大片免费| 日韩视频永久免费| 亚洲在线视频免费观看| 99麻豆久久久国产精品免费优播| 337p粉嫩大胆噜噜噜噜噜91av| 亚洲一区二区三区四区的| 91亚洲午夜精品久久久久久| 国产日韩欧美不卡在线| 黑人巨大精品欧美黑白配亚洲| 欧美日韩激情一区二区三区| 一区二区三区四区蜜桃 | 国产精品人妖ts系列视频| 激情综合网天天干| 日韩精品专区在线影院重磅| 亚洲v精品v日韩v欧美v专区| 欧美伊人久久久久久久久影院 | www.亚洲在线| 日本一区二区三区dvd视频在线| 久久99国内精品| 精品国内片67194| 国产一区视频在线看| 26uuu久久综合| 国产精品自拍网站|