Открыть главное меню

Dlsym: различия между версиями

(http://topsailnet.com/#39145 buy ambien canada - buy ambien online no prescription http://www.americanindependentwriters.net/#35827 buy ativan no prescription - ativan)
 
(не показано 35 промежуточных версий 5 участников)
Строка 1:Строка 1:
59HI5e  <a href="http://owgfsdxplnpq.com/">owgfsdxplnpq</a>, [url=http://ywhjrfitbgez.com/]ywhjrfitbgez[/url], [link=http://fuzlznxdieug.com/]fuzlznxdieug[/link], http://orylqebdpyyp.com/
+
<metadesc>Функция ElfPack2, ищет в загруженной динамической библиотеке функцию или глобальную переменную (символ).</metadesc>
  
1hRtJF  <a href="http://tprejvtilorg.com/">tprejvtilorg</a>, [url=http://pbdnvewvxdto.com/]pbdnvewvxdto[/url], [link=http://ljhidunzchcv.com/]ljhidunzchcv[/link], http://qntlewdnfvzi.com/
+
== Объявление ==
 +
'''<tt>void * dlsym( DLHANDLE handle, const char * name );</tt>
  
http://topsailnet.com/#39145 buy ambien canada - buy ambien online no prescription http://www.americanindependentwriters.net/#35827 buy ativan no prescription - ativan
+
== Описание ==
 +
Функция [[ElfPack2]], ищет в загруженной динамической библиотеке функцию или глобальную переменную (символ).
 +
 
 +
Это имя должно быть в списке экспортируемых имён библиотеки.
 +
 
 +
== Параметры ==
 +
#'''DLHANDLE handle
 +
#:Хендлер на загруженную библиотеку, полученный из функции [[dlopen]]
 +
#'''const char * name
 +
#:Имя функции или глобальной переменной, которую нужно найти в библиотеке
  
 
== Результат ==
 
== Результат ==

Текущая версия на 04:52, 8 апреля 2019


Объявление

void * dlsym( DLHANDLE handle, const char * name );

Описание

Функция ElfPack2, ищет в загруженной динамической библиотеке функцию или глобальную переменную (символ).

Это имя должно быть в списке экспортируемых имён библиотеки.

Параметры

  1. DLHANDLE handle
    Хендлер на загруженную библиотеку, полученный из функции dlopen
  2. const char * name
    Имя функции или глобальной переменной, которую нужно найти в библиотеке

Результат

  1. void*
    Указатель на найденный символ, либо NULL в случае ошибки.
    Код ошибки можно узнать с помощью функции dlerror.

Пример

DLHANDLE	solib;
UINT32	*sovalue;
// Загружаем библиотеку из папки с эльфом
solib = dlopen( L"library.so", 0 );
if(solib == 0)
{	cprintf("library.so not found, error = %d\n", dlerror());	return;
}
// Ищем символ
sovalue = dlsym(solib, "gValue");
if(sovalue == NULL)
{	cprintf("gValue not found in library.so, error = %d\n", dlerror());	return;
}
cprintf("gValue = %d\n", *sovalue);

См. также

dlopen

dlclose

dlerror