文件名称:flexdll:Windows的类似dlopen的API
文件大小:74KB
文件格式:ZIP
更新时间:2024-05-27 17:50:02
OCaml
FlexDLL:Windows的类似于dlopen的API的实现 介绍 在Windows下,DLL()通常用于改善代码模块化和共享。 加载程序时,可以自动加载DLL(如果需要DLL)。 该程序还可以使用Win32 API中的函数,明确要求Windows在运行时随时加载DLL。 这自然建议使用DLL作为插件机制。 例如,Web服务器可以在运行时加载存储在DLL中的扩展模块。 但是Windows并没有真正使以这种方式实现插件变得容易。 原因是,当您尝试从一组目标文件中创建一个DLL时,链接程序需要解析所有符号,从而导致FlexDLL解决了非常多的问题: Windows DLL不能引用在主应用程序或先前加载的DLL中定义的符号。 存在一些通常的解决方案,但是它们不是很灵活。 值得注意的例外是库(其主页还描述了通常的解决方案),该库采用了相当严格的方法。 实际上,edll实现了一个新的动态链
【文件预览】:
flexdll-master
----default.manifest(389B)
----create_dll.ml(14KB)
----.gitignore(140B)
----README.md(26KB)
----flexdll.h(824B)
----appveyor.yml(2KB)
----coff.ml(28KB)
----appveyor_build.sh(6KB)
----test()
--------plug2.c(242B)
--------plug1.c(159B)
--------api.h(88B)
--------dump.c(1KB)
--------Makefile(724B)
----LICENSE(1012B)
----reloc.ml(44KB)
----.gitattributes(58B)
----msvs-detect(39KB)
----Compat401.ml(574B)
----Compat402.ml(791B)
----Compat407.ml(553B)
----default_amd64.manifest(391B)
----flexdll.c(13KB)
----clear_appveyor_cache.sh(232B)
----cmdline.ml(10KB)
----Compat403.ml(1KB)
----.ocp-indent(32B)
----Compat406.ml(1KB)
----version.rc(601B)
----CHANGES(9KB)
----flexdll_initer.c(1KB)
----installer.nsi(337B)
----Compat405.ml(1KB)
----checkenv(2KB)
----Makefile(9KB)