ucrtbased.dll vs ucrtbase.dll

时间:2016-12-17 02:23:33

标签: c windows visual-c++

Windows 10的C运行时在ucrtbase.dll中提供。但他们也有ucrtbased,这是“调试版”。它究竟包含什么?如果我有.pdb(公共符号),为什么我需要调试版的dll?

1 个答案:

答案 0 :(得分:1)

只是为了得到我所知道的。

  1. 使用最大优化编译ucrtbase.dll,而ucrtbased.dll不是。
  2. ucrtbased.dll携带的信息比ucrtbase.dll更多/不同。他们正在帮助建立调试环境。 如果您尝试在其上运行“dumpbin”,则可以看到这些信息。 Fox示例,如果您比较dumpbin /exports ucrtbased.dlldumpbin /exports ucrtbase.dll的结果。如果你在输出上做差异: 你会发现导出的一些功能是不同的,比如:

    _wfullpath
    +_wfullpath_dbg
    _wgetcwd
    +_wgetcwd_dbg

    有些只能在ucrtbased.dll中看到,如下所示:

    _utime32
    _utime64
    +_VCrtDbgReportA
    +_VCrtDbgReportW

    有关详细信息,您可以通过不同方式尝试使用dumpbin来查看可以找到的内容。