c++ - 导入 msado15.dll 后未生成 msado15.tlh

标签 c++ visual-studio-2013

我正在尝试使用 /MP (Build with Multiple Processes)启用多进程编译的选项,但是,它与#import 冲突,所以我正在尝试 Replacement for #import in Visual C++ 中提出的解决方法:

对于在谷歌中遇到这个问题的其他人:

  1. 创建一个单独的静态库项目
  2. 设置足够的包含,以便您可以将#import 语句放入 lib 项目中
  3. 使您的主项目依赖于 lib 项目(以确保正确的构建顺序)
  4. 将 lib 项目的临时构建文件夹添加到包含路径 主要项目
  5. #include 在执行#import 时生成的 .tlh 文件
  6. 启用/MP 开关并失去咖啡休息时间...

我愚弄了这些步骤,但是没有生成“msado15.tlh”。

这是我的做法:

  1. 创建一个静态库项目AdoImport
  2. AdoImport工程中添加一个头文件AddImport.h,只包含一行:#import "C:/Program Files/Common Files/System/ado/msado15.dll"rename("EOF", "adoEOF") rename("BOF", "adoBOF")
  3. 编译

我希望在 AdoImport 项目的 Debug 文件夹中生成一个 msado15.tlh,但找不到。编译报告成功,只生成了AdoImport.lib

我应该如何生成 msado15.tlh 以便我的主要项目可以包含它?

最佳答案

感谢您提供解决方案。为此,我尝试在 VS2015 中创建相同的内容,但不知何故没有奏效。

所以我添加了导入语句

#import "C:/Program Files/Common Files/System/ado/msado15.dll"rename("EOF", "adoEOF") rename("BOF", "adoBOF")

在我的主项目的预编译头文件 StdAfx.h 中编译 StdAfx.cpp,不久之后,#import 错误“..cannot open msado15.tlh”得到解决。这是一个简单的解决方法,无需创建库。但是你的回答让我解决了这个问题。谢谢你。

谢谢, 卡姆莱斯瓦尔。

关于c++ - 导入 msado15.dll 后未生成 msado15.tlh,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42036189/

相关文章:

c++ - extern 数组出现 undefined reference 错误,但适用于 int

c++ - 存储稍后转发的变量参数

windows - Visual Studio 2013 : How to send app to second monitor upon finishing build?

c++ - 配置 Visual Studio 以使用 Boost.Python 和 Python 3

winforms - 将 Windows 窗体应用程序发布到 Windows Azure 存储容器以进行单击一次部署时出错

c# - 自动列出类的属性

c++ - 专门化函数重载的规则

c++ - 将 memcpy 与 Eigen 类型的 vector 一起使用是否安全?

c++ - V8编译器错误

c++ - 如何将 MySQL 数据库连接到 C++ 代码?