Mercurial > pub > dyncall > dyncall
view doc/manual/manual_dynload_api.tex @ 2:ffaf59700cfb
added notes on move to hg
author | Daniel Adler |
---|---|
date | Mon, 23 Mar 2015 16:36:53 +0100 |
parents | 3e629dc19168 |
children | f8a6e60598cc |
line wrap: on
line source
%////////////////////////////////////////////////////////////////////////////// % % Copyright (c) 2007,2009 Daniel Adler <dadler@uni-goettingen.de>, % Tassilo Philipp <tphilipp@potion-studios.com> % % Permission to use, copy, modify, and distribute this software for any % purpose with or without fee is hereby granted, provided that the above % copyright notice and this permission notice appear in all copies. % % THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES % WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF % MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR % ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES % WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN % ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF % OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. % %////////////////////////////////////////////////////////////////////////////// \newpage \section{\product{Dynload} C library API} The \product{dynload} library encapsulates dynamic loading mechanisms and gives access to functions in foreign dynamic libraries and code modules. \subsection{Loading code} \begin{lstlisting}[language=c,label=dl-load] void* dlLoadLibrary(const char* libpath); void dlFreeLibrary(void* libhandle); \end{lstlisting} \lstinline{dlLoadLibrary} loads a dynamic library at \lstinline{libpath} and returns a handle to it for use in \lstinline{dlFreeLibrary} and \lstinline{dlFindSymbol} calls. \lstinline{dlFreeLibrary} frees the loaded library with handle \lstinline{pLib}. \subsection{Retrieving functions} \begin{lstlisting}[language=c] void* dlFindSymbol(void* libhandle, const char* symbol); \end{lstlisting} returns a pointer to a symbol with name \lstinline{pSymbolName} in the library with handle \lstinline{pLib}, or returns a null pointer if the symbol cannot be found.