VS 2008 中的“多线程调试 DLL”运行时库选项到底在做什么?

2024-01-26

我在 VS 2008 中有一个创建 DLL 的解决方案。然后我在另一个应用程序中使用该 DLL。如果我进入 DLL 项目属性页并更改 DEBUG 构建的以下配置,则构建的 dll 将不再提供所需的功能。如果我把它改回来并重建 DLL,那么 DLL 确实提供了正确的功能:

属性页 => 配置属性 => C/C++ => 代码生成 => 运行时库

如果设置为“多线程调试 DLL (/MDd)”


所有 DLL/调试代码生成都必须与使用它们的所有内容相匹配。可能有另一个引用的库或对象或 dll 或其中的某些代码是使用错误的选项构建的;或覆盖全局项目选项的单个元素的特定选项。

解决这个问题的唯一方法是仔细检查每个文件的所有选项,检查包含和引用的库(.lib 和 .dll)以及目标文件。还要检查链接器选项。

它不起作用的原因可能是因为调试版本在内存周围添加了额外的保护块以允许检测错误。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

VS 2008 中的“多线程调试 DLL”运行时库选项到底在做什么? 的相关文章

  • 如何避免用户帐户控制或在Win7中始终以管理员模式运行Windows应用程序

    在 WinForms 应用程序中 当我的应用程序启动时 将出现 用户帐户控制 对话框 仅在 Windows 7 中 任何人都可以建议我如何以编程方式避免这种情况 也就是说我的应用程序应该始终以管理模式启动 或者是否有任何选项可以阻止此对话框
  • vb.net - 多维数组列表

    我已经设法制作了一些单维数组列表 但我无法找出多维数组列表 这就是我想做的 我有一个包含 5 列的数据库 mdb 我希望每一行都位于数组列表中 在 PHP 中我通常会做的是 array field1 array field2 field3
  • Windows API 中逻辑坐标和设备坐标之间的混淆

    我一直在研究一个使用两个函数的 Visual Studio C Windows 应用程序项目SetWindowExt and SetViewportExt 我对这两个函数的作用以及为什么它们是必要的感到困惑 搜索这些函数 我得出了逻辑坐标和
  • 使用 C++/CLI 包装非托管 C++ 类库 - 问题 2 - 集合

    Note 这篇文章代表了我的询问的问题 2 两个问题中都会重复介绍部分 达到数字之前的所有文本 因为它是回答问题可能需要的背景信息 问题简介 我有一个非托管 C 库 其中包含多个 更高级别 库所共有和共享的类和函数 我现在需要向 C Net
  • 霸权继承——真的很糟糕吗?

    我是那些必须在 0 警告的情况下编译代码的人之一 通常我尊重编译器 如果它向我发出警告 我会将其视为我应该稍微修改我的代码的标志 如果我必须告诉编译器忽略给定的警告 我会有点抽搐 但这件事我似乎无法回避 而且据我所知 我没有做过任何 坏事
  • UCS2 与 UTF。 UCS2编码无法显示哪些语言?

    UCS2 比 UTF 编码更容易在 Visual C 中使用 UCS2 编码不支持哪些语言 没有什么是你可能关心的 或者更重要的是 没有字体 UCS2 为您提供基本的多语言平面 您可以在 Unicode 网站上找到指定平面的概述 0 基本多
  • vba - 扫描文档中的宏并替换宏文本?

    我面临一个谜题 我工作的地方有大量的 Word 模板 它们都包含一个包含一些错误的自动新建事件句柄 这个错误存在于所有模板中 我想知道是否有一种方法可以扫描包含此宏的模板的目录并稍微更改宏代码 这可能吗 是的 你可以这么做 您可以使用以下方
  • vb.net if 简写

    有没有办法使用速记来做这样的事情 If Not txtBookTitle Text String Empty Then objBook DisplayName txtBookTitle Text End If objBook Display
  • “你好,TensorFlow!”使用 C API

    出于学习目的 如何使用 TensorFlow C API 编写此 Python 示例 import tensorflow as tf hello tf constant hello TensorFlow sess tf Session pr
  • 如何在 vb.Net 中设置默认表单?

    如何将第四个表单设置为在 Visual Studio 2008 中按 f5 时将运行的默认表单 因为表单 1 始终是第一个启动的 在解决方案资源管理器中右键单击您的项目 选择属性 选择应用程序选项卡 从 启动表单 下的下拉列表中选择您的表单
  • 调试错误“类型‘xx’是在未引用的程序集中定义的”

    完整错误如下 方式 System Windows Forms Control 是 在程序集中定义的不是 参考 您必须添加参考 组装 System Windows Forms 版本 2 0 0 0 文化 中立 PublicKeyToken b
  • Visual Studio 2010 (C++):暂时抑制 C4706 警告

    当您在 Visual Studio 2010 中编译以下 C 源文件并启用警告级别 W4 时 include
  • .net 应用程序中的内存泄漏

    我正在 VB net 2005 中开发一个桌面应用程序 该应用程序包含一个间隔为 1 分钟的计时器 每次计时器计时 就会执行一组函数 大部分与数据库相关 最初 应用程序运行良好 在进程 任务管理器 中 每次调用计时器时 CPU 使用率都会达
  • VBA C# DLL 未注册

    我制作了一个 C NET dll 我想从 VBA 运行它而不注册它 我找到了解决方案there https stackoverflow com a 13333819并且它可以完美工作 但前提是程序集是使用 Framework NET 3 5
  • 在VB.net中动态添加用户控件

    我在 Vb net Windows 应用程序 中制作了自定义 UserControl 如何将其动态添加到表单中 UserControl 本质上只是另一个类 它继承自 Control 因此您可以使用控件执行各种操作 但除此之外它只是一个类 因
  • 原子的 C++ 内存屏障

    在这方面我是个新手 谁能提供以下内存屏障之间差异的简化解释 窗户MemoryBarrier 围栏 mm mfence 内联汇编asm volatile memory 内在的 ReadWriteBarrier 如果没有简单的解释 一些好文章或
  • 在 Windows 上使用 C/C++ 开发时省略 msvcr100.dll?

    是否可以在 Windows 上使用 C C 进行开发而不链接到 msvcr100 dll 我知道这是 Windows 的标准 c 库 但我想知道如果我没有安装 Visual Studio 或 Redistributable 软件包 我的计算
  • 依赖遍历器挂起

    当 my xll 插件加载到我的客户端 PC 上时 我遇到了问题 它在启动时使 Excel 崩溃 可能是因为缺少依赖的 dll 我知道可以在配置文件模式下使用 dependency walker 来找出 exe 运行时加载了哪些 dll 当
  • 前向声明类型和“已声明为类类型的非类类型”

    我对以下代码有问题 template
  • 语音识别编程问题入门

    所以 你们可能都看过 钢铁侠 其中托尼与一个名为贾维斯的人工智能系统进行交互 演示剪辑here http www youtube com watch v Go8zsh1Ev6Y 抱歉 这是广告 我非常熟悉 C C 和 Visual Basi

随机推荐