library.dynam(chname, package, lib.loc, verbose = getOption("verbose"), file.ext = .Platform$dynlib.ext, ...)
library.dynam.unload(chname, libpath, verbose = getOption("verbose"), file.ext = .Platform$dynlib.ext)
.dynLibs(new)
options
.dyn.load
to control
how the library and its dependencies are loaded."DLLInfo"
objects corresponding to the
DLLs loaded by packages. Can be missing.chname
is not specified, library.dynam
returns an
object of class "DLLInfoList"
corresponding to the DLLs
loaded by packages.If chname
is specified, an object of class
"DLLInfo"
that identifies the DLL and which can be used
in future calls is returned invisibly. Note that the class
"DLLInfo"
has a method for $
which can be used to
resolve native symbols within that DLL.library.dynam.unload
invisibly returns an object of class
"DLLInfo"
identifying the DLL successfully unloaded..dynLibs
returns an object of class "DLLInfoList"
corresponding corresponding to its current value.
dyn.unload
on a DLL loaded by
library.dynam
: use library.dynam.unload
to ensure
that .dynLibs
gets updated. Otherwise a subsequent call to
library.dynam
will be told the object is already loaded. Note that whether or not it is possible to unload a DLL and then
reload a revised version of the same file is OS-dependent: see the
Value section of the help for dyn.unload
.dyn.load
for what sort of objects these functions handle. library.dynam
is designed to be used inside a package rather
than at the command line, and should really only be used inside
.onLoad
. The system-specific extension for DLLs (e.g.,
.so or .sl on Unix-alike systems,
.dll on Windows) should not be added.
windows
If ...
does not include a named argument DLLpath
,
dyn.load
is called with DLLpath
set to the
package's libs directory. See the Windows section of
the help on dyn.load
for how to control where dependent
DLLs are found.
See dyn.load
for comments about diagnostic messages
which may be seen on Windows.
library.dynam.unload
is designed for use in
.onUnload
: it unloads the DLL and updates the value of
.dynLibs()
.dynLibs
is used for getting (with no argument) or setting the
DLLs which are currently loaded by packages (using library.dynam
).
getLoadedDLLs
for information on "DLLInfo"
and
"DLLInfoList"
objects. .onLoad
, library
,
dyn.load
, .packages
,
.libPaths
SHLIB
for how to create suitable DLLs.
## Which DLLs were dynamically loaded by packages?
library.dynam()
Run the code above in your browser using DataLab