windows – 链接:.a,.lib和.def文件
|
我使用GNU binutils在Windows上从程序集构建一个DLL。 我知道dll可以在可执行文件加载或运行时加载(使用LoadLibrary api调用)。 对于加载时加载,我似乎只需要dll文件:不需要.a,.lib或.def文件。我想知道这些文件格式代表什么,他们的目的是什么。 我所知道的一些具体问题: > .a是Unix上通常用于静态库的扩展。 .a文件使用GNU ld的–out-implib选项生成。据说是一个“进口图书馆”,足够公平。那么问题是“如果在链接时不需要它,那么进口图书馆有什么好处?” --out-implib中所述。
导入库(带有MSVC或.dll.a的.lib与GCC)是静态库:它们包含加载DLL的代码。 I had the same question the other day. DLL可能具有导出的函数和未导出的函数。导入库必须知道哪些功能被导出,哪些不是。告诉它的一个方法是DEF文件。
另请参阅MSDN: Exporting Functions from a DLL by Ordinal Rather Than by Name,一起应该回答你最后一个按索引出口的问题或序号。 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- xaml – 在开发Windows 8 Store应用程序时处理不同的方向
- .net – System.Diagnostics.EventLog – 连接到系统的设备
- 带有ANSI代码的文本编辑器/查看器,支持Windows
- npm和cnpm(windows)安装步骤
- 在Windows中创建一个带有C dll的r包并确保可移植到linux
- 如何从Windows内核调用usermode?
- windows – CFileDialog :: OnInitDialog()不调用
- QML 发布时 libeay32.dll错误
- win10家庭版升级专业版出现0x80070422错误
- windows-phone-7 – 多长时间调用SpriteBatch.Begin()/.End
