【发布时间】:2010-12-14 15:30:12
【问题描述】:
我在 Visual Studio 2008 中将我的应用程序构建为 Release 时遇到了一点问题。它构建得很好,没有任何错误或警告作为调试。该应用程序主要是 Win32 和一些 MFC 和 ATL 混合在一起。解决方案中的大多数项目都会生成 LIB 和 DLL。
这是我遇到的错误之一:
致命错误 C1189:#error:使用 /MD[d](CRT dll 版本)构建 MFC 应用程序需要 MFC 共享 dll 版本。请#define _AFXDLL 或不要使用/MD[d]
我的应用程序是一个多线程 DLL,所以/MD 需要保留。唯一的 Windows 包括这些:
#include "stdafx.h"
#include "afx.h"
#include "WMIQuery.h"
#include "SerialPort.h"
另一个错误是这样的:
致命错误 C1083:无法打开包含文件:'WMIQuery.h':没有这样的文件或目录
这个对我来说真的没有意义,因为环境没有问题找到这个用于调试的文件。
有谁知道如何解决这个问题?如果需要任何其他信息,请直接说出来,我会发布。谢谢。
【问题讨论】:
-
发布和调试使用不同的环境,因此能够在调试中找到标头对于在发布模式下找到它没有任何意义。
标签: c++ visual-studio-2008 build release winapi