为什么我需要ILK,PDB和EXP文件?

Ser*_*099 32 windows dll operating-system visual-studio-2010 pdb

我已经下载了一些dll文件,随之而来的还有pdb,exp和ilk文件.现在我需要知道我是否需要将它们放入我的系统文件中,或者不是,它们在一般情况下的目的是什么?

Jam*_*mes 46

PDB文件包含调试信息,如果您需要在任何时候单步执行DLL的代码,它们非常有用.

链接器使用 ILK文件.除非要重新编译DLL,否则不需要它们.

EXP文件包含有关从DLL导出的内容的信息

  • 很好解释,所以建议将PDB和EXP文件包含在我的sys目录中? (2认同)
  • 那么 EXP 文件的用途是什么?我们什么时候需要 EXP 文件?接受的答案实际上并没有提供答案。 (2认同)

Las*_*zlo 6

  • .ilk文件是链接器在开发周期中创建的中间文件。.ilk 文件用于增量链接。如果链接器在尝试执行增量链接时未找到 .ilk 文件,则它将执行完整链接并重现 .ilk 文件。增量链接旨在加快链接过程。您可以安全地删除 .ilk 文件。

  • .exp文件也适用于开发人员。.exp 文件是为导出某些符号的 .exe 和 .dll 文件创建的。它们的用途类似于 .lib 导入库,但有细微的差别。始终会创建 .exp 文件,即使在链接时创建相应的 .exe 或 .dll 失败也是如此。相比之下,仅当相应的 .exe 或 .dll 链接成功时才会创建 .lib 导入库。.exp 文件有助于链接相互依赖的组件。例如,.exe 可能会通过导出某些函数为其插件提供对其公共资源的访问。这些插件还为 .exe 提供了调用的导出。像这样的相互依赖无法成功链接。.exe 链接将失败,因为缺少 .dll 的导入 .lib。因此不会为 .exe 创建 .lib。的联动。dll 将失败,因为缺少 .exe 的导入库。但是,即使链接失败,也会创建导出文件,因此 .dll 可以链接到 .exp 文件而不是 .lib 文件以成功链接。

  • .exp 文件也可以安全删除吗? (2认同)